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

Comparing:
ircd-hybrid-8/src/ircd_parser.c (file contents), Revision 1285 by michael, Sun Feb 5 15:12:59 2012 UTC vs.
ircd-hybrid-8/src/conf_parser.c (file contents), Revision 1432 by michael, Sat Jun 9 19:40:08 2012 UTC

# Line 1 | Line 1
1 < /* A Bison parser, made by GNU Bison 2.5.  */
1 > /* A Bison parser, made by GNU Bison 2.5.1.  */
2  
3   /* Bison implementation for Yacc-like parsers in C
4    
5 <      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
5 >      Copyright (C) 1984, 1989-1990, 2000-2012 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 44 | Line 44
44   #define YYBISON 1
45  
46   /* Bison version.  */
47 < #define YYBISON_VERSION "2.5"
47 > #define YYBISON_VERSION "2.5.1"
48  
49   /* Skeleton name.  */
50   #define YYSKELETON_NAME "yacc.c"
# Line 66 | Line 66
66   /* Copy the first part of user declarations.  */
67  
68   /* Line 268 of yacc.c  */
69 < #line 25 "ircd_parser.y"
69 > #line 25 "conf_parser.y"
70  
71  
72   #define YY_NO_UNPUT
# Line 77 | Line 77
77   #include "stdinc.h"
78   #include "ircd.h"
79   #include "list.h"
80 < #include "s_conf.h"
80 > #include "conf.h"
81   #include "event.h"
82 < #include "s_log.h"
82 > #include "log.h"
83   #include "client.h"     /* for UMODE_ALL only */
84   #include "irc_string.h"
85   #include "sprintf_irc.h"
# Line 97 | Line 97
97   #include <openssl/rsa.h>
98   #include <openssl/bio.h>
99   #include <openssl/pem.h>
100 + #include <openssl/dh.h>
101   #endif
102  
103 + int yylex(void);
104 +
105   static char *class_name = NULL;
106   static struct ConfItem *yy_conf = NULL;
107   static struct AccessItem *yy_aconf = NULL;
# Line 107 | Line 110 | static struct ClassItem *yy_class = NULL
110   static char *yy_class_name = NULL;
111  
112   static dlink_list col_conf_list  = { NULL, NULL, 0 };
110 static dlink_list hub_conf_list  = { NULL, NULL, 0 };
111 static dlink_list leaf_conf_list = { NULL, NULL, 0 };
113   static unsigned int listener_flags = 0;
114   static unsigned int regex_ban = 0;
115   static char userbuf[IRCD_BUFSIZE];
# Line 149 | Line 150 | free_collect_item(struct CollectItem *it
150    MyFree(item);
151   }
152  
152 static void
153 unhook_hub_leaf_confs(void)
154 {
155  dlink_node *ptr;
156  dlink_node *next_ptr;
157  struct CollectItem *yy_hconf;
158  struct CollectItem *yy_lconf;
159
160  DLINK_FOREACH_SAFE(ptr, next_ptr, hub_conf_list.head)
161  {
162    yy_hconf = ptr->data;
163    dlinkDelete(&yy_hconf->node, &hub_conf_list);
164    free_collect_item(yy_hconf);
165  }
166
167  DLINK_FOREACH_SAFE(ptr, next_ptr, leaf_conf_list.head)
168  {
169    yy_lconf = ptr->data;
170    dlinkDelete(&yy_lconf->node, &leaf_conf_list);
171    free_collect_item(yy_lconf);
172  }
173 }
174
153  
154  
155   /* Line 268 of yacc.c  */
156 < #line 179 "ircd_parser.c"
156 > #line 157 "conf_parser.c"
157 >
158 > # ifndef YY_NULL
159 > #  if defined __cplusplus && 201103L <= __cplusplus
160 > #   define YY_NULL nullptr
161 > #  else
162 > #   define YY_NULL 0
163 > #  endif
164 > # endif
165  
166   /* Enabling traces.  */
167   #ifndef YYDEBUG
# Line 212 | Line 198 | unhook_hub_leaf_confs(void)
198       AUTOCONN = 265,
199       T_BLOCK = 266,
200       BURST_AWAY = 267,
201 <     BURST_TOPICWHO = 268,
202 <     BYTES = 269,
203 <     KBYTES = 270,
204 <     MBYTES = 271,
205 <     GBYTES = 272,
206 <     TBYTES = 273,
207 <     CALLER_ID_WAIT = 274,
208 <     CAN_FLOOD = 275,
209 <     CHANNEL = 276,
210 <     CIDR_BITLEN_IPV4 = 277,
211 <     CIDR_BITLEN_IPV6 = 278,
212 <     CIPHER_PREFERENCE = 279,
213 <     CLASS = 280,
214 <     COMPRESSED = 281,
215 <     COMPRESSION_LEVEL = 282,
216 <     CONNECT = 283,
217 <     CONNECTFREQ = 284,
218 <     CRYPTLINK = 285,
219 <     DEFAULT_CIPHER_PREFERENCE = 286,
220 <     DEFAULT_FLOODCOUNT = 287,
221 <     DEFAULT_SPLIT_SERVER_COUNT = 288,
222 <     DEFAULT_SPLIT_USER_COUNT = 289,
223 <     DENY = 290,
224 <     DESCRIPTION = 291,
225 <     DIE = 292,
226 <     DISABLE_AUTH = 293,
227 <     DISABLE_FAKE_CHANNELS = 294,
228 <     DISABLE_HIDDEN = 295,
229 <     DISABLE_LOCAL_CHANNELS = 296,
230 <     DISABLE_REMOTE_COMMANDS = 297,
231 <     DOTS_IN_IDENT = 298,
232 <     DURATION = 299,
233 <     EGDPOOL_PATH = 300,
234 <     EMAIL = 301,
235 <     ENABLE = 302,
236 <     ENCRYPTED = 303,
237 <     EXCEED_LIMIT = 304,
238 <     EXEMPT = 305,
239 <     FAILED_OPER_NOTICE = 306,
240 <     IRCD_FLAGS = 307,
241 <     FLATTEN_LINKS = 308,
242 <     GECOS = 309,
243 <     GENERAL = 310,
244 <     GLINE = 311,
245 <     GLINES = 312,
246 <     GLINE_EXEMPT = 313,
247 <     GLINE_TIME = 314,
248 <     GLINE_MIN_CIDR = 315,
249 <     GLINE_MIN_CIDR6 = 316,
250 <     GLOBAL_KILL = 317,
251 <     IRCD_AUTH = 318,
252 <     NEED_IDENT = 319,
253 <     HAVENT_READ_CONF = 320,
254 <     HIDDEN = 321,
255 <     HIDDEN_ADMIN = 322,
256 <     HIDDEN_NAME = 323,
257 <     HIDDEN_OPER = 324,
258 <     HIDE_SERVER_IPS = 325,
259 <     HIDE_SERVERS = 326,
260 <     HIDE_SPOOF_IPS = 327,
261 <     HOST = 328,
262 <     HUB = 329,
263 <     HUB_MASK = 330,
264 <     IGNORE_BOGUS_TS = 331,
265 <     INVISIBLE_ON_CONNECT = 332,
266 <     IP = 333,
267 <     KILL = 334,
268 <     KILL_CHASE_TIME_LIMIT = 335,
269 <     KLINE = 336,
270 <     KLINE_EXEMPT = 337,
271 <     KLINE_REASON = 338,
272 <     KLINE_WITH_REASON = 339,
273 <     KNOCK_DELAY = 340,
274 <     KNOCK_DELAY_CHANNEL = 341,
275 <     LEAF_MASK = 342,
276 <     LINKS_DELAY = 343,
277 <     LISTEN = 344,
278 <     T_LOG = 345,
279 <     MAX_ACCEPT = 346,
280 <     MAX_BANS = 347,
281 <     MAX_CHANS_PER_USER = 348,
282 <     MAX_GLOBAL = 349,
283 <     MAX_IDENT = 350,
284 <     MAX_LOCAL = 351,
285 <     MAX_NICK_CHANGES = 352,
286 <     MAX_NICK_TIME = 353,
287 <     MAX_NUMBER = 354,
288 <     MAX_TARGETS = 355,
289 <     MAX_WATCH = 356,
290 <     MESSAGE_LOCALE = 357,
291 <     MIN_NONWILDCARD = 358,
292 <     MIN_NONWILDCARD_SIMPLE = 359,
293 <     MODULE = 360,
294 <     MODULES = 361,
295 <     NAME = 362,
296 <     NEED_PASSWORD = 363,
297 <     NETWORK_DESC = 364,
298 <     NETWORK_NAME = 365,
299 <     NICK = 366,
300 <     NICK_CHANGES = 367,
301 <     NO_CREATE_ON_SPLIT = 368,
302 <     NO_JOIN_ON_SPLIT = 369,
303 <     NO_OPER_FLOOD = 370,
304 <     NO_TILDE = 371,
305 <     NUMBER = 372,
306 <     NUMBER_PER_IDENT = 373,
307 <     NUMBER_PER_CIDR = 374,
308 <     NUMBER_PER_IP = 375,
309 <     NUMBER_PER_IP_GLOBAL = 376,
310 <     OPERATOR = 377,
311 <     OPERS_BYPASS_CALLERID = 378,
312 <     OPER_ONLY_UMODES = 379,
313 <     OPER_PASS_RESV = 380,
314 <     OPER_SPY_T = 381,
315 <     OPER_UMODES = 382,
316 <     JOIN_FLOOD_COUNT = 383,
317 <     JOIN_FLOOD_TIME = 384,
318 <     PACE_WAIT = 385,
319 <     PACE_WAIT_SIMPLE = 386,
320 <     PASSWORD = 387,
321 <     PATH = 388,
322 <     PING_COOKIE = 389,
323 <     PING_TIME = 390,
324 <     PING_WARNING = 391,
325 <     PORT = 392,
326 <     QSTRING = 393,
327 <     QUIET_ON_BAN = 394,
328 <     REASON = 395,
329 <     REDIRPORT = 396,
330 <     REDIRSERV = 397,
331 <     REGEX_T = 398,
332 <     REHASH = 399,
333 <     TREJECT_HOLD_TIME = 400,
334 <     REMOTE = 401,
335 <     REMOTEBAN = 402,
336 <     RESTRICT_CHANNELS = 403,
337 <     RESTRICTED = 404,
338 <     RSA_PRIVATE_KEY_FILE = 405,
339 <     RSA_PUBLIC_KEY_FILE = 406,
340 <     SSL_CERTIFICATE_FILE = 407,
341 <     T_SSL_CONNECTION_METHOD = 408,
342 <     T_SSLV3 = 409,
343 <     T_TLSV1 = 410,
344 <     RESV = 411,
345 <     RESV_EXEMPT = 412,
346 <     SECONDS = 413,
347 <     MINUTES = 414,
348 <     HOURS = 415,
349 <     DAYS = 416,
350 <     WEEKS = 417,
351 <     SENDQ = 418,
352 <     SEND_PASSWORD = 419,
353 <     SERVERHIDE = 420,
354 <     SERVERINFO = 421,
355 <     SERVLINK_PATH = 422,
356 <     IRCD_SID = 423,
357 <     TKLINE_EXPIRE_NOTICES = 424,
358 <     T_SHARED = 425,
359 <     T_CLUSTER = 426,
360 <     TYPE = 427,
361 <     SHORT_MOTD = 428,
362 <     SILENT = 429,
363 <     SPOOF = 430,
364 <     SPOOF_NOTICE = 431,
365 <     STATS_E_DISABLED = 432,
366 <     STATS_I_OPER_ONLY = 433,
367 <     STATS_K_OPER_ONLY = 434,
368 <     STATS_O_OPER_ONLY = 435,
369 <     STATS_P_OPER_ONLY = 436,
370 <     TBOOL = 437,
371 <     TMASKED = 438,
372 <     T_REJECT = 439,
373 <     TS_MAX_DELTA = 440,
374 <     TS_WARN_DELTA = 441,
375 <     TWODOTS = 442,
376 <     T_ALL = 443,
377 <     T_BOTS = 444,
378 <     T_SOFTCALLERID = 445,
379 <     T_CALLERID = 446,
380 <     T_CCONN = 447,
381 <     T_CCONN_FULL = 448,
382 <     T_CLIENT_FLOOD = 449,
383 <     T_DEAF = 450,
384 <     T_DEBUG = 451,
385 <     T_DLINE = 452,
386 <     T_DRONE = 453,
387 <     T_EXTERNAL = 454,
388 <     T_FULL = 455,
389 <     T_INVISIBLE = 456,
390 <     T_IPV4 = 457,
391 <     T_IPV6 = 458,
392 <     T_LOCOPS = 459,
393 <     T_MAX_CLIENTS = 460,
394 <     T_NCHANGE = 461,
395 <     T_OPERWALL = 462,
396 <     T_REJ = 463,
397 <     T_SERVER = 464,
398 <     T_SERVNOTICE = 465,
399 <     T_SKILL = 466,
400 <     T_SPY = 467,
401 <     T_SSL = 468,
402 <     T_UMODES = 469,
403 <     T_UNAUTH = 470,
404 <     T_UNLIMITED = 471,
405 <     T_UNRESV = 472,
406 <     T_UNXLINE = 473,
407 <     T_GLOBOPS = 474,
408 <     T_WALLOP = 475,
409 <     T_RESTART = 476,
410 <     T_SERVICE = 477,
411 <     T_SERVICES_NAME = 478,
412 <     T_TIMESTAMP = 479,
413 <     THROTTLE_TIME = 480,
414 <     TOPICBURST = 481,
415 <     TRUE_NO_OPER_FLOOD = 482,
416 <     TKLINE = 483,
417 <     TXLINE = 484,
418 <     TRESV = 485,
419 <     UNKLINE = 486,
420 <     USER = 487,
421 <     USE_EGD = 488,
422 <     USE_EXCEPT = 489,
423 <     USE_INVEX = 490,
424 <     USE_KNOCK = 491,
425 <     USE_LOGGING = 492,
426 <     USE_WHOIS_ACTUALLY = 493,
427 <     VHOST = 494,
428 <     VHOST6 = 495,
443 <     XLINE = 496,
444 <     WARN = 497,
445 <     WARN_NO_NLINE = 498,
446 <     T_SIZE = 499,
447 <     T_FILE = 500
201 >     BYTES = 268,
202 >     KBYTES = 269,
203 >     MBYTES = 270,
204 >     GBYTES = 271,
205 >     TBYTES = 272,
206 >     CALLER_ID_WAIT = 273,
207 >     CAN_FLOOD = 274,
208 >     CHANNEL = 275,
209 >     CIDR_BITLEN_IPV4 = 276,
210 >     CIDR_BITLEN_IPV6 = 277,
211 >     CLASS = 278,
212 >     CONNECT = 279,
213 >     CONNECTFREQ = 280,
214 >     DEFAULT_FLOODCOUNT = 281,
215 >     DEFAULT_SPLIT_SERVER_COUNT = 282,
216 >     DEFAULT_SPLIT_USER_COUNT = 283,
217 >     DENY = 284,
218 >     DESCRIPTION = 285,
219 >     DIE = 286,
220 >     DISABLE_AUTH = 287,
221 >     DISABLE_FAKE_CHANNELS = 288,
222 >     DISABLE_HIDDEN = 289,
223 >     DISABLE_LOCAL_CHANNELS = 290,
224 >     DISABLE_REMOTE_COMMANDS = 291,
225 >     DOTS_IN_IDENT = 292,
226 >     DURATION = 293,
227 >     EGDPOOL_PATH = 294,
228 >     EMAIL = 295,
229 >     ENABLE = 296,
230 >     ENCRYPTED = 297,
231 >     EXCEED_LIMIT = 298,
232 >     EXEMPT = 299,
233 >     FAILED_OPER_NOTICE = 300,
234 >     IRCD_FLAGS = 301,
235 >     FLATTEN_LINKS = 302,
236 >     GECOS = 303,
237 >     GENERAL = 304,
238 >     GLINE = 305,
239 >     GLINES = 306,
240 >     GLINE_EXEMPT = 307,
241 >     GLINE_TIME = 308,
242 >     GLINE_MIN_CIDR = 309,
243 >     GLINE_MIN_CIDR6 = 310,
244 >     GLOBAL_KILL = 311,
245 >     IRCD_AUTH = 312,
246 >     NEED_IDENT = 313,
247 >     HAVENT_READ_CONF = 314,
248 >     HIDDEN = 315,
249 >     HIDDEN_NAME = 316,
250 >     HIDE_SERVER_IPS = 317,
251 >     HIDE_SERVERS = 318,
252 >     HIDE_SPOOF_IPS = 319,
253 >     HOST = 320,
254 >     HUB = 321,
255 >     HUB_MASK = 322,
256 >     IGNORE_BOGUS_TS = 323,
257 >     INVISIBLE_ON_CONNECT = 324,
258 >     IP = 325,
259 >     KILL = 326,
260 >     KILL_CHASE_TIME_LIMIT = 327,
261 >     KLINE = 328,
262 >     KLINE_EXEMPT = 329,
263 >     KLINE_REASON = 330,
264 >     KLINE_WITH_REASON = 331,
265 >     KNOCK_DELAY = 332,
266 >     KNOCK_DELAY_CHANNEL = 333,
267 >     LEAF_MASK = 334,
268 >     LINKS_DELAY = 335,
269 >     LISTEN = 336,
270 >     T_LOG = 337,
271 >     MAX_ACCEPT = 338,
272 >     MAX_BANS = 339,
273 >     MAX_CHANS_PER_OPER = 340,
274 >     MAX_CHANS_PER_USER = 341,
275 >     MAX_GLOBAL = 342,
276 >     MAX_IDENT = 343,
277 >     MAX_LOCAL = 344,
278 >     MAX_NICK_CHANGES = 345,
279 >     MAX_NICK_TIME = 346,
280 >     MAX_NUMBER = 347,
281 >     MAX_TARGETS = 348,
282 >     MAX_WATCH = 349,
283 >     MESSAGE_LOCALE = 350,
284 >     MIN_NONWILDCARD = 351,
285 >     MIN_NONWILDCARD_SIMPLE = 352,
286 >     MODULE = 353,
287 >     MODULES = 354,
288 >     NAME = 355,
289 >     NEED_PASSWORD = 356,
290 >     NETWORK_DESC = 357,
291 >     NETWORK_NAME = 358,
292 >     NICK = 359,
293 >     NICK_CHANGES = 360,
294 >     NO_CREATE_ON_SPLIT = 361,
295 >     NO_JOIN_ON_SPLIT = 362,
296 >     NO_OPER_FLOOD = 363,
297 >     NO_TILDE = 364,
298 >     NUMBER = 365,
299 >     NUMBER_PER_IDENT = 366,
300 >     NUMBER_PER_CIDR = 367,
301 >     NUMBER_PER_IP = 368,
302 >     NUMBER_PER_IP_GLOBAL = 369,
303 >     OPERATOR = 370,
304 >     OPERS_BYPASS_CALLERID = 371,
305 >     OPER_ONLY_UMODES = 372,
306 >     OPER_PASS_RESV = 373,
307 >     OPER_SPY_T = 374,
308 >     OPER_UMODES = 375,
309 >     JOIN_FLOOD_COUNT = 376,
310 >     JOIN_FLOOD_TIME = 377,
311 >     PACE_WAIT = 378,
312 >     PACE_WAIT_SIMPLE = 379,
313 >     PASSWORD = 380,
314 >     PATH = 381,
315 >     PING_COOKIE = 382,
316 >     PING_TIME = 383,
317 >     PING_WARNING = 384,
318 >     PORT = 385,
319 >     QSTRING = 386,
320 >     QUIET_ON_BAN = 387,
321 >     REASON = 388,
322 >     REDIRPORT = 389,
323 >     REDIRSERV = 390,
324 >     REGEX_T = 391,
325 >     REHASH = 392,
326 >     TREJECT_HOLD_TIME = 393,
327 >     REMOTE = 394,
328 >     REMOTEBAN = 395,
329 >     RESTRICT_CHANNELS = 396,
330 >     RESTRICTED = 397,
331 >     RSA_PRIVATE_KEY_FILE = 398,
332 >     RSA_PUBLIC_KEY_FILE = 399,
333 >     SSL_CERTIFICATE_FILE = 400,
334 >     SSL_DH_PARAM_FILE = 401,
335 >     T_SSL_CLIENT_METHOD = 402,
336 >     T_SSL_SERVER_METHOD = 403,
337 >     T_SSLV3 = 404,
338 >     T_TLSV1 = 405,
339 >     RESV = 406,
340 >     RESV_EXEMPT = 407,
341 >     SECONDS = 408,
342 >     MINUTES = 409,
343 >     HOURS = 410,
344 >     DAYS = 411,
345 >     WEEKS = 412,
346 >     SENDQ = 413,
347 >     SEND_PASSWORD = 414,
348 >     SERVERHIDE = 415,
349 >     SERVERINFO = 416,
350 >     IRCD_SID = 417,
351 >     TKLINE_EXPIRE_NOTICES = 418,
352 >     T_SHARED = 419,
353 >     T_CLUSTER = 420,
354 >     TYPE = 421,
355 >     SHORT_MOTD = 422,
356 >     SILENT = 423,
357 >     SPOOF = 424,
358 >     SPOOF_NOTICE = 425,
359 >     STATS_E_DISABLED = 426,
360 >     STATS_I_OPER_ONLY = 427,
361 >     STATS_K_OPER_ONLY = 428,
362 >     STATS_O_OPER_ONLY = 429,
363 >     STATS_P_OPER_ONLY = 430,
364 >     TBOOL = 431,
365 >     TMASKED = 432,
366 >     T_REJECT = 433,
367 >     TS_MAX_DELTA = 434,
368 >     TS_WARN_DELTA = 435,
369 >     TWODOTS = 436,
370 >     T_ALL = 437,
371 >     T_BOTS = 438,
372 >     T_SOFTCALLERID = 439,
373 >     T_CALLERID = 440,
374 >     T_CCONN = 441,
375 >     T_CCONN_FULL = 442,
376 >     T_SSL_CIPHER_LIST = 443,
377 >     T_CLIENT_FLOOD = 444,
378 >     T_DEAF = 445,
379 >     T_DEBUG = 446,
380 >     T_DLINE = 447,
381 >     T_DRONE = 448,
382 >     T_EXTERNAL = 449,
383 >     T_FULL = 450,
384 >     T_INVISIBLE = 451,
385 >     T_IPV4 = 452,
386 >     T_IPV6 = 453,
387 >     T_LOCOPS = 454,
388 >     T_MAX_CLIENTS = 455,
389 >     T_NCHANGE = 456,
390 >     T_OPERWALL = 457,
391 >     T_REJ = 458,
392 >     T_SERVER = 459,
393 >     T_SERVNOTICE = 460,
394 >     T_SKILL = 461,
395 >     T_SPY = 462,
396 >     T_SSL = 463,
397 >     T_UMODES = 464,
398 >     T_UNAUTH = 465,
399 >     T_UNDLINE = 466,
400 >     T_UNLIMITED = 467,
401 >     T_UNRESV = 468,
402 >     T_UNXLINE = 469,
403 >     T_GLOBOPS = 470,
404 >     T_WALLOP = 471,
405 >     T_RESTART = 472,
406 >     T_SERVICE = 473,
407 >     T_SERVICES_NAME = 474,
408 >     THROTTLE_TIME = 475,
409 >     TOPICBURST = 476,
410 >     TRUE_NO_OPER_FLOOD = 477,
411 >     TKLINE = 478,
412 >     TXLINE = 479,
413 >     TRESV = 480,
414 >     UNKLINE = 481,
415 >     USER = 482,
416 >     USE_EGD = 483,
417 >     USE_EXCEPT = 484,
418 >     USE_INVEX = 485,
419 >     USE_KNOCK = 486,
420 >     USE_LOGGING = 487,
421 >     USE_WHOIS_ACTUALLY = 488,
422 >     VHOST = 489,
423 >     VHOST6 = 490,
424 >     XLINE = 491,
425 >     WARN = 492,
426 >     WARN_NO_NLINE = 493,
427 >     T_SIZE = 494,
428 >     T_FILE = 495
429     };
430   #endif
431   /* Tokens.  */
# Line 458 | Line 439 | unhook_hub_leaf_confs(void)
439   #define AUTOCONN 265
440   #define T_BLOCK 266
441   #define BURST_AWAY 267
442 < #define BURST_TOPICWHO 268
443 < #define BYTES 269
444 < #define KBYTES 270
445 < #define MBYTES 271
446 < #define GBYTES 272
447 < #define TBYTES 273
448 < #define CALLER_ID_WAIT 274
449 < #define CAN_FLOOD 275
450 < #define CHANNEL 276
451 < #define CIDR_BITLEN_IPV4 277
452 < #define CIDR_BITLEN_IPV6 278
453 < #define CIPHER_PREFERENCE 279
454 < #define CLASS 280
455 < #define COMPRESSED 281
456 < #define COMPRESSION_LEVEL 282
457 < #define CONNECT 283
458 < #define CONNECTFREQ 284
459 < #define CRYPTLINK 285
460 < #define DEFAULT_CIPHER_PREFERENCE 286
461 < #define DEFAULT_FLOODCOUNT 287
462 < #define DEFAULT_SPLIT_SERVER_COUNT 288
463 < #define DEFAULT_SPLIT_USER_COUNT 289
464 < #define DENY 290
465 < #define DESCRIPTION 291
466 < #define DIE 292
467 < #define DISABLE_AUTH 293
468 < #define DISABLE_FAKE_CHANNELS 294
469 < #define DISABLE_HIDDEN 295
470 < #define DISABLE_LOCAL_CHANNELS 296
471 < #define DISABLE_REMOTE_COMMANDS 297
472 < #define DOTS_IN_IDENT 298
473 < #define DURATION 299
474 < #define EGDPOOL_PATH 300
475 < #define EMAIL 301
476 < #define ENABLE 302
477 < #define ENCRYPTED 303
478 < #define EXCEED_LIMIT 304
479 < #define EXEMPT 305
480 < #define FAILED_OPER_NOTICE 306
481 < #define IRCD_FLAGS 307
482 < #define FLATTEN_LINKS 308
483 < #define GECOS 309
484 < #define GENERAL 310
485 < #define GLINE 311
486 < #define GLINES 312
487 < #define GLINE_EXEMPT 313
488 < #define GLINE_TIME 314
489 < #define GLINE_MIN_CIDR 315
490 < #define GLINE_MIN_CIDR6 316
491 < #define GLOBAL_KILL 317
492 < #define IRCD_AUTH 318
493 < #define NEED_IDENT 319
494 < #define HAVENT_READ_CONF 320
495 < #define HIDDEN 321
496 < #define HIDDEN_ADMIN 322
497 < #define HIDDEN_NAME 323
498 < #define HIDDEN_OPER 324
499 < #define HIDE_SERVER_IPS 325
500 < #define HIDE_SERVERS 326
501 < #define HIDE_SPOOF_IPS 327
502 < #define HOST 328
503 < #define HUB 329
504 < #define HUB_MASK 330
505 < #define IGNORE_BOGUS_TS 331
506 < #define INVISIBLE_ON_CONNECT 332
507 < #define IP 333
508 < #define KILL 334
509 < #define KILL_CHASE_TIME_LIMIT 335
510 < #define KLINE 336
511 < #define KLINE_EXEMPT 337
512 < #define KLINE_REASON 338
513 < #define KLINE_WITH_REASON 339
514 < #define KNOCK_DELAY 340
515 < #define KNOCK_DELAY_CHANNEL 341
516 < #define LEAF_MASK 342
517 < #define LINKS_DELAY 343
518 < #define LISTEN 344
519 < #define T_LOG 345
520 < #define MAX_ACCEPT 346
521 < #define MAX_BANS 347
522 < #define MAX_CHANS_PER_USER 348
523 < #define MAX_GLOBAL 349
524 < #define MAX_IDENT 350
525 < #define MAX_LOCAL 351
526 < #define MAX_NICK_CHANGES 352
527 < #define MAX_NICK_TIME 353
528 < #define MAX_NUMBER 354
529 < #define MAX_TARGETS 355
530 < #define MAX_WATCH 356
531 < #define MESSAGE_LOCALE 357
532 < #define MIN_NONWILDCARD 358
533 < #define MIN_NONWILDCARD_SIMPLE 359
534 < #define MODULE 360
535 < #define MODULES 361
536 < #define NAME 362
537 < #define NEED_PASSWORD 363
538 < #define NETWORK_DESC 364
539 < #define NETWORK_NAME 365
540 < #define NICK 366
541 < #define NICK_CHANGES 367
542 < #define NO_CREATE_ON_SPLIT 368
543 < #define NO_JOIN_ON_SPLIT 369
544 < #define NO_OPER_FLOOD 370
545 < #define NO_TILDE 371
546 < #define NUMBER 372
547 < #define NUMBER_PER_IDENT 373
548 < #define NUMBER_PER_CIDR 374
549 < #define NUMBER_PER_IP 375
550 < #define NUMBER_PER_IP_GLOBAL 376
551 < #define OPERATOR 377
552 < #define OPERS_BYPASS_CALLERID 378
553 < #define OPER_ONLY_UMODES 379
554 < #define OPER_PASS_RESV 380
555 < #define OPER_SPY_T 381
556 < #define OPER_UMODES 382
557 < #define JOIN_FLOOD_COUNT 383
558 < #define JOIN_FLOOD_TIME 384
559 < #define PACE_WAIT 385
560 < #define PACE_WAIT_SIMPLE 386
561 < #define PASSWORD 387
562 < #define PATH 388
563 < #define PING_COOKIE 389
564 < #define PING_TIME 390
565 < #define PING_WARNING 391
566 < #define PORT 392
567 < #define QSTRING 393
568 < #define QUIET_ON_BAN 394
569 < #define REASON 395
570 < #define REDIRPORT 396
571 < #define REDIRSERV 397
572 < #define REGEX_T 398
573 < #define REHASH 399
574 < #define TREJECT_HOLD_TIME 400
575 < #define REMOTE 401
576 < #define REMOTEBAN 402
577 < #define RESTRICT_CHANNELS 403
578 < #define RESTRICTED 404
579 < #define RSA_PRIVATE_KEY_FILE 405
580 < #define RSA_PUBLIC_KEY_FILE 406
581 < #define SSL_CERTIFICATE_FILE 407
582 < #define T_SSL_CONNECTION_METHOD 408
583 < #define T_SSLV3 409
584 < #define T_TLSV1 410
585 < #define RESV 411
586 < #define RESV_EXEMPT 412
587 < #define SECONDS 413
588 < #define MINUTES 414
589 < #define HOURS 415
590 < #define DAYS 416
591 < #define WEEKS 417
592 < #define SENDQ 418
593 < #define SEND_PASSWORD 419
594 < #define SERVERHIDE 420
595 < #define SERVERINFO 421
596 < #define SERVLINK_PATH 422
597 < #define IRCD_SID 423
598 < #define TKLINE_EXPIRE_NOTICES 424
599 < #define T_SHARED 425
600 < #define T_CLUSTER 426
601 < #define TYPE 427
602 < #define SHORT_MOTD 428
603 < #define SILENT 429
604 < #define SPOOF 430
605 < #define SPOOF_NOTICE 431
606 < #define STATS_E_DISABLED 432
607 < #define STATS_I_OPER_ONLY 433
608 < #define STATS_K_OPER_ONLY 434
609 < #define STATS_O_OPER_ONLY 435
610 < #define STATS_P_OPER_ONLY 436
611 < #define TBOOL 437
612 < #define TMASKED 438
613 < #define T_REJECT 439
614 < #define TS_MAX_DELTA 440
615 < #define TS_WARN_DELTA 441
616 < #define TWODOTS 442
617 < #define T_ALL 443
618 < #define T_BOTS 444
619 < #define T_SOFTCALLERID 445
620 < #define T_CALLERID 446
621 < #define T_CCONN 447
622 < #define T_CCONN_FULL 448
623 < #define T_CLIENT_FLOOD 449
624 < #define T_DEAF 450
625 < #define T_DEBUG 451
626 < #define T_DLINE 452
627 < #define T_DRONE 453
628 < #define T_EXTERNAL 454
629 < #define T_FULL 455
630 < #define T_INVISIBLE 456
631 < #define T_IPV4 457
632 < #define T_IPV6 458
633 < #define T_LOCOPS 459
634 < #define T_MAX_CLIENTS 460
635 < #define T_NCHANGE 461
636 < #define T_OPERWALL 462
637 < #define T_REJ 463
638 < #define T_SERVER 464
639 < #define T_SERVNOTICE 465
640 < #define T_SKILL 466
641 < #define T_SPY 467
642 < #define T_SSL 468
643 < #define T_UMODES 469
644 < #define T_UNAUTH 470
645 < #define T_UNLIMITED 471
646 < #define T_UNRESV 472
647 < #define T_UNXLINE 473
648 < #define T_GLOBOPS 474
649 < #define T_WALLOP 475
650 < #define T_RESTART 476
651 < #define T_SERVICE 477
652 < #define T_SERVICES_NAME 478
653 < #define T_TIMESTAMP 479
654 < #define THROTTLE_TIME 480
655 < #define TOPICBURST 481
656 < #define TRUE_NO_OPER_FLOOD 482
657 < #define TKLINE 483
658 < #define TXLINE 484
659 < #define TRESV 485
660 < #define UNKLINE 486
661 < #define USER 487
662 < #define USE_EGD 488
663 < #define USE_EXCEPT 489
664 < #define USE_INVEX 490
665 < #define USE_KNOCK 491
666 < #define USE_LOGGING 492
667 < #define USE_WHOIS_ACTUALLY 493
668 < #define VHOST 494
669 < #define VHOST6 495
689 < #define XLINE 496
690 < #define WARN 497
691 < #define WARN_NO_NLINE 498
692 < #define T_SIZE 499
693 < #define T_FILE 500
442 > #define BYTES 268
443 > #define KBYTES 269
444 > #define MBYTES 270
445 > #define GBYTES 271
446 > #define TBYTES 272
447 > #define CALLER_ID_WAIT 273
448 > #define CAN_FLOOD 274
449 > #define CHANNEL 275
450 > #define CIDR_BITLEN_IPV4 276
451 > #define CIDR_BITLEN_IPV6 277
452 > #define CLASS 278
453 > #define CONNECT 279
454 > #define CONNECTFREQ 280
455 > #define DEFAULT_FLOODCOUNT 281
456 > #define DEFAULT_SPLIT_SERVER_COUNT 282
457 > #define DEFAULT_SPLIT_USER_COUNT 283
458 > #define DENY 284
459 > #define DESCRIPTION 285
460 > #define DIE 286
461 > #define DISABLE_AUTH 287
462 > #define DISABLE_FAKE_CHANNELS 288
463 > #define DISABLE_HIDDEN 289
464 > #define DISABLE_LOCAL_CHANNELS 290
465 > #define DISABLE_REMOTE_COMMANDS 291
466 > #define DOTS_IN_IDENT 292
467 > #define DURATION 293
468 > #define EGDPOOL_PATH 294
469 > #define EMAIL 295
470 > #define ENABLE 296
471 > #define ENCRYPTED 297
472 > #define EXCEED_LIMIT 298
473 > #define EXEMPT 299
474 > #define FAILED_OPER_NOTICE 300
475 > #define IRCD_FLAGS 301
476 > #define FLATTEN_LINKS 302
477 > #define GECOS 303
478 > #define GENERAL 304
479 > #define GLINE 305
480 > #define GLINES 306
481 > #define GLINE_EXEMPT 307
482 > #define GLINE_TIME 308
483 > #define GLINE_MIN_CIDR 309
484 > #define GLINE_MIN_CIDR6 310
485 > #define GLOBAL_KILL 311
486 > #define IRCD_AUTH 312
487 > #define NEED_IDENT 313
488 > #define HAVENT_READ_CONF 314
489 > #define HIDDEN 315
490 > #define HIDDEN_NAME 316
491 > #define HIDE_SERVER_IPS 317
492 > #define HIDE_SERVERS 318
493 > #define HIDE_SPOOF_IPS 319
494 > #define HOST 320
495 > #define HUB 321
496 > #define HUB_MASK 322
497 > #define IGNORE_BOGUS_TS 323
498 > #define INVISIBLE_ON_CONNECT 324
499 > #define IP 325
500 > #define KILL 326
501 > #define KILL_CHASE_TIME_LIMIT 327
502 > #define KLINE 328
503 > #define KLINE_EXEMPT 329
504 > #define KLINE_REASON 330
505 > #define KLINE_WITH_REASON 331
506 > #define KNOCK_DELAY 332
507 > #define KNOCK_DELAY_CHANNEL 333
508 > #define LEAF_MASK 334
509 > #define LINKS_DELAY 335
510 > #define LISTEN 336
511 > #define T_LOG 337
512 > #define MAX_ACCEPT 338
513 > #define MAX_BANS 339
514 > #define MAX_CHANS_PER_OPER 340
515 > #define MAX_CHANS_PER_USER 341
516 > #define MAX_GLOBAL 342
517 > #define MAX_IDENT 343
518 > #define MAX_LOCAL 344
519 > #define MAX_NICK_CHANGES 345
520 > #define MAX_NICK_TIME 346
521 > #define MAX_NUMBER 347
522 > #define MAX_TARGETS 348
523 > #define MAX_WATCH 349
524 > #define MESSAGE_LOCALE 350
525 > #define MIN_NONWILDCARD 351
526 > #define MIN_NONWILDCARD_SIMPLE 352
527 > #define MODULE 353
528 > #define MODULES 354
529 > #define NAME 355
530 > #define NEED_PASSWORD 356
531 > #define NETWORK_DESC 357
532 > #define NETWORK_NAME 358
533 > #define NICK 359
534 > #define NICK_CHANGES 360
535 > #define NO_CREATE_ON_SPLIT 361
536 > #define NO_JOIN_ON_SPLIT 362
537 > #define NO_OPER_FLOOD 363
538 > #define NO_TILDE 364
539 > #define NUMBER 365
540 > #define NUMBER_PER_IDENT 366
541 > #define NUMBER_PER_CIDR 367
542 > #define NUMBER_PER_IP 368
543 > #define NUMBER_PER_IP_GLOBAL 369
544 > #define OPERATOR 370
545 > #define OPERS_BYPASS_CALLERID 371
546 > #define OPER_ONLY_UMODES 372
547 > #define OPER_PASS_RESV 373
548 > #define OPER_SPY_T 374
549 > #define OPER_UMODES 375
550 > #define JOIN_FLOOD_COUNT 376
551 > #define JOIN_FLOOD_TIME 377
552 > #define PACE_WAIT 378
553 > #define PACE_WAIT_SIMPLE 379
554 > #define PASSWORD 380
555 > #define PATH 381
556 > #define PING_COOKIE 382
557 > #define PING_TIME 383
558 > #define PING_WARNING 384
559 > #define PORT 385
560 > #define QSTRING 386
561 > #define QUIET_ON_BAN 387
562 > #define REASON 388
563 > #define REDIRPORT 389
564 > #define REDIRSERV 390
565 > #define REGEX_T 391
566 > #define REHASH 392
567 > #define TREJECT_HOLD_TIME 393
568 > #define REMOTE 394
569 > #define REMOTEBAN 395
570 > #define RESTRICT_CHANNELS 396
571 > #define RESTRICTED 397
572 > #define RSA_PRIVATE_KEY_FILE 398
573 > #define RSA_PUBLIC_KEY_FILE 399
574 > #define SSL_CERTIFICATE_FILE 400
575 > #define SSL_DH_PARAM_FILE 401
576 > #define T_SSL_CLIENT_METHOD 402
577 > #define T_SSL_SERVER_METHOD 403
578 > #define T_SSLV3 404
579 > #define T_TLSV1 405
580 > #define RESV 406
581 > #define RESV_EXEMPT 407
582 > #define SECONDS 408
583 > #define MINUTES 409
584 > #define HOURS 410
585 > #define DAYS 411
586 > #define WEEKS 412
587 > #define SENDQ 413
588 > #define SEND_PASSWORD 414
589 > #define SERVERHIDE 415
590 > #define SERVERINFO 416
591 > #define IRCD_SID 417
592 > #define TKLINE_EXPIRE_NOTICES 418
593 > #define T_SHARED 419
594 > #define T_CLUSTER 420
595 > #define TYPE 421
596 > #define SHORT_MOTD 422
597 > #define SILENT 423
598 > #define SPOOF 424
599 > #define SPOOF_NOTICE 425
600 > #define STATS_E_DISABLED 426
601 > #define STATS_I_OPER_ONLY 427
602 > #define STATS_K_OPER_ONLY 428
603 > #define STATS_O_OPER_ONLY 429
604 > #define STATS_P_OPER_ONLY 430
605 > #define TBOOL 431
606 > #define TMASKED 432
607 > #define T_REJECT 433
608 > #define TS_MAX_DELTA 434
609 > #define TS_WARN_DELTA 435
610 > #define TWODOTS 436
611 > #define T_ALL 437
612 > #define T_BOTS 438
613 > #define T_SOFTCALLERID 439
614 > #define T_CALLERID 440
615 > #define T_CCONN 441
616 > #define T_CCONN_FULL 442
617 > #define T_SSL_CIPHER_LIST 443
618 > #define T_CLIENT_FLOOD 444
619 > #define T_DEAF 445
620 > #define T_DEBUG 446
621 > #define T_DLINE 447
622 > #define T_DRONE 448
623 > #define T_EXTERNAL 449
624 > #define T_FULL 450
625 > #define T_INVISIBLE 451
626 > #define T_IPV4 452
627 > #define T_IPV6 453
628 > #define T_LOCOPS 454
629 > #define T_MAX_CLIENTS 455
630 > #define T_NCHANGE 456
631 > #define T_OPERWALL 457
632 > #define T_REJ 458
633 > #define T_SERVER 459
634 > #define T_SERVNOTICE 460
635 > #define T_SKILL 461
636 > #define T_SPY 462
637 > #define T_SSL 463
638 > #define T_UMODES 464
639 > #define T_UNAUTH 465
640 > #define T_UNDLINE 466
641 > #define T_UNLIMITED 467
642 > #define T_UNRESV 468
643 > #define T_UNXLINE 469
644 > #define T_GLOBOPS 470
645 > #define T_WALLOP 471
646 > #define T_RESTART 472
647 > #define T_SERVICE 473
648 > #define T_SERVICES_NAME 474
649 > #define THROTTLE_TIME 475
650 > #define TOPICBURST 476
651 > #define TRUE_NO_OPER_FLOOD 477
652 > #define TKLINE 478
653 > #define TXLINE 479
654 > #define TRESV 480
655 > #define UNKLINE 481
656 > #define USER 482
657 > #define USE_EGD 483
658 > #define USE_EXCEPT 484
659 > #define USE_INVEX 485
660 > #define USE_KNOCK 486
661 > #define USE_LOGGING 487
662 > #define USE_WHOIS_ACTUALLY 488
663 > #define VHOST 489
664 > #define VHOST6 490
665 > #define XLINE 491
666 > #define WARN 492
667 > #define WARN_NO_NLINE 493
668 > #define T_SIZE 494
669 > #define T_FILE 495
670  
671  
672  
# Line 699 | Line 675 | unhook_hub_leaf_confs(void)
675   typedef union YYSTYPE
676   {
677  
678 < /* Line 293 of yacc.c  */
679 < #line 132 "ircd_parser.y"
678 > /* Line 295 of yacc.c  */
679 > #line 110 "conf_parser.y"
680  
681    int number;
682    char *string;
683  
684  
685  
686 < /* Line 293 of yacc.c  */
687 < #line 712 "ircd_parser.c"
686 > /* Line 295 of yacc.c  */
687 > #line 688 "conf_parser.c"
688   } YYSTYPE;
689   # define YYSTYPE_IS_TRIVIAL 1
690   # define yystype YYSTYPE /* obsolescent; will be withdrawn */
# Line 719 | Line 695 | typedef union YYSTYPE
695   /* Copy the second part of user declarations.  */
696  
697  
698 < /* Line 343 of yacc.c  */
699 < #line 724 "ircd_parser.c"
698 > /* Line 345 of yacc.c  */
699 > #line 700 "conf_parser.c"
700  
701   #ifdef short
702   # undef short
# Line 826 | Line 802 | YYID (yyi)
802   #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
803       || defined __cplusplus || defined _MSC_VER)
804   #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
805 +      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
806   #     ifndef EXIT_SUCCESS
807   #      define EXIT_SUCCESS 0
808   #     endif
# Line 917 | Line 894 | union yyalloc
894   #endif
895  
896   #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
897 < /* Copy COUNT objects from FROM to TO.  The source and destination do
897 > /* Copy COUNT objects from SRC to DST.  The source and destination do
898     not overlap.  */
899   # ifndef YYCOPY
900   #  if defined __GNUC__ && 1 < __GNUC__
901 < #   define YYCOPY(To, From, Count) \
902 <      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
901 > #   define YYCOPY(Dst, Src, Count) \
902 >      __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
903   #  else
904 < #   define YYCOPY(To, From, Count)              \
905 <      do                                        \
906 <        {                                       \
907 <          YYSIZE_T yyi;                         \
908 <          for (yyi = 0; yyi < (Count); yyi++)   \
909 <            (To)[yyi] = (From)[yyi];            \
910 <        }                                       \
904 > #   define YYCOPY(Dst, Src, Count)              \
905 >      do                                        \
906 >        {                                       \
907 >          YYSIZE_T yyi;                         \
908 >          for (yyi = 0; yyi < (Count); yyi++)   \
909 >            (Dst)[yyi] = (Src)[yyi];            \
910 >        }                                       \
911        while (YYID (0))
912   #  endif
913   # endif
# Line 939 | Line 916 | union yyalloc
916   /* YYFINAL -- State number of the termination state.  */
917   #define YYFINAL  2
918   /* YYLAST -- Last index in YYTABLE.  */
919 < #define YYLAST   1253
919 > #define YYLAST   1248
920  
921   /* YYNTOKENS -- Number of terminals.  */
922 < #define YYNTOKENS  251
922 > #define YYNTOKENS  246
923   /* YYNNTS -- Number of nonterminals.  */
924 < #define YYNNTS  306
924 > #define YYNNTS  305
925   /* YYNRULES -- Number of rules.  */
926 < #define YYNRULES  669
926 > #define YYNRULES  668
927   /* YYNRULES -- Number of states.  */
928 < #define YYNSTATES  1317
928 > #define YYNSTATES  1311
929  
930   /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
931   #define YYUNDEFTOK  2
932 < #define YYMAXUTOK   500
932 > #define YYMAXUTOK   495
933  
934   #define YYTRANSLATE(YYX)                                                \
935    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
# Line 964 | Line 941 | static const yytype_uint8 yytranslate[]
941         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
942         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
943         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
944 <       2,     2,     2,     2,   250,     2,     2,     2,     2,     2,
945 <       2,     2,     2,     2,     2,     2,     2,     2,     2,   246,
946 <       2,   249,     2,     2,     2,     2,     2,     2,     2,     2,
944 >       2,     2,     2,     2,   245,     2,     2,     2,     2,     2,
945 >       2,     2,     2,     2,     2,     2,     2,     2,     2,   241,
946 >       2,   244,     2,     2,     2,     2,     2,     2,     2,     2,
947         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
948         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
949         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
950         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
951         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
952 <       2,     2,     2,   248,     2,   247,     2,     2,     2,     2,
952 >       2,     2,     2,   243,     2,   242,     2,     2,     2,     2,
953         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
954         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
955         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
# Line 1009 | Line 986 | static const yytype_uint8 yytranslate[]
986       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
987       215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
988       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
989 <     235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1013 <     245
989 >     235,   236,   237,   238,   239,   240
990   };
991  
992   #if YYDEBUG
# Line 1024 | Line 1000 | static const yytype_uint16 yyprhs[] =
1000        61,    65,    69,    73,    77,    81,    82,    84,    87,    91,
1001        95,    99,   105,   108,   110,   112,   114,   117,   122,   127,
1002       133,   136,   138,   140,   142,   144,   146,   148,   150,   152,
1003 <     154,   156,   158,   160,   162,   165,   166,   172,   176,   178,
1004 <     180,   182,   187,   192,   197,   202,   207,   212,   217,   222,
1005 <     227,   232,   237,   243,   246,   248,   250,   252,   254,   257,
1006 <     262,   267,   272,   278,   281,   283,   285,   287,   289,   292,
1007 <     297,   302,   303,   310,   313,   315,   317,   319,   321,   324,
1008 <     329,   334,   339,   340,   346,   350,   352,   354,   356,   358,
1009 <     360,   362,   364,   366,   367,   374,   377,   379,   381,   383,
1010 <     385,   387,   389,   391,   393,   395,   398,   403,   408,   413,
1011 <     418,   423,   428,   429,   435,   439,   441,   443,   445,   447,
1012 <     449,   451,   453,   455,   457,   459,   461,   463,   465,   467,
1013 <     469,   471,   473,   475,   477,   479,   480,   486,   490,   492,
1014 <     494,   496,   498,   500,   502,   504,   506,   508,   510,   512,
1015 <     514,   516,   518,   520,   522,   524,   526,   528,   529,   536,
1016 <     539,   541,   543,   545,   547,   549,   551,   553,   555,   557,
1017 <     559,   561,   563,   565,   567,   570,   575,   580,   585,   590,
1018 <     595,   600,   605,   610,   615,   620,   625,   630,   635,   636,
1019 <     643,   644,   650,   654,   656,   658,   660,   662,   665,   667,
1020 <     669,   671,   673,   675,   678,   679,   685,   689,   691,   693,
1021 <     697,   702,   707,   708,   715,   718,   720,   722,   724,   726,
1022 <     728,   730,   732,   734,   736,   739,   744,   749,   754,   759,
1023 <     760,   766,   770,   772,   774,   776,   778,   780,   782,   784,
1024 <     786,   788,   790,   795,   800,   805,   806,   813,   816,   818,
1025 <     820,   822,   824,   827,   832,   837,   842,   848,   851,   853,
1026 <     855,   857,   862,   863,   870,   873,   875,   877,   879,   881,
1027 <     884,   889,   894,   895,   901,   905,   907,   909,   911,   913,
1028 <     915,   917,   919,   921,   923,   925,   927,   929,   930,   937,
1029 <     940,   942,   944,   946,   949,   954,   955,   961,   965,   967,
1030 <     969,   971,   973,   975,   977,   979,   981,   983,   985,   987,
1031 <     989,   990,   997,  1000,  1002,  1004,  1006,  1008,  1010,  1012,
1032 <    1014,  1016,  1018,  1020,  1022,  1024,  1026,  1028,  1030,  1033,
1033 <    1038,  1043,  1048,  1053,  1058,  1063,  1068,  1073,  1074,  1080,
1034 <    1084,  1086,  1088,  1090,  1092,  1094,  1096,  1101,  1106,  1111,
1035 <    1116,  1121,  1126,  1127,  1134,  1135,  1141,  1145,  1147,  1149,
1036 <    1152,  1154,  1156,  1158,  1160,  1162,  1167,  1172,  1173,  1180,
1037 <    1183,  1185,  1187,  1189,  1191,  1196,  1201,  1207,  1210,  1212,
1038 <    1214,  1216,  1221,  1222,  1229,  1230,  1236,  1240,  1242,  1244,
1039 <    1247,  1249,  1251,  1253,  1255,  1257,  1262,  1267,  1273,  1276,
1040 <    1278,  1280,  1282,  1284,  1286,  1288,  1290,  1292,  1294,  1296,
1041 <    1298,  1300,  1302,  1304,  1306,  1308,  1310,  1312,  1314,  1316,
1042 <    1318,  1320,  1322,  1324,  1326,  1328,  1330,  1332,  1334,  1336,
1043 <    1338,  1340,  1342,  1344,  1346,  1348,  1350,  1352,  1354,  1356,
1044 <    1358,  1360,  1362,  1364,  1366,  1368,  1370,  1372,  1374,  1376,
1045 <    1378,  1380,  1382,  1384,  1386,  1388,  1393,  1398,  1403,  1408,
1046 <    1413,  1418,  1423,  1428,  1433,  1438,  1443,  1448,  1453,  1458,
1047 <    1463,  1468,  1473,  1478,  1483,  1488,  1493,  1498,  1503,  1508,
1048 <    1513,  1518,  1523,  1528,  1533,  1538,  1543,  1548,  1553,  1558,
1049 <    1563,  1568,  1573,  1578,  1583,  1588,  1593,  1598,  1603,  1608,
1050 <    1613,  1618,  1623,  1628,  1633,  1638,  1639,  1645,  1649,  1651,
1051 <    1653,  1655,  1657,  1659,  1661,  1663,  1665,  1667,  1669,  1671,
1052 <    1673,  1675,  1677,  1679,  1681,  1683,  1685,  1687,  1689,  1690,
1053 <    1696,  1700,  1702,  1704,  1706,  1708,  1710,  1712,  1714,  1716,
1054 <    1718,  1720,  1722,  1724,  1726,  1728,  1730,  1732,  1734,  1736,
1055 <    1738,  1740,  1745,  1750,  1755,  1760,  1761,  1768,  1771,  1773,
1056 <    1775,  1777,  1779,  1781,  1783,  1785,  1787,  1792,  1797,  1798,
1057 <    1804,  1808,  1810,  1812,  1814,  1819,  1824,  1825,  1831,  1835,
1058 <    1837,  1839,  1841,  1847,  1850,  1852,  1854,  1856,  1858,  1860,
1059 <    1862,  1864,  1866,  1868,  1870,  1872,  1874,  1876,  1878,  1880,
1060 <    1882,  1884,  1886,  1888,  1890,  1895,  1900,  1905,  1910,  1915,
1061 <    1920,  1925,  1930,  1935,  1940,  1945,  1950,  1955,  1960,  1965,
1062 <    1970,  1975,  1980,  1986,  1989,  1991,  1993,  1995,  1997,  1999,
1063 <    2001,  2003,  2005,  2007,  2012,  2017,  2022,  2027,  2032,  2037
1003 >     154,   156,   158,   160,   162,   164,   166,   168,   171,   176,
1004 >     181,   185,   187,   189,   191,   195,   197,   199,   201,   206,
1005 >     211,   216,   221,   226,   231,   236,   241,   246,   251,   256,
1006 >     261,   266,   272,   275,   277,   279,   281,   283,   286,   291,
1007 >     296,   301,   307,   310,   312,   314,   316,   319,   324,   325,
1008 >     332,   335,   337,   339,   341,   343,   346,   351,   356,   361,
1009 >     362,   368,   372,   374,   376,   378,   380,   382,   384,   386,
1010 >     388,   389,   396,   399,   401,   403,   405,   407,   409,   411,
1011 >     413,   415,   417,   420,   425,   430,   435,   440,   445,   450,
1012 >     451,   457,   461,   463,   465,   467,   469,   471,   473,   475,
1013 >     477,   479,   481,   483,   485,   487,   489,   491,   493,   495,
1014 >     497,   499,   501,   503,   504,   510,   514,   516,   518,   520,
1015 >     522,   524,   526,   528,   530,   532,   534,   536,   538,   540,
1016 >     542,   544,   546,   548,   550,   552,   553,   560,   563,   565,
1017 >     567,   569,   571,   573,   575,   577,   579,   581,   583,   585,
1018 >     587,   589,   591,   594,   599,   604,   609,   614,   619,   624,
1019 >     629,   634,   639,   644,   649,   654,   659,   660,   667,   668,
1020 >     674,   678,   680,   682,   684,   686,   689,   691,   693,   695,
1021 >     697,   699,   702,   703,   709,   713,   715,   717,   721,   726,
1022 >     731,   732,   739,   742,   744,   746,   748,   750,   752,   754,
1023 >     756,   758,   760,   763,   768,   773,   778,   783,   784,   790,
1024 >     794,   796,   798,   800,   802,   804,   806,   808,   810,   812,
1025 >     814,   819,   824,   829,   830,   837,   840,   842,   844,   846,
1026 >     848,   851,   856,   861,   866,   872,   875,   877,   879,   881,
1027 >     886,   887,   894,   897,   899,   901,   903,   905,   908,   913,
1028 >     918,   919,   925,   929,   931,   933,   935,   937,   939,   941,
1029 >     943,   945,   947,   949,   951,   952,   959,   962,   964,   966,
1030 >     968,   971,   976,   977,   983,   987,   989,   991,   993,   995,
1031 >     997,   999,  1001,  1003,  1005,  1007,  1009,  1010,  1017,  1020,
1032 >    1022,  1024,  1026,  1028,  1030,  1032,  1034,  1036,  1038,  1040,
1033 >    1042,  1044,  1046,  1048,  1051,  1056,  1061,  1066,  1071,  1076,
1034 >    1081,  1086,  1091,  1092,  1098,  1102,  1104,  1106,  1108,  1110,
1035 >    1112,  1117,  1122,  1127,  1132,  1137,  1138,  1145,  1146,  1152,
1036 >    1156,  1158,  1160,  1163,  1165,  1167,  1169,  1171,  1173,  1178,
1037 >    1183,  1184,  1191,  1194,  1196,  1198,  1200,  1202,  1207,  1212,
1038 >    1218,  1221,  1223,  1225,  1227,  1232,  1233,  1240,  1241,  1247,
1039 >    1251,  1253,  1255,  1258,  1260,  1262,  1264,  1266,  1268,  1273,
1040 >    1278,  1284,  1287,  1289,  1291,  1293,  1295,  1297,  1299,  1301,
1041 >    1303,  1305,  1307,  1309,  1311,  1313,  1315,  1317,  1319,  1321,
1042 >    1323,  1325,  1327,  1329,  1331,  1333,  1335,  1337,  1339,  1341,
1043 >    1343,  1345,  1347,  1349,  1351,  1353,  1355,  1357,  1359,  1361,
1044 >    1363,  1365,  1367,  1369,  1371,  1373,  1375,  1377,  1379,  1381,
1045 >    1383,  1385,  1387,  1389,  1391,  1393,  1398,  1403,  1408,  1413,
1046 >    1418,  1423,  1428,  1433,  1438,  1443,  1448,  1453,  1458,  1463,
1047 >    1468,  1473,  1478,  1483,  1488,  1493,  1498,  1503,  1508,  1513,
1048 >    1518,  1523,  1528,  1533,  1538,  1543,  1548,  1553,  1558,  1563,
1049 >    1568,  1573,  1578,  1583,  1588,  1593,  1598,  1603,  1608,  1613,
1050 >    1618,  1623,  1628,  1629,  1635,  1639,  1641,  1643,  1645,  1647,
1051 >    1649,  1651,  1653,  1655,  1657,  1659,  1661,  1663,  1665,  1667,
1052 >    1669,  1671,  1673,  1675,  1677,  1679,  1681,  1682,  1688,  1692,
1053 >    1694,  1696,  1698,  1700,  1702,  1704,  1706,  1708,  1710,  1712,
1054 >    1714,  1716,  1718,  1720,  1722,  1724,  1726,  1728,  1730,  1732,
1055 >    1734,  1739,  1744,  1749,  1754,  1755,  1762,  1765,  1767,  1769,
1056 >    1771,  1773,  1775,  1777,  1779,  1781,  1786,  1791,  1792,  1798,
1057 >    1802,  1804,  1806,  1808,  1813,  1818,  1819,  1825,  1829,  1831,
1058 >    1833,  1835,  1841,  1844,  1846,  1848,  1850,  1852,  1854,  1856,
1059 >    1858,  1860,  1862,  1864,  1866,  1868,  1870,  1872,  1874,  1876,
1060 >    1878,  1880,  1882,  1884,  1889,  1894,  1899,  1904,  1909,  1914,
1061 >    1919,  1924,  1929,  1934,  1939,  1944,  1949,  1954,  1959,  1964,
1062 >    1969,  1974,  1980,  1983,  1985,  1987,  1989,  1991,  1993,  1995,
1063 >    1997,  1999,  2001,  2006,  2011,  2016,  2021,  2026,  2031
1064   };
1065  
1066   /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1067   static const yytype_int16 yyrhs[] =
1068   {
1069 <     252,     0,    -1,    -1,   252,   253,    -1,   281,    -1,   287,
1070 <      -1,   302,    -1,   526,    -1,   320,    -1,   337,    -1,   351,
1071 <      -1,   263,    -1,   547,    -1,   366,    -1,   373,    -1,   377,
1072 <      -1,   387,    -1,   396,    -1,   417,    -1,   427,    -1,   433,
1073 <      -1,   447,    -1,   510,    -1,   437,    -1,   258,    -1,     1,
1074 <     246,    -1,     1,   247,    -1,    -1,   255,    -1,   117,   254,
1075 <      -1,   117,   158,   254,    -1,   117,   159,   254,    -1,   117,
1076 <     160,   254,    -1,   117,   161,   254,    -1,   117,   162,   254,
1077 <      -1,    -1,   257,    -1,   117,   256,    -1,   117,    14,   256,
1078 <      -1,   117,    15,   256,    -1,   117,    16,   256,    -1,   106,
1079 <     248,   259,   247,   246,    -1,   259,   260,    -1,   260,    -1,
1080 <     261,    -1,   262,    -1,     1,   246,    -1,   105,   249,   138,
1081 <     246,    -1,   133,   249,   138,   246,    -1,   166,   248,   264,
1082 <     247,   246,    -1,   264,   265,    -1,   265,    -1,   272,    -1,
1083 <     277,    -1,   280,    -1,   274,    -1,   275,    -1,   276,    -1,
1084 <     279,    -1,   271,    -1,   278,    -1,   273,    -1,   270,    -1,
1085 <     266,    -1,     1,   246,    -1,    -1,   153,   267,   249,   268,
1086 <     246,    -1,   268,   250,   269,    -1,   269,    -1,   154,    -1,
1087 <     155,    -1,   152,   249,   138,   246,    -1,   150,   249,   138,
1088 <     246,    -1,   107,   249,   138,   246,    -1,   168,   249,   138,
1089 <     246,    -1,    36,   249,   138,   246,    -1,   110,   249,   138,
1090 <     246,    -1,   109,   249,   138,   246,    -1,   239,   249,   138,
1091 <     246,    -1,   240,   249,   138,   246,    -1,   205,   249,   117,
1092 <     246,    -1,    74,   249,   182,   246,    -1,     5,   248,   282,
1093 <     247,   246,    -1,   282,   283,    -1,   283,    -1,   284,    -1,
1094 <     286,    -1,   285,    -1,     1,   246,    -1,   107,   249,   138,
1095 <     246,    -1,    46,   249,   138,   246,    -1,    36,   249,   138,
1096 <     246,    -1,    90,   248,   288,   247,   246,    -1,   288,   289,
1097 <      -1,   289,    -1,   290,    -1,   291,    -1,   292,    -1,     1,
1098 <     246,    -1,   237,   249,   182,   246,    -1,   224,   249,   182,
1099 <     246,    -1,    -1,   293,   245,   248,   294,   247,   246,    -1,
1100 <     294,   295,    -1,   295,    -1,   296,    -1,   298,    -1,   297,
1101 <      -1,     1,   246,    -1,   107,   249,   138,   246,    -1,   244,
1102 <     249,   257,   246,    -1,   244,   249,   216,   246,    -1,    -1,
1103 <     172,   299,   249,   300,   246,    -1,   300,   250,   301,    -1,
1104 <     301,    -1,   232,    -1,   122,    -1,    56,    -1,   197,    -1,
1105 <      81,    -1,    79,    -1,   196,    -1,    -1,   122,   303,   248,
1106 <     304,   247,   246,    -1,   304,   305,    -1,   305,    -1,   306,
1107 <      -1,   307,    -1,   308,    -1,   312,    -1,   311,    -1,   309,
1108 <      -1,   310,    -1,   316,    -1,     1,   246,    -1,   107,   249,
1109 <     138,   246,    -1,   232,   249,   138,   246,    -1,   132,   249,
1110 <     138,   246,    -1,    48,   249,   182,   246,    -1,   151,   249,
1111 <     138,   246,    -1,    25,   249,   138,   246,    -1,    -1,   214,
1112 <     313,   249,   314,   246,    -1,   314,   250,   315,    -1,   315,
1113 <      -1,   189,    -1,   192,    -1,   193,    -1,   195,    -1,   196,
1114 <      -1,   200,    -1,   211,    -1,   206,    -1,   208,    -1,   215,
1115 <      -1,   212,    -1,   199,    -1,   207,    -1,   210,    -1,   201,
1116 <      -1,   220,    -1,   190,    -1,   191,    -1,   204,    -1,    -1,
1117 <      52,   317,   249,   318,   246,    -1,   318,   250,   319,    -1,
1118 <     319,    -1,    62,    -1,   146,    -1,    81,    -1,   231,    -1,
1119 <     241,    -1,    56,    -1,    37,    -1,   221,    -1,   144,    -1,
1120 <       5,    -1,    67,    -1,   112,    -1,   207,    -1,   219,    -1,
1121 <     126,    -1,    69,    -1,   147,    -1,   105,    -1,    -1,    25,
1122 <     321,   248,   322,   247,   246,    -1,   322,   323,    -1,   323,
1123 <      -1,   324,    -1,   334,    -1,   335,    -1,   325,    -1,   326,
1124 <      -1,   336,    -1,   327,    -1,   328,    -1,   329,    -1,   330,
1125 <      -1,   331,    -1,   332,    -1,   333,    -1,     1,   246,    -1,
1126 <     107,   249,   138,   246,    -1,   135,   249,   255,   246,    -1,
1127 <     136,   249,   255,   246,    -1,   120,   249,   117,   246,    -1,
1128 <      29,   249,   255,   246,    -1,    99,   249,   117,   246,    -1,
1129 <      94,   249,   117,   246,    -1,    96,   249,   117,   246,    -1,
1130 <      95,   249,   117,   246,    -1,   163,   249,   257,   246,    -1,
1131 <      22,   249,   117,   246,    -1,    23,   249,   117,   246,    -1,
1132 <     119,   249,   117,   246,    -1,    -1,    89,   338,   248,   343,
1133 <     247,   246,    -1,    -1,    52,   340,   249,   341,   246,    -1,
1134 <     341,   250,   342,    -1,   342,    -1,   213,    -1,    66,    -1,
1135 <     209,    -1,   343,   344,    -1,   344,    -1,   345,    -1,   339,
1136 <      -1,   349,    -1,   350,    -1,     1,   246,    -1,    -1,   137,
1137 <     249,   347,   346,   246,    -1,   347,   250,   348,    -1,   348,
1138 <      -1,   117,    -1,   117,   187,   117,    -1,    78,   249,   138,
1139 <     246,    -1,    73,   249,   138,   246,    -1,    -1,    63,   352,
1140 <     248,   353,   247,   246,    -1,   353,   354,    -1,   354,    -1,
1141 <     355,    -1,   356,    -1,   357,    -1,   359,    -1,   363,    -1,
1142 <     364,    -1,   365,    -1,   358,    -1,     1,   246,    -1,   232,
1143 <     249,   138,   246,    -1,   132,   249,   138,   246,    -1,    25,
1144 <     249,   138,   246,    -1,    48,   249,   182,   246,    -1,    -1,
1145 <      52,   360,   249,   361,   246,    -1,   361,   250,   362,    -1,
1146 <     362,    -1,   176,    -1,    49,    -1,    82,    -1,    64,    -1,
1147 <      20,    -1,   116,    -1,    58,    -1,   157,    -1,   108,    -1,
1148 <     175,   249,   138,   246,    -1,   142,   249,   138,   246,    -1,
1149 <     141,   249,   117,   246,    -1,    -1,   156,   367,   248,   368,
1150 <     247,   246,    -1,   368,   369,    -1,   369,    -1,   370,    -1,
1151 <     371,    -1,   372,    -1,     1,   246,    -1,   140,   249,   138,
1152 <     246,    -1,    21,   249,   138,   246,    -1,   111,   249,   138,
1153 <     246,    -1,   222,   248,   374,   247,   246,    -1,   374,   375,
1154 <      -1,   375,    -1,   376,    -1,     1,    -1,   107,   249,   138,
1155 <     246,    -1,    -1,   170,   378,   248,   379,   247,   246,    -1,
1156 <     379,   380,    -1,   380,    -1,   381,    -1,   382,    -1,   383,
1157 <      -1,     1,   246,    -1,   107,   249,   138,   246,    -1,   232,
1158 <     249,   138,   246,    -1,    -1,   172,   384,   249,   385,   246,
1159 <      -1,   385,   250,   386,    -1,   386,    -1,    81,    -1,   228,
1160 <      -1,   231,    -1,   241,    -1,   229,    -1,   218,    -1,   156,
1161 <      -1,   230,    -1,   217,    -1,   204,    -1,   188,    -1,    -1,
1162 <     171,   388,   248,   389,   247,   246,    -1,   389,   390,    -1,
1163 <     390,    -1,   391,    -1,   392,    -1,     1,   246,    -1,   107,
1164 <     249,   138,   246,    -1,    -1,   172,   393,   249,   394,   246,
1165 <      -1,   394,   250,   395,    -1,   395,    -1,    81,    -1,   228,
1166 <      -1,   231,    -1,   241,    -1,   229,    -1,   218,    -1,   156,
1167 <      -1,   230,    -1,   217,    -1,   204,    -1,   188,    -1,    -1,
1168 <      28,   397,   248,   398,   247,   246,    -1,   398,   399,    -1,
1169 <     399,    -1,   400,    -1,   401,    -1,   402,    -1,   403,    -1,
1170 <     404,    -1,   406,    -1,   405,    -1,   407,    -1,   413,    -1,
1171 <     414,    -1,   415,    -1,   412,    -1,   411,    -1,   416,    -1,
1172 <       1,   246,    -1,   107,   249,   138,   246,    -1,    73,   249,
1173 <     138,   246,    -1,   239,   249,   138,   246,    -1,   164,   249,
1174 <     138,   246,    -1,     3,   249,   138,   246,    -1,   137,   249,
1175 <     117,   246,    -1,     6,   249,   202,   246,    -1,     6,   249,
1176 <     203,   246,    -1,    -1,    52,   408,   249,   409,   246,    -1,
1177 <     409,   250,   410,    -1,   410,    -1,    26,    -1,    30,    -1,
1178 <      10,    -1,    12,    -1,   226,    -1,   151,   249,   138,   246,
1179 <      -1,    48,   249,   182,   246,    -1,    75,   249,   138,   246,
1180 <      -1,    87,   249,   138,   246,    -1,    25,   249,   138,   246,
1181 <      -1,    24,   249,   138,   246,    -1,    -1,    79,   418,   248,
1182 <     423,   247,   246,    -1,    -1,   172,   420,   249,   421,   246,
1183 <      -1,   421,   250,   422,    -1,   422,    -1,   143,    -1,   423,
1184 <     424,    -1,   424,    -1,   425,    -1,   426,    -1,   419,    -1,
1185 <       1,    -1,   232,   249,   138,   246,    -1,   140,   249,   138,
1186 <     246,    -1,    -1,    35,   428,   248,   429,   247,   246,    -1,
1187 <     429,   430,    -1,   430,    -1,   431,    -1,   432,    -1,     1,
1188 <      -1,    78,   249,   138,   246,    -1,   140,   249,   138,   246,
1189 <      -1,    50,   248,   434,   247,   246,    -1,   434,   435,    -1,
1190 <     435,    -1,   436,    -1,     1,    -1,    78,   249,   138,   246,
1191 <      -1,    -1,    54,   438,   248,   443,   247,   246,    -1,    -1,
1192 <     172,   440,   249,   441,   246,    -1,   441,   250,   442,    -1,
1193 <     442,    -1,   143,    -1,   443,   444,    -1,   444,    -1,   445,
1194 <      -1,   446,    -1,   439,    -1,     1,    -1,   107,   249,   138,
1195 <     246,    -1,   140,   249,   138,   246,    -1,    55,   248,   448,
1196 <     247,   246,    -1,   448,   449,    -1,   449,    -1,   457,    -1,
1197 <     458,    -1,   460,    -1,   461,    -1,   462,    -1,   463,    -1,
1198 <     464,    -1,   465,    -1,   466,    -1,   467,    -1,   456,    -1,
1199 <     469,    -1,   470,    -1,   471,    -1,   472,    -1,   487,    -1,
1200 <     474,    -1,   476,    -1,   478,    -1,   477,    -1,   481,    -1,
1201 <     475,    -1,   482,    -1,   483,    -1,   484,    -1,   485,    -1,
1202 <     486,    -1,   502,    -1,   488,    -1,   492,    -1,   493,    -1,
1203 <     498,    -1,   479,    -1,   480,    -1,   508,    -1,   506,    -1,
1204 <     507,    -1,   489,    -1,   459,    -1,   490,    -1,   491,    -1,
1205 <     509,    -1,   497,    -1,   468,    -1,   495,    -1,   496,    -1,
1206 <     455,    -1,   451,    -1,   452,    -1,   453,    -1,   454,    -1,
1207 <     473,    -1,   450,    -1,   494,    -1,     1,    -1,   101,   249,
1208 <     117,   246,    -1,    60,   249,   117,   246,    -1,    61,   249,
1209 <     117,   246,    -1,   238,   249,   182,   246,    -1,   145,   249,
1210 <     255,   246,    -1,   169,   249,   182,   246,    -1,    80,   249,
1211 <     255,   246,    -1,    72,   249,   182,   246,    -1,    76,   249,
1212 <     182,   246,    -1,    42,   249,   182,   246,    -1,    51,   249,
1213 <     182,   246,    -1,     8,   249,   182,   246,    -1,    98,   249,
1214 <     255,   246,    -1,    97,   249,   117,   246,    -1,    91,   249,
1215 <     117,   246,    -1,     9,   249,   255,   246,    -1,   186,   249,
1216 <     255,   246,    -1,   185,   249,   255,   246,    -1,    65,   249,
1217 <     117,   246,    -1,    84,   249,   182,   246,    -1,    83,   249,
1218 <     138,   246,    -1,    77,   249,   182,   246,    -1,   243,   249,
1219 <     182,   246,    -1,   177,   249,   182,   246,    -1,   180,   249,
1220 <     182,   246,    -1,   181,   249,   182,   246,    -1,   179,   249,
1221 <     182,   246,    -1,   179,   249,   183,   246,    -1,   178,   249,
1222 <     182,   246,    -1,   178,   249,   183,   246,    -1,   130,   249,
1223 <     255,   246,    -1,    19,   249,   255,   246,    -1,   123,   249,
1224 <     182,   246,    -1,   131,   249,   255,   246,    -1,   173,   249,
1225 <     182,   246,    -1,   115,   249,   182,   246,    -1,   227,   249,
1226 <     182,   246,    -1,   125,   249,   182,   246,    -1,   102,   249,
1227 <     138,   246,    -1,    43,   249,   117,   246,    -1,   100,   249,
1228 <     117,   246,    -1,   167,   249,   138,   246,    -1,    31,   249,
1229 <     138,   246,    -1,    27,   249,   117,   246,    -1,   233,   249,
1230 <     182,   246,    -1,    45,   249,   138,   246,    -1,   223,   249,
1231 <     138,   246,    -1,   134,   249,   182,   246,    -1,    38,   249,
1232 <     182,   246,    -1,   225,   249,   255,   246,    -1,    -1,   127,
1233 <     499,   249,   500,   246,    -1,   500,   250,   501,    -1,   501,
1234 <      -1,   189,    -1,   192,    -1,   193,    -1,   195,    -1,   196,
1235 <      -1,   200,    -1,   211,    -1,   206,    -1,   208,    -1,   215,
1236 <      -1,   212,    -1,   199,    -1,   207,    -1,   210,    -1,   201,
1237 <      -1,   220,    -1,   190,    -1,   191,    -1,   204,    -1,    -1,
1238 <     124,   503,   249,   504,   246,    -1,   504,   250,   505,    -1,
1239 <     505,    -1,   189,    -1,   192,    -1,   193,    -1,   195,    -1,
1240 <     196,    -1,   200,    -1,   211,    -1,   206,    -1,   208,    -1,
1241 <     215,    -1,   212,    -1,   199,    -1,   207,    -1,   210,    -1,
1242 <     201,    -1,   220,    -1,   190,    -1,   191,    -1,   204,    -1,
1243 <     103,   249,   117,   246,    -1,   104,   249,   117,   246,    -1,
1244 <      32,   249,   117,   246,    -1,   194,   249,   257,   246,    -1,
1245 <      -1,    57,   511,   248,   512,   247,   246,    -1,   512,   513,
1246 <      -1,   513,    -1,   514,    -1,   515,    -1,   516,    -1,   520,
1247 <      -1,   521,    -1,   522,    -1,     1,    -1,    47,   249,   182,
1248 <     246,    -1,    44,   249,   255,   246,    -1,    -1,    90,   517,
1249 <     249,   518,   246,    -1,   518,   250,   519,    -1,   519,    -1,
1250 <     184,    -1,    11,    -1,   232,   249,   138,   246,    -1,   107,
1251 <     249,   138,   246,    -1,    -1,     4,   523,   249,   524,   246,
1252 <      -1,   524,   250,   525,    -1,   525,    -1,   184,    -1,    11,
1253 <      -1,    21,   248,   527,   247,   246,    -1,   527,   528,    -1,
1254 <     528,    -1,   531,    -1,   532,    -1,   533,    -1,   534,    -1,
1255 <     539,    -1,   535,    -1,   536,    -1,   537,    -1,   538,    -1,
1256 <     540,    -1,   541,    -1,   542,    -1,   530,    -1,   543,    -1,
1257 <     544,    -1,   545,    -1,   546,    -1,   529,    -1,     1,    -1,
1258 <      39,   249,   182,   246,    -1,   148,   249,   182,   246,    -1,
1259 <      41,   249,   182,   246,    -1,   234,   249,   182,   246,    -1,
1260 <     235,   249,   182,   246,    -1,   236,   249,   182,   246,    -1,
1261 <      85,   249,   255,   246,    -1,    86,   249,   255,   246,    -1,
1262 <      93,   249,   117,   246,    -1,   139,   249,   182,   246,    -1,
1263 <      92,   249,   117,   246,    -1,    34,   249,   117,   246,    -1,
1264 <      33,   249,   117,   246,    -1,   113,   249,   182,   246,    -1,
1265 <     114,   249,   182,   246,    -1,    13,   249,   182,   246,    -1,
1266 <     128,   249,   117,   246,    -1,   129,   249,   255,   246,    -1,
1267 <     165,   248,   548,   247,   246,    -1,   548,   549,    -1,   549,
1268 <      -1,   550,    -1,   551,    -1,   553,    -1,   555,    -1,   554,
1269 <      -1,   552,    -1,   556,    -1,     1,    -1,    53,   249,   182,
1270 <     246,    -1,    71,   249,   182,   246,    -1,    68,   249,   138,
1271 <     246,    -1,    88,   249,   255,   246,    -1,    66,   249,   182,
1272 <     246,    -1,    40,   249,   182,   246,    -1,    70,   249,   182,
1297 <     246,    -1
1069 >     247,     0,    -1,    -1,   247,   248,    -1,   280,    -1,   286,
1070 >      -1,   300,    -1,   520,    -1,   318,    -1,   335,    -1,   349,
1071 >      -1,   258,    -1,   541,    -1,   364,    -1,   371,    -1,   375,
1072 >      -1,   385,    -1,   394,    -1,   414,    -1,   424,    -1,   430,
1073 >      -1,   444,    -1,   504,    -1,   434,    -1,   253,    -1,     1,
1074 >     241,    -1,     1,   242,    -1,    -1,   250,    -1,   110,   249,
1075 >      -1,   110,   153,   249,    -1,   110,   154,   249,    -1,   110,
1076 >     155,   249,    -1,   110,   156,   249,    -1,   110,   157,   249,
1077 >      -1,    -1,   252,    -1,   110,   251,    -1,   110,    13,   251,
1078 >      -1,   110,    14,   251,    -1,   110,    15,   251,    -1,    99,
1079 >     243,   254,   242,   241,    -1,   254,   255,    -1,   255,    -1,
1080 >     256,    -1,   257,    -1,     1,   241,    -1,    98,   244,   131,
1081 >     241,    -1,   126,   244,   131,   241,    -1,   161,   243,   259,
1082 >     242,   241,    -1,   259,   260,    -1,   260,    -1,   271,    -1,
1083 >     276,    -1,   279,    -1,   273,    -1,   274,    -1,   275,    -1,
1084 >     278,    -1,   269,    -1,   268,    -1,   277,    -1,   272,    -1,
1085 >     267,    -1,   261,    -1,   262,    -1,   270,    -1,     1,   241,
1086 >      -1,   147,   244,   263,   241,    -1,   148,   244,   265,   241,
1087 >      -1,   263,   245,   264,    -1,   264,    -1,   149,    -1,   150,
1088 >      -1,   265,   245,   266,    -1,   266,    -1,   149,    -1,   150,
1089 >      -1,   145,   244,   131,   241,    -1,   143,   244,   131,   241,
1090 >      -1,   146,   244,   131,   241,    -1,   188,   244,   131,   241,
1091 >      -1,   100,   244,   131,   241,    -1,   162,   244,   131,   241,
1092 >      -1,    30,   244,   131,   241,    -1,   103,   244,   131,   241,
1093 >      -1,   102,   244,   131,   241,    -1,   234,   244,   131,   241,
1094 >      -1,   235,   244,   131,   241,    -1,   200,   244,   110,   241,
1095 >      -1,    66,   244,   176,   241,    -1,     5,   243,   281,   242,
1096 >     241,    -1,   281,   282,    -1,   282,    -1,   283,    -1,   285,
1097 >      -1,   284,    -1,     1,   241,    -1,   100,   244,   131,   241,
1098 >      -1,    40,   244,   131,   241,    -1,    30,   244,   131,   241,
1099 >      -1,    82,   243,   287,   242,   241,    -1,   287,   288,    -1,
1100 >     288,    -1,   289,    -1,   290,    -1,     1,   241,    -1,   232,
1101 >     244,   176,   241,    -1,    -1,   291,   240,   243,   292,   242,
1102 >     241,    -1,   292,   293,    -1,   293,    -1,   294,    -1,   296,
1103 >      -1,   295,    -1,     1,   241,    -1,   100,   244,   131,   241,
1104 >      -1,   239,   244,   252,   241,    -1,   239,   244,   212,   241,
1105 >      -1,    -1,   166,   297,   244,   298,   241,    -1,   298,   245,
1106 >     299,    -1,   299,    -1,   227,    -1,   115,    -1,    50,    -1,
1107 >     192,    -1,    73,    -1,    71,    -1,   191,    -1,    -1,   115,
1108 >     301,   243,   302,   242,   241,    -1,   302,   303,    -1,   303,
1109 >      -1,   304,    -1,   305,    -1,   306,    -1,   310,    -1,   309,
1110 >      -1,   307,    -1,   308,    -1,   314,    -1,     1,   241,    -1,
1111 >     100,   244,   131,   241,    -1,   227,   244,   131,   241,    -1,
1112 >     125,   244,   131,   241,    -1,    42,   244,   176,   241,    -1,
1113 >     144,   244,   131,   241,    -1,    23,   244,   131,   241,    -1,
1114 >      -1,   209,   311,   244,   312,   241,    -1,   312,   245,   313,
1115 >      -1,   313,    -1,   183,    -1,   186,    -1,   187,    -1,   190,
1116 >      -1,   191,    -1,   195,    -1,    60,    -1,   206,    -1,   201,
1117 >      -1,   203,    -1,   210,    -1,   207,    -1,   194,    -1,   202,
1118 >      -1,   205,    -1,   196,    -1,   216,    -1,   184,    -1,   185,
1119 >      -1,   199,    -1,    -1,    46,   315,   244,   316,   241,    -1,
1120 >     316,   245,   317,    -1,   317,    -1,    56,    -1,   139,    -1,
1121 >      73,    -1,   226,    -1,   192,    -1,   211,    -1,   236,    -1,
1122 >      50,    -1,    31,    -1,   217,    -1,   137,    -1,     5,    -1,
1123 >     105,    -1,   202,    -1,   215,    -1,   119,    -1,   140,    -1,
1124 >      98,    -1,    -1,    23,   319,   243,   320,   242,   241,    -1,
1125 >     320,   321,    -1,   321,    -1,   322,    -1,   332,    -1,   333,
1126 >      -1,   323,    -1,   324,    -1,   334,    -1,   325,    -1,   326,
1127 >      -1,   327,    -1,   328,    -1,   329,    -1,   330,    -1,   331,
1128 >      -1,     1,   241,    -1,   100,   244,   131,   241,    -1,   128,
1129 >     244,   250,   241,    -1,   129,   244,   250,   241,    -1,   113,
1130 >     244,   110,   241,    -1,    25,   244,   250,   241,    -1,    92,
1131 >     244,   110,   241,    -1,    87,   244,   110,   241,    -1,    89,
1132 >     244,   110,   241,    -1,    88,   244,   110,   241,    -1,   158,
1133 >     244,   252,   241,    -1,    21,   244,   110,   241,    -1,    22,
1134 >     244,   110,   241,    -1,   112,   244,   110,   241,    -1,    -1,
1135 >      81,   336,   243,   341,   242,   241,    -1,    -1,    46,   338,
1136 >     244,   339,   241,    -1,   339,   245,   340,    -1,   340,    -1,
1137 >     208,    -1,    60,    -1,   204,    -1,   341,   342,    -1,   342,
1138 >      -1,   343,    -1,   337,    -1,   347,    -1,   348,    -1,     1,
1139 >     241,    -1,    -1,   130,   244,   345,   344,   241,    -1,   345,
1140 >     245,   346,    -1,   346,    -1,   110,    -1,   110,   181,   110,
1141 >      -1,    70,   244,   131,   241,    -1,    65,   244,   131,   241,
1142 >      -1,    -1,    57,   350,   243,   351,   242,   241,    -1,   351,
1143 >     352,    -1,   352,    -1,   353,    -1,   354,    -1,   355,    -1,
1144 >     357,    -1,   361,    -1,   362,    -1,   363,    -1,   356,    -1,
1145 >       1,   241,    -1,   227,   244,   131,   241,    -1,   125,   244,
1146 >     131,   241,    -1,    23,   244,   131,   241,    -1,    42,   244,
1147 >     176,   241,    -1,    -1,    46,   358,   244,   359,   241,    -1,
1148 >     359,   245,   360,    -1,   360,    -1,   170,    -1,    43,    -1,
1149 >      74,    -1,    58,    -1,    19,    -1,   109,    -1,    52,    -1,
1150 >     152,    -1,   101,    -1,   169,   244,   131,   241,    -1,   135,
1151 >     244,   131,   241,    -1,   134,   244,   110,   241,    -1,    -1,
1152 >     151,   365,   243,   366,   242,   241,    -1,   366,   367,    -1,
1153 >     367,    -1,   368,    -1,   369,    -1,   370,    -1,     1,   241,
1154 >      -1,   133,   244,   131,   241,    -1,    20,   244,   131,   241,
1155 >      -1,   104,   244,   131,   241,    -1,   218,   243,   372,   242,
1156 >     241,    -1,   372,   373,    -1,   373,    -1,   374,    -1,     1,
1157 >      -1,   100,   244,   131,   241,    -1,    -1,   164,   376,   243,
1158 >     377,   242,   241,    -1,   377,   378,    -1,   378,    -1,   379,
1159 >      -1,   380,    -1,   381,    -1,     1,   241,    -1,   100,   244,
1160 >     131,   241,    -1,   227,   244,   131,   241,    -1,    -1,   166,
1161 >     382,   244,   383,   241,    -1,   383,   245,   384,    -1,   384,
1162 >      -1,    73,    -1,   226,    -1,   192,    -1,   211,    -1,   236,
1163 >      -1,   214,    -1,   151,    -1,   213,    -1,   199,    -1,   182,
1164 >      -1,    -1,   165,   386,   243,   387,   242,   241,    -1,   387,
1165 >     388,    -1,   388,    -1,   389,    -1,   390,    -1,     1,   241,
1166 >      -1,   100,   244,   131,   241,    -1,    -1,   166,   391,   244,
1167 >     392,   241,    -1,   392,   245,   393,    -1,   393,    -1,    73,
1168 >      -1,   226,    -1,   192,    -1,   211,    -1,   236,    -1,   214,
1169 >      -1,   151,    -1,   213,    -1,   199,    -1,   182,    -1,    -1,
1170 >      24,   395,   243,   396,   242,   241,    -1,   396,   397,    -1,
1171 >     397,    -1,   398,    -1,   399,    -1,   400,    -1,   401,    -1,
1172 >     402,    -1,   404,    -1,   403,    -1,   413,    -1,   405,    -1,
1173 >     410,    -1,   411,    -1,   412,    -1,   409,    -1,     1,   241,
1174 >      -1,   100,   244,   131,   241,    -1,    65,   244,   131,   241,
1175 >      -1,   234,   244,   131,   241,    -1,   159,   244,   131,   241,
1176 >      -1,     3,   244,   131,   241,    -1,   130,   244,   110,   241,
1177 >      -1,     6,   244,   197,   241,    -1,     6,   244,   198,   241,
1178 >      -1,    -1,    46,   406,   244,   407,   241,    -1,   407,   245,
1179 >     408,    -1,   408,    -1,    10,    -1,    12,    -1,   221,    -1,
1180 >     208,    -1,    42,   244,   176,   241,    -1,    67,   244,   131,
1181 >     241,    -1,    79,   244,   131,   241,    -1,    23,   244,   131,
1182 >     241,    -1,   188,   244,   131,   241,    -1,    -1,    71,   415,
1183 >     243,   420,   242,   241,    -1,    -1,   166,   417,   244,   418,
1184 >     241,    -1,   418,   245,   419,    -1,   419,    -1,   136,    -1,
1185 >     420,   421,    -1,   421,    -1,   422,    -1,   423,    -1,   416,
1186 >      -1,     1,    -1,   227,   244,   131,   241,    -1,   133,   244,
1187 >     131,   241,    -1,    -1,    29,   425,   243,   426,   242,   241,
1188 >      -1,   426,   427,    -1,   427,    -1,   428,    -1,   429,    -1,
1189 >       1,    -1,    70,   244,   131,   241,    -1,   133,   244,   131,
1190 >     241,    -1,    44,   243,   431,   242,   241,    -1,   431,   432,
1191 >      -1,   432,    -1,   433,    -1,     1,    -1,    70,   244,   131,
1192 >     241,    -1,    -1,    48,   435,   243,   440,   242,   241,    -1,
1193 >      -1,   166,   437,   244,   438,   241,    -1,   438,   245,   439,
1194 >      -1,   439,    -1,   136,    -1,   440,   441,    -1,   441,    -1,
1195 >     442,    -1,   443,    -1,   436,    -1,     1,    -1,   100,   244,
1196 >     131,   241,    -1,   133,   244,   131,   241,    -1,    49,   243,
1197 >     445,   242,   241,    -1,   445,   446,    -1,   446,    -1,   454,
1198 >      -1,   455,    -1,   457,    -1,   458,    -1,   459,    -1,   460,
1199 >      -1,   461,    -1,   462,    -1,   463,    -1,   464,    -1,   453,
1200 >      -1,   466,    -1,   467,    -1,   468,    -1,   469,    -1,   484,
1201 >      -1,   471,    -1,   473,    -1,   475,    -1,   474,    -1,   478,
1202 >      -1,   472,    -1,   479,    -1,   480,    -1,   481,    -1,   482,
1203 >      -1,   483,    -1,   496,    -1,   485,    -1,   486,    -1,   487,
1204 >      -1,   492,    -1,   476,    -1,   477,    -1,   502,    -1,   500,
1205 >      -1,   501,    -1,   456,    -1,   503,    -1,   491,    -1,   465,
1206 >      -1,   489,    -1,   490,    -1,   452,    -1,   448,    -1,   449,
1207 >      -1,   450,    -1,   451,    -1,   470,    -1,   447,    -1,   488,
1208 >      -1,     1,    -1,    94,   244,   110,   241,    -1,    54,   244,
1209 >     110,   241,    -1,    55,   244,   110,   241,    -1,   233,   244,
1210 >     176,   241,    -1,   138,   244,   250,   241,    -1,   163,   244,
1211 >     176,   241,    -1,    72,   244,   250,   241,    -1,    64,   244,
1212 >     176,   241,    -1,    68,   244,   176,   241,    -1,    36,   244,
1213 >     176,   241,    -1,    45,   244,   176,   241,    -1,     8,   244,
1214 >     176,   241,    -1,    91,   244,   250,   241,    -1,    90,   244,
1215 >     110,   241,    -1,    83,   244,   110,   241,    -1,     9,   244,
1216 >     250,   241,    -1,   180,   244,   250,   241,    -1,   179,   244,
1217 >     250,   241,    -1,    59,   244,   110,   241,    -1,    76,   244,
1218 >     176,   241,    -1,    75,   244,   131,   241,    -1,    69,   244,
1219 >     176,   241,    -1,   238,   244,   176,   241,    -1,   171,   244,
1220 >     176,   241,    -1,   174,   244,   176,   241,    -1,   175,   244,
1221 >     176,   241,    -1,   173,   244,   176,   241,    -1,   173,   244,
1222 >     177,   241,    -1,   172,   244,   176,   241,    -1,   172,   244,
1223 >     177,   241,    -1,   123,   244,   250,   241,    -1,    18,   244,
1224 >     250,   241,    -1,   116,   244,   176,   241,    -1,   124,   244,
1225 >     250,   241,    -1,   167,   244,   176,   241,    -1,   108,   244,
1226 >     176,   241,    -1,   222,   244,   176,   241,    -1,   118,   244,
1227 >     176,   241,    -1,    95,   244,   131,   241,    -1,    37,   244,
1228 >     110,   241,    -1,    93,   244,   110,   241,    -1,   228,   244,
1229 >     176,   241,    -1,    39,   244,   131,   241,    -1,   219,   244,
1230 >     131,   241,    -1,   127,   244,   176,   241,    -1,    32,   244,
1231 >     176,   241,    -1,   220,   244,   250,   241,    -1,    -1,   120,
1232 >     493,   244,   494,   241,    -1,   494,   245,   495,    -1,   495,
1233 >      -1,   183,    -1,   186,    -1,   187,    -1,   190,    -1,   191,
1234 >      -1,   195,    -1,    60,    -1,   206,    -1,   201,    -1,   203,
1235 >      -1,   210,    -1,   207,    -1,   194,    -1,   202,    -1,   205,
1236 >      -1,   196,    -1,   216,    -1,   184,    -1,   185,    -1,   199,
1237 >      -1,    -1,   117,   497,   244,   498,   241,    -1,   498,   245,
1238 >     499,    -1,   499,    -1,   183,    -1,   186,    -1,   187,    -1,
1239 >     190,    -1,   191,    -1,   195,    -1,   206,    -1,    60,    -1,
1240 >     201,    -1,   203,    -1,   210,    -1,   207,    -1,   194,    -1,
1241 >     202,    -1,   205,    -1,   196,    -1,   216,    -1,   184,    -1,
1242 >     185,    -1,   199,    -1,    96,   244,   110,   241,    -1,    97,
1243 >     244,   110,   241,    -1,    26,   244,   110,   241,    -1,   189,
1244 >     244,   252,   241,    -1,    -1,    51,   505,   243,   506,   242,
1245 >     241,    -1,   506,   507,    -1,   507,    -1,   508,    -1,   509,
1246 >      -1,   510,    -1,   514,    -1,   515,    -1,   516,    -1,     1,
1247 >      -1,    41,   244,   176,   241,    -1,    38,   244,   250,   241,
1248 >      -1,    -1,    82,   511,   244,   512,   241,    -1,   512,   245,
1249 >     513,    -1,   513,    -1,   178,    -1,    11,    -1,   227,   244,
1250 >     131,   241,    -1,   100,   244,   131,   241,    -1,    -1,     4,
1251 >     517,   244,   518,   241,    -1,   518,   245,   519,    -1,   519,
1252 >      -1,   178,    -1,    11,    -1,    20,   243,   521,   242,   241,
1253 >      -1,   521,   522,    -1,   522,    -1,   525,    -1,   526,    -1,
1254 >     527,    -1,   528,    -1,   534,    -1,   529,    -1,   530,    -1,
1255 >     531,    -1,   532,    -1,   533,    -1,   535,    -1,   536,    -1,
1256 >     537,    -1,   524,    -1,   538,    -1,   539,    -1,   540,    -1,
1257 >     523,    -1,     1,    -1,    33,   244,   176,   241,    -1,   141,
1258 >     244,   176,   241,    -1,    35,   244,   176,   241,    -1,   229,
1259 >     244,   176,   241,    -1,   230,   244,   176,   241,    -1,   231,
1260 >     244,   176,   241,    -1,    77,   244,   250,   241,    -1,    78,
1261 >     244,   250,   241,    -1,    86,   244,   110,   241,    -1,    85,
1262 >     244,   110,   241,    -1,   132,   244,   176,   241,    -1,    84,
1263 >     244,   110,   241,    -1,    28,   244,   110,   241,    -1,    27,
1264 >     244,   110,   241,    -1,   106,   244,   176,   241,    -1,   107,
1265 >     244,   176,   241,    -1,   121,   244,   110,   241,    -1,   122,
1266 >     244,   250,   241,    -1,   160,   243,   542,   242,   241,    -1,
1267 >     542,   543,    -1,   543,    -1,   544,    -1,   545,    -1,   547,
1268 >      -1,   549,    -1,   548,    -1,   546,    -1,   550,    -1,     1,
1269 >      -1,    47,   244,   176,   241,    -1,    63,   244,   176,   241,
1270 >      -1,    61,   244,   131,   241,    -1,    80,   244,   250,   241,
1271 >      -1,    60,   244,   176,   241,    -1,    34,   244,   176,   241,
1272 >      -1,    62,   244,   176,   241,    -1
1273   };
1274  
1275   /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
1276   static const yytype_uint16 yyrline[] =
1277   {
1278 <       0,   381,   381,   382,   385,   386,   387,   388,   389,   390,
1279 <     391,   392,   393,   394,   395,   396,   397,   398,   399,   400,
1280 <     401,   402,   403,   404,   405,   406,   407,   411,   411,   412,
1281 <     416,   420,   424,   428,   432,   438,   438,   439,   440,   441,
1282 <     442,   449,   452,   452,   453,   453,   453,   455,   461,   468,
1283 <     470,   470,   471,   471,   472,   472,   473,   473,   474,   475,
1284 <     475,   476,   476,   477,   478,   482,   481,   500,   500,   501,
1285 <     507,   515,   549,   609,   624,   639,   648,   662,   671,   699,
1286 <     729,   752,   761,   763,   763,   764,   764,   765,   765,   767,
1287 <     776,   785,   797,   798,   798,   800,   800,   800,   801,   803,
1288 <     809,   816,   816,   826,   827,   829,   829,   830,   830,   832,
1289 <     837,   840,   846,   845,   851,   851,   852,   856,   860,   864,
1290 <     868,   872,   876,   887,   886,   984,   984,   985,   985,   985,
1291 <     986,   986,   986,   987,   987,   987,   989,  1001,  1038,  1050,
1292 <    1061,  1103,  1113,  1112,  1118,  1118,  1119,  1123,  1127,  1131,
1293 <    1135,  1139,  1143,  1147,  1151,  1155,  1159,  1163,  1167,  1171,
1294 <    1175,  1179,  1183,  1187,  1191,  1198,  1197,  1203,  1203,  1204,
1295 <    1208,  1212,  1216,  1220,  1224,  1228,  1232,  1236,  1240,  1244,
1296 <    1248,  1252,  1256,  1260,  1264,  1268,  1272,  1283,  1282,  1332,
1297 <    1332,  1333,  1334,  1334,  1335,  1336,  1337,  1338,  1339,  1340,
1298 <    1341,  1342,  1343,  1344,  1345,  1347,  1356,  1362,  1368,  1374,
1299 <    1380,  1386,  1392,  1398,  1404,  1410,  1416,  1422,  1432,  1431,
1300 <    1448,  1447,  1452,  1452,  1453,  1457,  1461,  1469,  1469,  1470,
1301 <    1470,  1470,  1470,  1470,  1472,  1472,  1474,  1474,  1476,  1490,
1302 <    1510,  1519,  1532,  1531,  1600,  1600,  1601,  1601,  1601,  1601,
1303 <    1602,  1602,  1602,  1603,  1603,  1605,  1642,  1655,  1664,  1676,
1304 <    1675,  1679,  1679,  1680,  1684,  1688,  1692,  1696,  1700,  1704,
1305 <    1708,  1712,  1719,  1738,  1748,  1762,  1761,  1777,  1777,  1778,
1306 <    1778,  1778,  1778,  1780,  1789,  1804,  1817,  1819,  1819,  1820,
1307 <    1820,  1822,  1838,  1837,  1853,  1853,  1854,  1854,  1854,  1854,
1308 <    1856,  1865,  1888,  1887,  1893,  1893,  1894,  1898,  1902,  1906,
1309 <    1910,  1914,  1918,  1922,  1926,  1930,  1934,  1944,  1943,  1960,
1310 <    1960,  1961,  1961,  1961,  1963,  1970,  1969,  1975,  1975,  1976,
1311 <    1980,  1984,  1988,  1992,  1996,  2000,  2004,  2008,  2012,  2016,
1312 <    2026,  2025,  2168,  2168,  2169,  2169,  2169,  2170,  2170,  2171,
1313 <    2171,  2172,  2172,  2172,  2173,  2173,  2174,  2174,  2175,  2177,
1314 <    2189,  2198,  2224,  2242,  2260,  2266,  2270,  2279,  2278,  2282,
1315 <    2282,  2283,  2293,  2297,  2301,  2305,  2311,  2352,  2363,  2376,
1316 <    2389,  2398,  2434,  2433,  2497,  2496,  2500,  2500,  2501,  2507,
1317 <    2507,  2508,  2508,  2508,  2508,  2510,  2529,  2539,  2538,  2561,
1318 <    2561,  2562,  2562,  2562,  2564,  2570,  2579,  2581,  2581,  2582,
1319 <    2582,  2584,  2603,  2602,  2650,  2649,  2653,  2653,  2654,  2660,
1320 <    2660,  2661,  2661,  2661,  2661,  2663,  2669,  2678,  2681,  2681,
1321 <    2682,  2682,  2683,  2683,  2684,  2684,  2685,  2685,  2686,  2686,
1322 <    2687,  2687,  2688,  2688,  2689,  2689,  2690,  2690,  2691,  2691,
1323 <    2692,  2692,  2693,  2693,  2694,  2694,  2695,  2696,  2696,  2697,
1324 <    2697,  2698,  2698,  2699,  2699,  2700,  2700,  2701,  2701,  2702,
1325 <    2703,  2703,  2704,  2704,  2705,  2706,  2707,  2707,  2708,  2708,
1326 <    2709,  2709,  2710,  2710,  2711,  2714,  2719,  2724,  2729,  2734,
1327 <    2739,  2744,  2749,  2754,  2759,  2764,  2769,  2774,  2779,  2784,
1328 <    2789,  2794,  2799,  2805,  2816,  2821,  2830,  2835,  2840,  2845,
1329 <    2850,  2855,  2858,  2863,  2866,  2871,  2876,  2881,  2886,  2891,
1330 <    2896,  2901,  2906,  2911,  2922,  2927,  2932,  2941,  2973,  2991,
1331 <    2996,  3005,  3014,  3019,  3024,  3030,  3029,  3034,  3034,  3035,
1332 <    3038,  3041,  3044,  3047,  3050,  3053,  3056,  3059,  3062,  3065,
1333 <    3068,  3071,  3074,  3077,  3080,  3083,  3086,  3089,  3095,  3094,
1334 <    3099,  3099,  3100,  3103,  3106,  3109,  3112,  3115,  3118,  3121,
1335 <    3124,  3127,  3130,  3133,  3136,  3139,  3142,  3145,  3148,  3151,
1336 <    3154,  3159,  3164,  3169,  3174,  3184,  3183,  3207,  3207,  3208,
1337 <    3209,  3210,  3211,  3212,  3213,  3214,  3216,  3222,  3229,  3228,
1338 <    3233,  3233,  3234,  3238,  3244,  3278,  3288,  3287,  3337,  3337,
1339 <    3338,  3342,  3351,  3354,  3354,  3355,  3355,  3356,  3356,  3357,
1340 <    3357,  3358,  3358,  3359,  3359,  3360,  3361,  3361,  3362,  3362,
1341 <    3363,  3363,  3364,  3364,  3366,  3371,  3376,  3381,  3386,  3391,
1342 <    3396,  3401,  3406,  3411,  3416,  3421,  3426,  3431,  3436,  3441,
1343 <    3446,  3451,  3459,  3462,  3462,  3463,  3463,  3464,  3465,  3466,
1344 <    3466,  3467,  3468,  3470,  3476,  3482,  3491,  3505,  3511,  3517
1278 >       0,   354,   354,   355,   358,   359,   360,   361,   362,   363,
1279 >     364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
1280 >     374,   375,   376,   377,   378,   379,   380,   384,   384,   385,
1281 >     389,   393,   397,   401,   405,   411,   411,   412,   413,   414,
1282 >     415,   422,   425,   425,   426,   426,   426,   428,   434,   441,
1283 >     443,   443,   444,   444,   445,   445,   446,   446,   447,   447,
1284 >     448,   448,   449,   449,   450,   450,   451,   452,   455,   456,
1285 >     458,   458,   459,   465,   473,   473,   474,   480,   488,   527,
1286 >     586,   614,   622,   637,   652,   661,   675,   684,   712,   742,
1287 >     765,   774,   776,   776,   777,   777,   778,   778,   780,   789,
1288 >     798,   810,   811,   811,   813,   813,   814,   816,   823,   823,
1289 >     833,   834,   836,   836,   837,   837,   839,   844,   847,   853,
1290 >     852,   858,   858,   859,   863,   867,   871,   875,   879,   883,
1291 >     894,   893,   991,   991,   992,   992,   992,   993,   993,   993,
1292 >     994,   994,   994,   996,  1005,  1042,  1054,  1065,  1107,  1117,
1293 >    1116,  1122,  1122,  1123,  1127,  1131,  1135,  1139,  1143,  1147,
1294 >    1151,  1155,  1159,  1163,  1167,  1171,  1175,  1179,  1183,  1187,
1295 >    1191,  1195,  1199,  1206,  1205,  1211,  1211,  1212,  1216,  1220,
1296 >    1224,  1228,  1232,  1236,  1240,  1244,  1248,  1252,  1256,  1260,
1297 >    1264,  1268,  1272,  1276,  1280,  1291,  1290,  1340,  1340,  1341,
1298 >    1342,  1342,  1343,  1344,  1345,  1346,  1347,  1348,  1349,  1350,
1299 >    1351,  1352,  1353,  1355,  1364,  1370,  1376,  1382,  1388,  1394,
1300 >    1400,  1406,  1412,  1418,  1424,  1430,  1440,  1439,  1456,  1455,
1301 >    1460,  1460,  1461,  1465,  1469,  1477,  1477,  1478,  1478,  1478,
1302 >    1478,  1478,  1480,  1480,  1482,  1482,  1484,  1498,  1518,  1527,
1303 >    1540,  1539,  1608,  1608,  1609,  1609,  1609,  1609,  1610,  1610,
1304 >    1610,  1611,  1611,  1613,  1648,  1661,  1670,  1682,  1681,  1685,
1305 >    1685,  1686,  1690,  1694,  1698,  1702,  1706,  1710,  1714,  1718,
1306 >    1725,  1744,  1754,  1768,  1767,  1783,  1783,  1784,  1784,  1784,
1307 >    1784,  1786,  1795,  1810,  1823,  1825,  1825,  1826,  1826,  1828,
1308 >    1844,  1843,  1859,  1859,  1860,  1860,  1860,  1860,  1862,  1871,
1309 >    1894,  1893,  1899,  1899,  1900,  1904,  1908,  1912,  1916,  1920,
1310 >    1924,  1928,  1932,  1936,  1946,  1945,  1962,  1962,  1963,  1963,
1311 >    1963,  1965,  1972,  1971,  1977,  1977,  1978,  1982,  1986,  1990,
1312 >    1994,  1998,  2002,  2006,  2010,  2014,  2024,  2023,  2074,  2074,
1313 >    2075,  2075,  2075,  2076,  2076,  2077,  2077,  2077,  2078,  2078,
1314 >    2078,  2079,  2079,  2080,  2082,  2091,  2100,  2126,  2144,  2162,
1315 >    2168,  2172,  2181,  2180,  2184,  2184,  2185,  2189,  2193,  2197,
1316 >    2203,  2214,  2225,  2236,  2245,  2264,  2263,  2329,  2328,  2332,
1317 >    2332,  2333,  2339,  2339,  2340,  2340,  2340,  2340,  2342,  2361,
1318 >    2371,  2370,  2395,  2395,  2396,  2396,  2396,  2398,  2404,  2413,
1319 >    2415,  2415,  2416,  2416,  2418,  2437,  2436,  2484,  2483,  2487,
1320 >    2487,  2488,  2494,  2494,  2495,  2495,  2495,  2495,  2497,  2503,
1321 >    2512,  2515,  2515,  2516,  2516,  2517,  2517,  2518,  2518,  2519,
1322 >    2519,  2520,  2520,  2521,  2521,  2522,  2522,  2523,  2523,  2524,
1323 >    2524,  2525,  2525,  2526,  2526,  2527,  2527,  2528,  2528,  2529,
1324 >    2530,  2530,  2531,  2531,  2532,  2532,  2533,  2533,  2534,  2534,
1325 >    2535,  2536,  2537,  2537,  2538,  2539,  2540,  2540,  2541,  2541,
1326 >    2542,  2542,  2543,  2543,  2544,  2547,  2552,  2557,  2562,  2567,
1327 >    2572,  2577,  2582,  2587,  2592,  2597,  2602,  2607,  2612,  2617,
1328 >    2622,  2627,  2632,  2638,  2649,  2654,  2663,  2668,  2673,  2678,
1329 >    2683,  2688,  2691,  2696,  2699,  2704,  2709,  2714,  2719,  2724,
1330 >    2729,  2734,  2739,  2744,  2755,  2760,  2765,  2770,  2779,  2788,
1331 >    2793,  2798,  2804,  2803,  2808,  2808,  2809,  2812,  2815,  2818,
1332 >    2821,  2824,  2827,  2830,  2833,  2836,  2839,  2842,  2845,  2848,
1333 >    2851,  2854,  2857,  2860,  2863,  2866,  2872,  2871,  2876,  2876,
1334 >    2877,  2880,  2883,  2886,  2889,  2892,  2895,  2898,  2901,  2904,
1335 >    2907,  2910,  2913,  2916,  2919,  2922,  2925,  2928,  2931,  2934,
1336 >    2939,  2944,  2949,  2954,  2964,  2963,  2987,  2987,  2988,  2989,
1337 >    2990,  2991,  2992,  2993,  2994,  2996,  3002,  3009,  3008,  3013,
1338 >    3013,  3014,  3018,  3024,  3058,  3068,  3067,  3117,  3117,  3118,
1339 >    3122,  3131,  3134,  3134,  3135,  3135,  3136,  3136,  3136,  3137,
1340 >    3137,  3138,  3138,  3139,  3139,  3140,  3141,  3141,  3142,  3143,
1341 >    3143,  3144,  3144,  3146,  3151,  3156,  3161,  3166,  3171,  3176,
1342 >    3181,  3186,  3191,  3196,  3201,  3206,  3211,  3216,  3221,  3226,
1343 >    3231,  3239,  3242,  3242,  3243,  3243,  3244,  3245,  3246,  3246,
1344 >    3247,  3248,  3250,  3256,  3262,  3271,  3285,  3291,  3297
1345   };
1346   #endif
1347  
# Line 1377 | Line 1352 | static const char *const yytname[] =
1352   {
1353    "$end", "error", "$undefined", "ACCEPT_PASSWORD", "ACTION", "ADMIN",
1354    "AFTYPE", "T_ALLOW", "ANTI_NICK_FLOOD", "ANTI_SPAM_EXIT_MESSAGE_TIME",
1355 <  "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BURST_TOPICWHO", "BYTES", "KBYTES",
1356 <  "MBYTES", "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1357 <  "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CIPHER_PREFERENCE", "CLASS",
1358 <  "COMPRESSED", "COMPRESSION_LEVEL", "CONNECT", "CONNECTFREQ", "CRYPTLINK",
1359 <  "DEFAULT_CIPHER_PREFERENCE", "DEFAULT_FLOODCOUNT",
1360 <  "DEFAULT_SPLIT_SERVER_COUNT", "DEFAULT_SPLIT_USER_COUNT", "DENY",
1361 <  "DESCRIPTION", "DIE", "DISABLE_AUTH", "DISABLE_FAKE_CHANNELS",
1362 <  "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS", "DISABLE_REMOTE_COMMANDS",
1363 <  "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH", "EMAIL", "ENABLE",
1364 <  "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT", "FAILED_OPER_NOTICE",
1365 <  "IRCD_FLAGS", "FLATTEN_LINKS", "GECOS", "GENERAL", "GLINE", "GLINES",
1366 <  "GLINE_EXEMPT", "GLINE_TIME", "GLINE_MIN_CIDR", "GLINE_MIN_CIDR6",
1392 <  "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT", "HAVENT_READ_CONF", "HIDDEN",
1393 <  "HIDDEN_ADMIN", "HIDDEN_NAME", "HIDDEN_OPER", "HIDE_SERVER_IPS",
1355 >  "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BYTES", "KBYTES", "MBYTES",
1356 >  "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1357 >  "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CLASS", "CONNECT",
1358 >  "CONNECTFREQ", "DEFAULT_FLOODCOUNT", "DEFAULT_SPLIT_SERVER_COUNT",
1359 >  "DEFAULT_SPLIT_USER_COUNT", "DENY", "DESCRIPTION", "DIE", "DISABLE_AUTH",
1360 >  "DISABLE_FAKE_CHANNELS", "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS",
1361 >  "DISABLE_REMOTE_COMMANDS", "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH",
1362 >  "EMAIL", "ENABLE", "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT",
1363 >  "FAILED_OPER_NOTICE", "IRCD_FLAGS", "FLATTEN_LINKS", "GECOS", "GENERAL",
1364 >  "GLINE", "GLINES", "GLINE_EXEMPT", "GLINE_TIME", "GLINE_MIN_CIDR",
1365 >  "GLINE_MIN_CIDR6", "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT",
1366 >  "HAVENT_READ_CONF", "HIDDEN", "HIDDEN_NAME", "HIDE_SERVER_IPS",
1367    "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK",
1368    "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT", "IP", "KILL",
1369    "KILL_CHASE_TIME_LIMIT", "KLINE", "KLINE_EXEMPT", "KLINE_REASON",
1370    "KLINE_WITH_REASON", "KNOCK_DELAY", "KNOCK_DELAY_CHANNEL", "LEAF_MASK",
1371    "LINKS_DELAY", "LISTEN", "T_LOG", "MAX_ACCEPT", "MAX_BANS",
1372 <  "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1373 <  "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER", "MAX_TARGETS",
1374 <  "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1372 >  "MAX_CHANS_PER_OPER", "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT",
1373 >  "MAX_LOCAL", "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER",
1374 >  "MAX_TARGETS", "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1375    "MIN_NONWILDCARD_SIMPLE", "MODULE", "MODULES", "NAME", "NEED_PASSWORD",
1376    "NETWORK_DESC", "NETWORK_NAME", "NICK", "NICK_CHANGES",
1377    "NO_CREATE_ON_SPLIT", "NO_JOIN_ON_SPLIT", "NO_OPER_FLOOD", "NO_TILDE",
# Line 1410 | Line 1383 | static const char *const yytname[] =
1383    "QSTRING", "QUIET_ON_BAN", "REASON", "REDIRPORT", "REDIRSERV", "REGEX_T",
1384    "REHASH", "TREJECT_HOLD_TIME", "REMOTE", "REMOTEBAN",
1385    "RESTRICT_CHANNELS", "RESTRICTED", "RSA_PRIVATE_KEY_FILE",
1386 <  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "T_SSL_CONNECTION_METHOD",
1387 <  "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES",
1388 <  "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD", "SERVERHIDE",
1389 <  "SERVERINFO", "SERVLINK_PATH", "IRCD_SID", "TKLINE_EXPIRE_NOTICES",
1390 <  "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD", "SILENT", "SPOOF",
1391 <  "SPOOF_NOTICE", "STATS_E_DISABLED", "STATS_I_OPER_ONLY",
1392 <  "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL",
1393 <  "TMASKED", "T_REJECT", "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS",
1394 <  "T_ALL", "T_BOTS", "T_SOFTCALLERID", "T_CALLERID", "T_CCONN",
1395 <  "T_CCONN_FULL", "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DLINE",
1396 <  "T_DRONE", "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6",
1397 <  "T_LOCOPS", "T_MAX_CLIENTS", "T_NCHANGE", "T_OPERWALL", "T_REJ",
1398 <  "T_SERVER", "T_SERVNOTICE", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES",
1399 <  "T_UNAUTH", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE", "T_GLOBOPS",
1400 <  "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME", "T_TIMESTAMP",
1401 <  "THROTTLE_TIME", "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE",
1402 <  "TRESV", "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX",
1403 <  "USE_KNOCK", "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6",
1404 <  "XLINE", "WARN", "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'",
1405 <  "'{'", "'='", "','", "$accept", "conf", "conf_item", "timespec_",
1406 <  "timespec", "sizespec_", "sizespec", "modules_entry", "modules_items",
1407 <  "modules_item", "modules_module", "modules_path", "serverinfo_entry",
1408 <  "serverinfo_items", "serverinfo_item",
1409 <  "serverinfo_ssl_connection_method", "$@1", "method_types",
1410 <  "method_type_item", "serverinfo_ssl_certificate_file",
1411 <  "serverinfo_rsa_private_key_file", "serverinfo_name", "serverinfo_sid",
1386 >  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "SSL_DH_PARAM_FILE",
1387 >  "T_SSL_CLIENT_METHOD", "T_SSL_SERVER_METHOD", "T_SSLV3", "T_TLSV1",
1388 >  "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS",
1389 >  "SENDQ", "SEND_PASSWORD", "SERVERHIDE", "SERVERINFO", "IRCD_SID",
1390 >  "TKLINE_EXPIRE_NOTICES", "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD",
1391 >  "SILENT", "SPOOF", "SPOOF_NOTICE", "STATS_E_DISABLED",
1392 >  "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY",
1393 >  "STATS_P_OPER_ONLY", "TBOOL", "TMASKED", "T_REJECT", "TS_MAX_DELTA",
1394 >  "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS", "T_SOFTCALLERID",
1395 >  "T_CALLERID", "T_CCONN", "T_CCONN_FULL", "T_SSL_CIPHER_LIST",
1396 >  "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DLINE", "T_DRONE",
1397 >  "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS",
1398 >  "T_MAX_CLIENTS", "T_NCHANGE", "T_OPERWALL", "T_REJ", "T_SERVER",
1399 >  "T_SERVNOTICE", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES", "T_UNAUTH",
1400 >  "T_UNDLINE", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE", "T_GLOBOPS",
1401 >  "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME", "THROTTLE_TIME",
1402 >  "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE", "TRESV",
1403 >  "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX", "USE_KNOCK",
1404 >  "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6", "XLINE", "WARN",
1405 >  "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'", "'{'", "'='", "','",
1406 >  "$accept", "conf", "conf_item", "timespec_", "timespec", "sizespec_",
1407 >  "sizespec", "modules_entry", "modules_items", "modules_item",
1408 >  "modules_module", "modules_path", "serverinfo_entry", "serverinfo_items",
1409 >  "serverinfo_item", "serverinfo_ssl_client_method",
1410 >  "serverinfo_ssl_server_method", "client_method_types",
1411 >  "client_method_type_item", "server_method_types",
1412 >  "server_method_type_item", "serverinfo_ssl_certificate_file",
1413 >  "serverinfo_rsa_private_key_file", "serverinfo_ssl_dh_param_file",
1414 >  "serverinfo_ssl_cipher_list", "serverinfo_name", "serverinfo_sid",
1415    "serverinfo_description", "serverinfo_network_name",
1416    "serverinfo_network_desc", "serverinfo_vhost", "serverinfo_vhost6",
1417    "serverinfo_max_clients", "serverinfo_hub", "admin_entry", "admin_items",
1418    "admin_item", "admin_name", "admin_email", "admin_description",
1419    "logging_entry", "logging_items", "logging_item", "logging_use_logging",
1420 <  "logging_timestamp", "logging_file_entry", "$@2", "logging_file_items",
1421 <  "logging_file_item", "logging_file_name", "logging_file_size",
1422 <  "logging_file_type", "$@3", "logging_file_type_items",
1423 <  "logging_file_type_item", "oper_entry", "$@4", "oper_items", "oper_item",
1424 <  "oper_name", "oper_user", "oper_password", "oper_encrypted",
1425 <  "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@5",
1426 <  "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@6",
1427 <  "oper_flags_items", "oper_flags_item", "class_entry", "$@7",
1428 <  "class_items", "class_item", "class_name", "class_ping_time",
1429 <  "class_ping_warning", "class_number_per_ip", "class_connectfreq",
1430 <  "class_max_number", "class_max_global", "class_max_local",
1431 <  "class_max_ident", "class_sendq", "class_cidr_bitlen_ipv4",
1432 <  "class_cidr_bitlen_ipv6", "class_number_per_cidr", "listen_entry", "$@8",
1433 <  "listen_flags", "$@9", "listen_flags_items", "listen_flags_item",
1434 <  "listen_items", "listen_item", "listen_port", "$@10", "port_items",
1435 <  "port_item", "listen_address", "listen_host", "auth_entry", "$@11",
1436 <  "auth_items", "auth_item", "auth_user", "auth_passwd", "auth_class",
1437 <  "auth_encrypted", "auth_flags", "$@12", "auth_flags_items",
1438 <  "auth_flags_item", "auth_spoof", "auth_redir_serv", "auth_redir_port",
1439 <  "resv_entry", "$@13", "resv_items", "resv_item", "resv_creason",
1440 <  "resv_channel", "resv_nick", "service_entry", "service_items",
1441 <  "service_item", "service_name", "shared_entry", "$@14", "shared_items",
1442 <  "shared_item", "shared_name", "shared_user", "shared_type", "$@15",
1443 <  "shared_types", "shared_type_item", "cluster_entry", "$@16",
1444 <  "cluster_items", "cluster_item", "cluster_name", "cluster_type", "$@17",
1445 <  "cluster_types", "cluster_type_item", "connect_entry", "$@18",
1446 <  "connect_items", "connect_item", "connect_name", "connect_host",
1447 <  "connect_vhost", "connect_send_password", "connect_accept_password",
1448 <  "connect_port", "connect_aftype", "connect_flags", "$@19",
1449 <  "connect_flags_items", "connect_flags_item",
1450 <  "connect_rsa_public_key_file", "connect_encrypted", "connect_hub_mask",
1451 <  "connect_leaf_mask", "connect_class", "connect_cipher_preference",
1452 <  "kill_entry", "$@20", "kill_type", "$@21", "kill_type_items",
1453 <  "kill_type_item", "kill_items", "kill_item", "kill_user", "kill_reason",
1454 <  "deny_entry", "$@22", "deny_items", "deny_item", "deny_ip",
1455 <  "deny_reason", "exempt_entry", "exempt_items", "exempt_item",
1456 <  "exempt_ip", "gecos_entry", "$@23", "gecos_flags", "$@24",
1457 <  "gecos_flags_items", "gecos_flags_item", "gecos_items", "gecos_item",
1458 <  "gecos_name", "gecos_reason", "general_entry", "general_items",
1459 <  "general_item", "general_max_watch", "general_gline_min_cidr",
1460 <  "general_gline_min_cidr6", "general_use_whois_actually",
1461 <  "general_reject_hold_time", "general_tkline_expire_notices",
1462 <  "general_kill_chase_time_limit", "general_hide_spoof_ips",
1463 <  "general_ignore_bogus_ts", "general_disable_remote_commands",
1464 <  "general_failed_oper_notice", "general_anti_nick_flood",
1465 <  "general_max_nick_time", "general_max_nick_changes",
1466 <  "general_max_accept", "general_anti_spam_exit_message_time",
1467 <  "general_ts_warn_delta", "general_ts_max_delta",
1468 <  "general_havent_read_conf", "general_kline_with_reason",
1469 <  "general_kline_reason", "general_invisible_on_connect",
1470 <  "general_warn_no_nline", "general_stats_e_disabled",
1471 <  "general_stats_o_oper_only", "general_stats_P_oper_only",
1472 <  "general_stats_k_oper_only", "general_stats_i_oper_only",
1473 <  "general_pace_wait", "general_caller_id_wait",
1474 <  "general_opers_bypass_callerid", "general_pace_wait_simple",
1475 <  "general_short_motd", "general_no_oper_flood",
1476 <  "general_true_no_oper_flood", "general_oper_pass_resv",
1477 <  "general_message_locale", "general_dots_in_ident", "general_max_targets",
1478 <  "general_servlink_path", "general_default_cipher_preference",
1479 <  "general_compression_level", "general_use_egd", "general_egdpool_path",
1480 <  "general_services_name", "general_ping_cookie", "general_disable_auth",
1505 <  "general_throttle_time", "general_oper_umodes", "$@25", "umode_oitems",
1506 <  "umode_oitem", "general_oper_only_umodes", "$@26", "umode_items",
1507 <  "umode_item", "general_min_nonwildcard",
1420 >  "logging_file_entry", "$@1", "logging_file_items", "logging_file_item",
1421 >  "logging_file_name", "logging_file_size", "logging_file_type", "$@2",
1422 >  "logging_file_type_items", "logging_file_type_item", "oper_entry", "$@3",
1423 >  "oper_items", "oper_item", "oper_name", "oper_user", "oper_password",
1424 >  "oper_encrypted", "oper_rsa_public_key_file", "oper_class",
1425 >  "oper_umodes", "$@4", "oper_umodes_items", "oper_umodes_item",
1426 >  "oper_flags", "$@5", "oper_flags_items", "oper_flags_item",
1427 >  "class_entry", "$@6", "class_items", "class_item", "class_name",
1428 >  "class_ping_time", "class_ping_warning", "class_number_per_ip",
1429 >  "class_connectfreq", "class_max_number", "class_max_global",
1430 >  "class_max_local", "class_max_ident", "class_sendq",
1431 >  "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1432 >  "class_number_per_cidr", "listen_entry", "$@7", "listen_flags", "$@8",
1433 >  "listen_flags_items", "listen_flags_item", "listen_items", "listen_item",
1434 >  "listen_port", "$@9", "port_items", "port_item", "listen_address",
1435 >  "listen_host", "auth_entry", "$@10", "auth_items", "auth_item",
1436 >  "auth_user", "auth_passwd", "auth_class", "auth_encrypted", "auth_flags",
1437 >  "$@11", "auth_flags_items", "auth_flags_item", "auth_spoof",
1438 >  "auth_redir_serv", "auth_redir_port", "resv_entry", "$@12", "resv_items",
1439 >  "resv_item", "resv_creason", "resv_channel", "resv_nick",
1440 >  "service_entry", "service_items", "service_item", "service_name",
1441 >  "shared_entry", "$@13", "shared_items", "shared_item", "shared_name",
1442 >  "shared_user", "shared_type", "$@14", "shared_types", "shared_type_item",
1443 >  "cluster_entry", "$@15", "cluster_items", "cluster_item", "cluster_name",
1444 >  "cluster_type", "$@16", "cluster_types", "cluster_type_item",
1445 >  "connect_entry", "$@17", "connect_items", "connect_item", "connect_name",
1446 >  "connect_host", "connect_vhost", "connect_send_password",
1447 >  "connect_accept_password", "connect_port", "connect_aftype",
1448 >  "connect_flags", "$@18", "connect_flags_items", "connect_flags_item",
1449 >  "connect_encrypted", "connect_hub_mask", "connect_leaf_mask",
1450 >  "connect_class", "connect_ssl_cipher_list", "kill_entry", "$@19",
1451 >  "kill_type", "$@20", "kill_type_items", "kill_type_item", "kill_items",
1452 >  "kill_item", "kill_user", "kill_reason", "deny_entry", "$@21",
1453 >  "deny_items", "deny_item", "deny_ip", "deny_reason", "exempt_entry",
1454 >  "exempt_items", "exempt_item", "exempt_ip", "gecos_entry", "$@22",
1455 >  "gecos_flags", "$@23", "gecos_flags_items", "gecos_flags_item",
1456 >  "gecos_items", "gecos_item", "gecos_name", "gecos_reason",
1457 >  "general_entry", "general_items", "general_item", "general_max_watch",
1458 >  "general_gline_min_cidr", "general_gline_min_cidr6",
1459 >  "general_use_whois_actually", "general_reject_hold_time",
1460 >  "general_tkline_expire_notices", "general_kill_chase_time_limit",
1461 >  "general_hide_spoof_ips", "general_ignore_bogus_ts",
1462 >  "general_disable_remote_commands", "general_failed_oper_notice",
1463 >  "general_anti_nick_flood", "general_max_nick_time",
1464 >  "general_max_nick_changes", "general_max_accept",
1465 >  "general_anti_spam_exit_message_time", "general_ts_warn_delta",
1466 >  "general_ts_max_delta", "general_havent_read_conf",
1467 >  "general_kline_with_reason", "general_kline_reason",
1468 >  "general_invisible_on_connect", "general_warn_no_nline",
1469 >  "general_stats_e_disabled", "general_stats_o_oper_only",
1470 >  "general_stats_P_oper_only", "general_stats_k_oper_only",
1471 >  "general_stats_i_oper_only", "general_pace_wait",
1472 >  "general_caller_id_wait", "general_opers_bypass_callerid",
1473 >  "general_pace_wait_simple", "general_short_motd",
1474 >  "general_no_oper_flood", "general_true_no_oper_flood",
1475 >  "general_oper_pass_resv", "general_message_locale",
1476 >  "general_dots_in_ident", "general_max_targets", "general_use_egd",
1477 >  "general_egdpool_path", "general_services_name", "general_ping_cookie",
1478 >  "general_disable_auth", "general_throttle_time", "general_oper_umodes",
1479 >  "$@24", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1480 >  "$@25", "umode_items", "umode_item", "general_min_nonwildcard",
1481    "general_min_nonwildcard_simple", "general_default_floodcount",
1482 <  "general_client_flood", "gline_entry", "$@27", "gline_items",
1483 <  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@28",
1482 >  "general_client_flood", "gline_entry", "$@26", "gline_items",
1483 >  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@27",
1484    "gline_logging_types", "gline_logging_type_item", "gline_user",
1485 <  "gline_server", "gline_action", "$@29", "gdeny_types", "gdeny_type_item",
1485 >  "gline_server", "gline_action", "$@28", "gdeny_types", "gdeny_type_item",
1486    "channel_entry", "channel_items", "channel_item",
1487    "channel_disable_fake_channels", "channel_restrict_channels",
1488    "channel_disable_local_channels", "channel_use_except",
1489    "channel_use_invex", "channel_use_knock", "channel_knock_delay",
1490    "channel_knock_delay_channel", "channel_max_chans_per_user",
1491 <  "channel_quiet_on_ban", "channel_max_bans",
1491 >  "channel_max_chans_per_oper", "channel_quiet_on_ban", "channel_max_bans",
1492    "channel_default_split_user_count", "channel_default_split_server_count",
1493    "channel_no_create_on_split", "channel_no_join_on_split",
1494 <  "channel_burst_topicwho", "channel_jflood_count", "channel_jflood_time",
1495 <  "serverhide_entry", "serverhide_items", "serverhide_item",
1496 <  "serverhide_flatten_links", "serverhide_hide_servers",
1497 <  "serverhide_hidden_name", "serverhide_links_delay", "serverhide_hidden",
1498 <  "serverhide_disable_hidden", "serverhide_hide_server_ips", 0
1494 >  "channel_jflood_count", "channel_jflood_time", "serverhide_entry",
1495 >  "serverhide_items", "serverhide_item", "serverhide_flatten_links",
1496 >  "serverhide_hide_servers", "serverhide_hidden_name",
1497 >  "serverhide_links_delay", "serverhide_hidden",
1498 >  "serverhide_disable_hidden", "serverhide_hide_server_ips", YY_NULL
1499   };
1500   #endif
1501  
# Line 1555 | Line 1528 | static const yytype_uint16 yytoknum[] =
1528       465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
1529       475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
1530       485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
1531 <     495,   496,   497,   498,   499,   500,    59,   125,   123,    61,
1559 <      44
1531 >     495,    59,   125,   123,    61,    44
1532   };
1533   # endif
1534  
1535   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1536   static const yytype_uint16 yyr1[] =
1537   {
1538 <       0,   251,   252,   252,   253,   253,   253,   253,   253,   253,
1539 <     253,   253,   253,   253,   253,   253,   253,   253,   253,   253,
1540 <     253,   253,   253,   253,   253,   253,   253,   254,   254,   255,
1541 <     255,   255,   255,   255,   255,   256,   256,   257,   257,   257,
1542 <     257,   258,   259,   259,   260,   260,   260,   261,   262,   263,
1543 <     264,   264,   265,   265,   265,   265,   265,   265,   265,   265,
1544 <     265,   265,   265,   265,   265,   267,   266,   268,   268,   269,
1538 >       0,   246,   247,   247,   248,   248,   248,   248,   248,   248,
1539 >     248,   248,   248,   248,   248,   248,   248,   248,   248,   248,
1540 >     248,   248,   248,   248,   248,   248,   248,   249,   249,   250,
1541 >     250,   250,   250,   250,   250,   251,   251,   252,   252,   252,
1542 >     252,   253,   254,   254,   255,   255,   255,   256,   257,   258,
1543 >     259,   259,   260,   260,   260,   260,   260,   260,   260,   260,
1544 >     260,   260,   260,   260,   260,   260,   260,   260,   261,   262,
1545 >     263,   263,   264,   264,   265,   265,   266,   266,   267,   268,
1546       269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
1547 <     279,   280,   281,   282,   282,   283,   283,   283,   283,   284,
1548 <     285,   286,   287,   288,   288,   289,   289,   289,   289,   290,
1549 <     291,   293,   292,   294,   294,   295,   295,   295,   295,   296,
1550 <     297,   297,   299,   298,   300,   300,   301,   301,   301,   301,
1551 <     301,   301,   301,   303,   302,   304,   304,   305,   305,   305,
1552 <     305,   305,   305,   305,   305,   305,   306,   307,   308,   309,
1553 <     310,   311,   313,   312,   314,   314,   315,   315,   315,   315,
1554 <     315,   315,   315,   315,   315,   315,   315,   315,   315,   315,
1555 <     315,   315,   315,   315,   315,   317,   316,   318,   318,   319,
1556 <     319,   319,   319,   319,   319,   319,   319,   319,   319,   319,
1557 <     319,   319,   319,   319,   319,   319,   319,   321,   320,   322,
1558 <     322,   323,   323,   323,   323,   323,   323,   323,   323,   323,
1559 <     323,   323,   323,   323,   323,   324,   325,   326,   327,   328,
1560 <     329,   330,   331,   332,   333,   334,   335,   336,   338,   337,
1561 <     340,   339,   341,   341,   342,   342,   342,   343,   343,   344,
1562 <     344,   344,   344,   344,   346,   345,   347,   347,   348,   348,
1563 <     349,   350,   352,   351,   353,   353,   354,   354,   354,   354,
1564 <     354,   354,   354,   354,   354,   355,   356,   357,   358,   360,
1565 <     359,   361,   361,   362,   362,   362,   362,   362,   362,   362,
1566 <     362,   362,   363,   364,   365,   367,   366,   368,   368,   369,
1567 <     369,   369,   369,   370,   371,   372,   373,   374,   374,   375,
1568 <     375,   376,   378,   377,   379,   379,   380,   380,   380,   380,
1569 <     381,   382,   384,   383,   385,   385,   386,   386,   386,   386,
1570 <     386,   386,   386,   386,   386,   386,   386,   388,   387,   389,
1571 <     389,   390,   390,   390,   391,   393,   392,   394,   394,   395,
1572 <     395,   395,   395,   395,   395,   395,   395,   395,   395,   395,
1573 <     397,   396,   398,   398,   399,   399,   399,   399,   399,   399,
1574 <     399,   399,   399,   399,   399,   399,   399,   399,   399,   400,
1575 <     401,   402,   403,   404,   405,   406,   406,   408,   407,   409,
1576 <     409,   410,   410,   410,   410,   410,   411,   412,   413,   414,
1577 <     415,   416,   418,   417,   420,   419,   421,   421,   422,   423,
1578 <     423,   424,   424,   424,   424,   425,   426,   428,   427,   429,
1579 <     429,   430,   430,   430,   431,   432,   433,   434,   434,   435,
1580 <     435,   436,   438,   437,   440,   439,   441,   441,   442,   443,
1581 <     443,   444,   444,   444,   444,   445,   446,   447,   448,   448,
1582 <     449,   449,   449,   449,   449,   449,   449,   449,   449,   449,
1583 <     449,   449,   449,   449,   449,   449,   449,   449,   449,   449,
1584 <     449,   449,   449,   449,   449,   449,   449,   449,   449,   449,
1585 <     449,   449,   449,   449,   449,   449,   449,   449,   449,   449,
1586 <     449,   449,   449,   449,   449,   449,   449,   449,   449,   449,
1587 <     449,   449,   449,   449,   449,   450,   451,   452,   453,   454,
1588 <     455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
1589 <     465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
1590 <     475,   476,   476,   477,   477,   478,   479,   480,   481,   482,
1591 <     483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
1592 <     493,   494,   495,   496,   497,   499,   498,   500,   500,   501,
1593 <     501,   501,   501,   501,   501,   501,   501,   501,   501,   501,
1594 <     501,   501,   501,   501,   501,   501,   501,   501,   503,   502,
1595 <     504,   504,   505,   505,   505,   505,   505,   505,   505,   505,
1596 <     505,   505,   505,   505,   505,   505,   505,   505,   505,   505,
1597 <     505,   506,   507,   508,   509,   511,   510,   512,   512,   513,
1598 <     513,   513,   513,   513,   513,   513,   514,   515,   517,   516,
1599 <     518,   518,   519,   519,   520,   521,   523,   522,   524,   524,
1600 <     525,   525,   526,   527,   527,   528,   528,   528,   528,   528,
1601 <     528,   528,   528,   528,   528,   528,   528,   528,   528,   528,
1602 <     528,   528,   528,   528,   529,   530,   531,   532,   533,   534,
1603 <     535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
1604 <     545,   546,   547,   548,   548,   549,   549,   549,   549,   549,
1632 <     549,   549,   549,   550,   551,   552,   553,   554,   555,   556
1547 >     279,   280,   281,   281,   282,   282,   282,   282,   283,   284,
1548 >     285,   286,   287,   287,   288,   288,   288,   289,   291,   290,
1549 >     292,   292,   293,   293,   293,   293,   294,   295,   295,   297,
1550 >     296,   298,   298,   299,   299,   299,   299,   299,   299,   299,
1551 >     301,   300,   302,   302,   303,   303,   303,   303,   303,   303,
1552 >     303,   303,   303,   304,   305,   306,   307,   308,   309,   311,
1553 >     310,   312,   312,   313,   313,   313,   313,   313,   313,   313,
1554 >     313,   313,   313,   313,   313,   313,   313,   313,   313,   313,
1555 >     313,   313,   313,   315,   314,   316,   316,   317,   317,   317,
1556 >     317,   317,   317,   317,   317,   317,   317,   317,   317,   317,
1557 >     317,   317,   317,   317,   317,   319,   318,   320,   320,   321,
1558 >     321,   321,   321,   321,   321,   321,   321,   321,   321,   321,
1559 >     321,   321,   321,   322,   323,   324,   325,   326,   327,   328,
1560 >     329,   330,   331,   332,   333,   334,   336,   335,   338,   337,
1561 >     339,   339,   340,   340,   340,   341,   341,   342,   342,   342,
1562 >     342,   342,   344,   343,   345,   345,   346,   346,   347,   348,
1563 >     350,   349,   351,   351,   352,   352,   352,   352,   352,   352,
1564 >     352,   352,   352,   353,   354,   355,   356,   358,   357,   359,
1565 >     359,   360,   360,   360,   360,   360,   360,   360,   360,   360,
1566 >     361,   362,   363,   365,   364,   366,   366,   367,   367,   367,
1567 >     367,   368,   369,   370,   371,   372,   372,   373,   373,   374,
1568 >     376,   375,   377,   377,   378,   378,   378,   378,   379,   380,
1569 >     382,   381,   383,   383,   384,   384,   384,   384,   384,   384,
1570 >     384,   384,   384,   384,   386,   385,   387,   387,   388,   388,
1571 >     388,   389,   391,   390,   392,   392,   393,   393,   393,   393,
1572 >     393,   393,   393,   393,   393,   393,   395,   394,   396,   396,
1573 >     397,   397,   397,   397,   397,   397,   397,   397,   397,   397,
1574 >     397,   397,   397,   397,   398,   399,   400,   401,   402,   403,
1575 >     404,   404,   406,   405,   407,   407,   408,   408,   408,   408,
1576 >     409,   410,   411,   412,   413,   415,   414,   417,   416,   418,
1577 >     418,   419,   420,   420,   421,   421,   421,   421,   422,   423,
1578 >     425,   424,   426,   426,   427,   427,   427,   428,   429,   430,
1579 >     431,   431,   432,   432,   433,   435,   434,   437,   436,   438,
1580 >     438,   439,   440,   440,   441,   441,   441,   441,   442,   443,
1581 >     444,   445,   445,   446,   446,   446,   446,   446,   446,   446,
1582 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1583 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1584 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1585 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1586 >     446,   446,   446,   446,   446,   447,   448,   449,   450,   451,
1587 >     452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
1588 >     462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
1589 >     472,   473,   473,   474,   474,   475,   476,   477,   478,   479,
1590 >     480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
1591 >     490,   491,   493,   492,   494,   494,   495,   495,   495,   495,
1592 >     495,   495,   495,   495,   495,   495,   495,   495,   495,   495,
1593 >     495,   495,   495,   495,   495,   495,   497,   496,   498,   498,
1594 >     499,   499,   499,   499,   499,   499,   499,   499,   499,   499,
1595 >     499,   499,   499,   499,   499,   499,   499,   499,   499,   499,
1596 >     500,   501,   502,   503,   505,   504,   506,   506,   507,   507,
1597 >     507,   507,   507,   507,   507,   508,   509,   511,   510,   512,
1598 >     512,   513,   513,   514,   515,   517,   516,   518,   518,   519,
1599 >     519,   520,   521,   521,   522,   522,   522,   522,   522,   522,
1600 >     522,   522,   522,   522,   522,   522,   522,   522,   522,   522,
1601 >     522,   522,   522,   523,   524,   525,   526,   527,   528,   529,
1602 >     530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
1603 >     540,   541,   542,   542,   543,   543,   543,   543,   543,   543,
1604 >     543,   543,   544,   545,   546,   547,   548,   549,   550
1605   };
1606  
1607   /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 1641 | Line 1613 | static const yytype_uint8 yyr2[] =
1613         3,     3,     3,     3,     3,     0,     1,     2,     3,     3,
1614         3,     5,     2,     1,     1,     1,     2,     4,     4,     5,
1615         2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1616 <       1,     1,     1,     1,     2,     0,     5,     3,     1,     1,
1617 <       1,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1618 <       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1619 <       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1620 <       4,     0,     6,     2,     1,     1,     1,     1,     2,     4,
1621 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1622 <       1,     1,     1,     0,     6,     2,     1,     1,     1,     1,
1623 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1624 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1625 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1654 <       1,     1,     1,     1,     1,     0,     5,     3,     1,     1,
1616 >       1,     1,     1,     1,     1,     1,     1,     2,     4,     4,
1617 >       3,     1,     1,     1,     3,     1,     1,     1,     4,     4,
1618 >       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1619 >       4,     5,     2,     1,     1,     1,     1,     2,     4,     4,
1620 >       4,     5,     2,     1,     1,     1,     2,     4,     0,     6,
1621 >       2,     1,     1,     1,     1,     2,     4,     4,     4,     0,
1622 >       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1623 >       0,     6,     2,     1,     1,     1,     1,     1,     1,     1,
1624 >       1,     1,     2,     4,     4,     4,     4,     4,     4,     0,
1625 >       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1626         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1627 <       1,     1,     1,     1,     1,     1,     1,     0,     6,     2,
1627 >       1,     1,     1,     0,     5,     3,     1,     1,     1,     1,
1628         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1629 <       1,     1,     1,     1,     2,     4,     4,     4,     4,     4,
1659 <       4,     4,     4,     4,     4,     4,     4,     4,     0,     6,
1660 <       0,     5,     3,     1,     1,     1,     1,     2,     1,     1,
1661 <       1,     1,     1,     2,     0,     5,     3,     1,     1,     3,
1662 <       4,     4,     0,     6,     2,     1,     1,     1,     1,     1,
1663 <       1,     1,     1,     1,     2,     4,     4,     4,     4,     0,
1664 <       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1665 <       1,     1,     4,     4,     4,     0,     6,     2,     1,     1,
1666 <       1,     1,     2,     4,     4,     4,     5,     2,     1,     1,
1667 <       1,     4,     0,     6,     2,     1,     1,     1,     1,     2,
1668 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1669 <       1,     1,     1,     1,     1,     1,     1,     0,     6,     2,
1670 <       1,     1,     1,     2,     4,     0,     5,     3,     1,     1,
1629 >       1,     1,     1,     1,     1,     0,     6,     2,     1,     1,
1630         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1631 +       1,     1,     2,     4,     4,     4,     4,     4,     4,     4,
1632 +       4,     4,     4,     4,     4,     4,     0,     6,     0,     5,
1633 +       3,     1,     1,     1,     1,     2,     1,     1,     1,     1,
1634 +       1,     2,     0,     5,     3,     1,     1,     3,     4,     4,
1635         0,     6,     2,     1,     1,     1,     1,     1,     1,     1,
1636 <       1,     1,     1,     1,     1,     1,     1,     1,     2,     4,
1674 <       4,     4,     4,     4,     4,     4,     4,     0,     5,     3,
1675 <       1,     1,     1,     1,     1,     1,     4,     4,     4,     4,
1676 <       4,     4,     0,     6,     0,     5,     3,     1,     1,     2,
1677 <       1,     1,     1,     1,     1,     4,     4,     0,     6,     2,
1678 <       1,     1,     1,     1,     4,     4,     5,     2,     1,     1,
1679 <       1,     4,     0,     6,     0,     5,     3,     1,     1,     2,
1680 <       1,     1,     1,     1,     1,     4,     4,     5,     2,     1,
1636 >       1,     1,     2,     4,     4,     4,     4,     0,     5,     3,
1637         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1638 +       4,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1639 +       2,     4,     4,     4,     5,     2,     1,     1,     1,     4,
1640 +       0,     6,     2,     1,     1,     1,     1,     2,     4,     4,
1641 +       0,     5,     3,     1,     1,     1,     1,     1,     1,     1,
1642 +       1,     1,     1,     1,     0,     6,     2,     1,     1,     1,
1643 +       2,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1644 +       1,     1,     1,     1,     1,     1,     0,     6,     2,     1,
1645 +       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1646 +       1,     1,     1,     2,     4,     4,     4,     4,     4,     4,
1647 +       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1648 +       4,     4,     4,     4,     4,     0,     6,     0,     5,     3,
1649 +       1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1650 +       0,     6,     2,     1,     1,     1,     1,     4,     4,     5,
1651 +       2,     1,     1,     1,     4,     0,     6,     0,     5,     3,
1652 +       1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1653 +       5,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1654         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1655         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1656         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 1688 | Line 1660 | static const yytype_uint8 yyr2[] =
1660         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1661         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1662         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1663 <       4,     4,     4,     4,     4,     0,     5,     3,     1,     1,
1663 >       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1664 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1665 >       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1666         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1693       1,     1,     1,     1,     1,     1,     1,     1,     0,     5,
1694       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1667         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1668 <       1,     4,     4,     4,     4,     0,     6,     2,     1,     1,
1669 <       1,     1,     1,     1,     1,     1,     4,     4,     0,     5,
1670 <       3,     1,     1,     1,     4,     4,     0,     5,     3,     1,
1671 <       1,     1,     5,     2,     1,     1,     1,     1,     1,     1,
1668 >       4,     4,     4,     4,     0,     6,     2,     1,     1,     1,
1669 >       1,     1,     1,     1,     1,     4,     4,     0,     5,     3,
1670 >       1,     1,     1,     4,     4,     0,     5,     3,     1,     1,
1671 >       1,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1672         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1673 <       1,     1,     1,     1,     4,     4,     4,     4,     4,     4,
1673 >       1,     1,     1,     4,     4,     4,     4,     4,     4,     4,
1674         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1675 <       4,     4,     5,     2,     1,     1,     1,     1,     1,     1,
1676 <       1,     1,     1,     4,     4,     4,     4,     4,     4,     4
1675 >       4,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1676 >       1,     1,     4,     4,     4,     4,     4,     4,     4
1677   };
1678  
1679   /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
# Line 1709 | Line 1681 | static const yytype_uint8 yyr2[] =
1681     means the default is an error.  */
1682   static const yytype_uint16 yydefact[] =
1683   {
1684 <       2,     0,     1,     0,     0,     0,   187,   340,   397,     0,
1685 <     412,     0,   585,   242,   382,   218,     0,     0,   123,   275,
1686 <       0,     0,   292,   317,     0,     3,    24,    11,     4,     5,
1684 >       2,     0,     1,     0,     0,     0,   195,   346,   400,     0,
1685 >     415,     0,   584,   250,   385,   226,     0,     0,   130,   283,
1686 >       0,     0,   300,   324,     0,     3,    24,    11,     4,     5,
1687         6,     8,     9,    10,    13,    14,    15,    16,    17,    18,
1688        19,    20,    23,    21,    22,     7,    12,    25,    26,     0,
1689         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1690         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1691 <       0,     0,     0,     0,     0,    84,    85,    87,    86,   633,
1691 >       0,     0,     0,     0,     0,    93,    94,    96,    95,   632,
1692         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1693 <       0,     0,     0,     0,     0,     0,     0,     0,     0,   614,
1694 <     632,   627,   615,   616,   617,   618,   620,   621,   622,   623,
1695 <     619,   624,   625,   626,   628,   629,   630,   631,     0,     0,
1696 <       0,   410,     0,     0,   408,   409,     0,   484,     0,     0,
1693 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   613,
1694 >     631,   627,   614,   615,   616,   617,   619,   620,   621,   622,
1695 >     623,   618,   624,   625,   626,   628,   629,   630,     0,     0,
1696 >       0,   413,     0,     0,   411,   412,     0,   484,     0,     0,
1697         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1698         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1699 <       0,     0,     0,     0,     0,     0,     0,     0,   558,     0,
1728 <     535,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1699 >       0,     0,     0,     0,     0,     0,   556,     0,   532,     0,
1700         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1730       0,     0,     0,   429,   482,   477,   478,   479,   480,   476,
1731     440,   430,   431,   468,   432,   433,   434,   435,   436,   437,
1732     438,   439,   473,   441,   442,   443,   444,   481,   446,   451,
1733     447,   449,   448,   462,   463,   450,   452,   453,   454,   455,
1734     456,   445,   458,   467,   469,   470,   459,   460,   483,   474,
1735     475,   472,   461,   457,   465,   466,   464,   471,     0,     0,
1736       0,     0,     0,     0,     0,     0,    94,    95,    96,    97,
1737       0,     0,     0,     0,     0,    43,    44,    45,     0,     0,
1738     662,     0,     0,     0,     0,     0,     0,     0,     0,   654,
1739     655,   656,   660,   657,   659,   658,   661,     0,     0,     0,
1740       0,     0,     0,     0,     0,    65,     0,     0,     0,     0,
1741       0,    51,    63,    62,    59,    52,    61,    55,    56,    57,
1742      53,    60,    58,    54,     0,     0,   290,     0,     0,   288,
1743     289,    88,     0,     0,     0,     0,    83,     0,     0,     0,
1701         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1702 <       0,     0,     0,     0,     0,     0,   613,     0,     0,     0,
1702 >     432,   482,   477,   478,   479,   480,   476,   443,   433,   434,
1703 >     470,   435,   436,   437,   438,   439,   440,   441,   442,   473,
1704 >     444,   445,   446,   447,   481,   449,   454,   450,   452,   451,
1705 >     465,   466,   453,   455,   456,   457,   458,   459,   448,   461,
1706 >     462,   463,   483,   474,   475,   472,   464,   460,   468,   469,
1707 >     467,   471,     0,     0,     0,     0,     0,     0,     0,   103,
1708 >     104,   105,     0,     0,     0,     0,     0,    43,    44,    45,
1709 >       0,     0,   661,     0,     0,     0,     0,     0,     0,     0,
1710 >       0,   653,   654,   655,   659,   656,   658,   657,   660,     0,
1711         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1712 <       0,     0,   190,   191,   194,   195,   197,   198,   199,   200,
1713 <     201,   202,   203,   192,   193,   196,     0,     0,     0,     0,
1714 <       0,     0,   367,     0,     0,     0,     0,     0,     0,     0,
1715 <       0,     0,   343,   344,   345,   346,   347,   348,   350,   349,
1751 <     351,   356,   355,   352,   353,   354,   357,   403,     0,     0,
1752 <       0,   400,   401,   402,     0,     0,   407,   424,     0,     0,
1753 <     414,   423,     0,   420,   421,   422,     0,     0,     0,     0,
1712 >       0,     0,     0,     0,     0,     0,    51,    64,    65,    63,
1713 >      60,    59,    66,    52,    62,    55,    56,    57,    53,    61,
1714 >      58,    54,     0,     0,   298,     0,     0,   296,   297,    97,
1715 >       0,     0,     0,     0,    92,     0,     0,     0,     0,     0,
1716         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1717 +       0,     0,     0,     0,   612,     0,     0,     0,     0,     0,
1718         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1719 +     198,   199,   202,   203,   205,   206,   207,   208,   209,   210,
1720 +     211,   200,   201,   204,     0,     0,     0,     0,     0,   372,
1721 +       0,     0,     0,     0,     0,     0,     0,     0,     0,   349,
1722 +     350,   351,   352,   353,   354,   356,   355,   358,   362,   359,
1723 +     360,   361,   357,   406,     0,     0,     0,   403,   404,   405,
1724 +       0,     0,   410,   427,     0,     0,   417,   426,     0,   423,
1725 +     424,   425,     0,     0,     0,     0,     0,     0,     0,     0,
1726         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1727         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1728         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1759       0,   428,   595,   606,     0,     0,   598,     0,     0,     0,
1760     588,   589,   590,   591,   592,   593,   594,     0,     0,     0,
1761     259,     0,     0,     0,     0,     0,     0,   245,   246,   247,
1762     248,   253,   249,   250,   251,   252,   394,     0,   384,     0,
1763     393,     0,   390,   391,   392,     0,   220,     0,     0,     0,
1764     230,     0,   228,   229,   231,   232,    98,     0,     0,     0,
1765      93,     0,    46,     0,     0,     0,    42,     0,     0,     0,
1766     165,     0,     0,     0,   142,     0,     0,   126,   127,   128,
1767     129,   132,   133,   131,   130,   134,     0,     0,     0,     0,
1768       0,   278,   279,   280,   281,     0,     0,     0,     0,     0,
1769       0,     0,     0,   653,    64,     0,     0,     0,     0,     0,
1770       0,     0,     0,     0,     0,     0,     0,     0,    50,     0,
1771       0,   302,     0,     0,   295,   296,   297,   298,     0,     0,
1772     325,     0,   320,   321,   322,     0,     0,   287,     0,     0,
1773       0,    82,     0,     0,     0,     0,     0,    27,     0,     0,
1729         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1730 <       0,   612,   204,     0,     0,     0,     0,     0,     0,     0,
1731 <       0,     0,     0,     0,     0,     0,     0,   189,   358,     0,
1730 >       0,     0,     0,     0,   431,   594,   605,     0,     0,   597,
1731 >       0,     0,     0,   587,   588,   589,   590,   591,   592,   593,
1732 >       0,     0,     0,   267,     0,     0,     0,     0,     0,     0,
1733 >     253,   254,   255,   256,   261,   257,   258,   259,   260,   397,
1734 >       0,   387,     0,   396,     0,   393,   394,   395,     0,   228,
1735 >       0,     0,     0,   238,     0,   236,   237,   239,   240,   106,
1736 >       0,     0,   102,     0,    46,     0,     0,     0,    42,     0,
1737 >       0,     0,   173,     0,     0,     0,   149,     0,     0,   133,
1738 >     134,   135,   136,   139,   140,   138,   137,   141,     0,     0,
1739 >       0,     0,     0,   286,   287,   288,   289,     0,     0,     0,
1740 >       0,     0,     0,     0,     0,   652,    67,     0,     0,     0,
1741         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1742 <       0,     0,     0,     0,   342,     0,     0,     0,   399,     0,
1743 <     406,     0,     0,     0,     0,   419,     0,     0,     0,     0,
1742 >       0,     0,     0,    50,     0,     0,   310,     0,     0,   303,
1743 >     304,   305,   306,     0,     0,   332,     0,   327,   328,   329,
1744 >       0,     0,   295,     0,     0,     0,    91,     0,     0,     0,
1745 >       0,    27,     0,     0,     0,     0,     0,     0,     0,     0,
1746 >       0,     0,     0,     0,     0,     0,   611,   212,     0,     0,
1747         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1748 +       0,     0,   197,   363,     0,     0,     0,     0,     0,     0,
1749 +       0,     0,     0,     0,     0,     0,     0,     0,   348,     0,
1750 +       0,     0,   402,     0,   409,     0,     0,     0,     0,   422,
1751         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1752         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1753         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1784       0,     0,     0,     0,     0,    35,     0,     0,     0,     0,
1785       0,     0,     0,   427,     0,     0,     0,     0,     0,     0,
1786       0,   587,   254,     0,     0,     0,     0,     0,     0,     0,
1787       0,     0,   244,     0,     0,     0,     0,   389,   233,     0,
1788       0,     0,     0,     0,   227,     0,     0,    92,     0,     0,
1789       0,    41,   135,     0,     0,     0,     0,     0,     0,     0,
1790       0,     0,   125,   282,     0,     0,     0,     0,   277,     0,
1791       0,     0,     0,     0,     0,     0,   652,     0,     0,     0,
1792       0,     0,     0,     0,     0,     0,     0,     0,     0,    49,
1793     299,     0,     0,     0,     0,   294,   323,     0,     0,     0,
1794     319,     0,   286,    91,    90,    89,   649,   646,   645,   634,
1795     636,    27,    27,    27,    27,    27,    29,    28,   640,   641,
1796     644,   642,   647,   648,   650,   651,   643,   635,   637,   638,
1797     639,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1798       0,     0,     0,     0,   188,     0,     0,     0,     0,     0,
1754         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1755 <     341,     0,     0,   398,   411,     0,     0,     0,   413,   496,
1756 <     500,   516,   528,   527,   583,   533,   494,   524,   530,   495,
1757 <     486,   487,   503,   492,   493,   506,   491,   505,   504,   499,
1758 <     498,   497,   525,   485,   523,   581,   582,   520,   517,   562,
1759 <     578,   579,   563,   564,   565,   566,   573,   567,   576,   580,
1760 <     569,   574,   570,   575,   568,   572,   571,   577,     0,   561,
1761 <     522,   539,   555,   556,   540,   541,   542,   543,   550,   544,
1762 <     553,   557,   546,   551,   547,   552,   545,   549,   548,   554,
1763 <       0,   538,   515,   518,   532,   489,   526,   490,   519,   508,
1764 <     513,   514,   511,   512,   509,   510,   502,   501,    35,    35,
1765 <      35,    37,    36,   584,   531,   534,   521,   529,   488,   507,
1766 <       0,     0,     0,     0,     0,     0,   586,     0,     0,     0,
1767 <       0,     0,     0,     0,     0,   243,     0,     0,     0,   383,
1768 <       0,     0,     0,   238,   234,   237,   219,   100,    99,     0,
1769 <       0,   112,     0,     0,   104,   105,   107,   106,    47,    48,
1770 <       0,     0,     0,     0,     0,     0,     0,     0,   124,     0,
1771 <       0,     0,   276,   668,   663,   667,   665,   669,   664,   666,
1772 <      75,    81,    73,    77,    76,    72,    71,    69,    70,     0,
1773 <      68,    74,    80,    78,    79,     0,     0,     0,   293,     0,
1774 <       0,   318,   291,    30,    31,    32,    33,    34,   215,   216,
1775 <     209,   211,   213,   212,   210,   205,   217,   208,   206,   207,
1776 <     214,   363,   365,   366,   381,   380,   377,   373,   374,   371,
1777 <     372,   375,     0,   370,   360,   378,   379,   359,   364,   376,
1778 <     362,   361,   404,   405,   425,   426,   418,     0,   417,   559,
1779 <       0,   536,     0,    38,    39,    40,   611,   610,     0,   609,
1780 <     597,   596,   603,   602,     0,   601,   605,   604,   257,   258,
1781 <     267,   264,   269,   266,   265,   271,   268,   270,   263,     0,
1782 <     262,   256,   274,   273,   272,   255,   396,   388,     0,   387,
1783 <     395,   225,   226,   224,     0,   223,   241,   240,     0,     0,
1784 <       0,   108,     0,     0,     0,     0,   103,   141,   139,   178,
1785 <     175,   174,   169,   179,   184,   171,   186,   180,   183,   177,
1786 <     170,   185,   181,   182,   176,   172,   173,     0,   168,   136,
1787 <     138,   140,   146,   162,   163,   147,   148,   149,   150,   157,
1788 <     151,   160,   164,   153,   158,   154,   159,   152,   156,   155,
1789 <     161,     0,   145,   137,   284,   285,   283,    66,     0,   300,
1790 <     306,   312,   316,   315,   314,   311,   307,   310,   313,   308,
1791 <     309,     0,   305,   301,   324,   329,   335,   339,   338,   337,
1792 <     334,   330,   333,   336,   331,   332,     0,   328,   368,     0,
1793 <     415,     0,   560,   537,   607,     0,   599,     0,   260,     0,
1794 <     385,     0,   221,     0,   239,   236,   235,     0,     0,     0,
1795 <       0,   102,   166,     0,   143,     0,    67,   303,     0,   326,
1796 <       0,   369,   416,   608,   600,   261,   386,   222,   109,   118,
1797 <     121,   120,   117,   122,   119,   116,     0,   115,   111,   110,
1798 <     167,   144,   304,   327,   113,     0,   114
1755 >       0,     0,     0,     0,     0,     0,    35,     0,     0,     0,
1756 >       0,     0,     0,     0,   430,     0,     0,     0,     0,     0,
1757 >       0,     0,   586,   262,     0,     0,     0,     0,     0,     0,
1758 >       0,     0,     0,   252,     0,     0,     0,     0,   392,   241,
1759 >       0,     0,     0,     0,     0,   235,     0,   101,     0,     0,
1760 >       0,    41,   142,     0,     0,     0,     0,     0,     0,     0,
1761 >       0,     0,   132,   290,     0,     0,     0,     0,   285,     0,
1762 >       0,     0,     0,     0,     0,     0,   651,     0,     0,     0,
1763 >       0,     0,     0,     0,     0,    72,    73,     0,    71,    76,
1764 >      77,     0,    75,     0,     0,     0,     0,     0,    49,   307,
1765 >       0,     0,     0,     0,   302,   330,     0,     0,     0,   326,
1766 >       0,   294,   100,    99,    98,   646,   645,   633,   635,    27,
1767 >      27,    27,    27,    27,    29,    28,   639,   640,   644,   642,
1768 >     641,   647,   648,   649,   650,   643,   634,   636,   637,   638,
1769 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1770 >       0,     0,     0,   196,     0,     0,     0,     0,     0,     0,
1771 >       0,     0,     0,     0,     0,     0,     0,     0,   347,     0,
1772 >       0,   401,   414,     0,     0,     0,   416,   496,   500,   516,
1773 >     582,   530,   494,   524,   527,   495,   486,   487,   503,   492,
1774 >     493,   506,   491,   505,   504,   499,   498,   497,   525,   485,
1775 >     523,   580,   581,   520,   517,   567,   560,   577,   578,   561,
1776 >     562,   563,   564,   572,   565,   575,   579,   568,   573,   569,
1777 >     574,   566,   571,   570,   576,     0,   559,   522,   542,   536,
1778 >     553,   554,   537,   538,   539,   540,   548,   541,   551,   555,
1779 >     544,   549,   545,   550,   543,   547,   546,   552,     0,   535,
1780 >     515,   518,   529,   489,   490,   519,   508,   513,   514,   511,
1781 >     512,   509,   510,   502,   501,    35,    35,    35,    37,    36,
1782 >     583,   528,   531,   521,   526,   488,   507,     0,     0,     0,
1783 >       0,     0,     0,   585,     0,     0,     0,     0,     0,     0,
1784 >       0,     0,   251,     0,     0,     0,   386,     0,     0,     0,
1785 >     246,   242,   245,   227,   107,     0,     0,   119,     0,     0,
1786 >     111,   112,   114,   113,    47,    48,     0,     0,     0,     0,
1787 >       0,     0,     0,     0,   131,     0,     0,     0,   284,   667,
1788 >     662,   666,   664,   668,   663,   665,    84,    90,    82,    86,
1789 >      85,    79,    78,    80,    68,     0,    69,     0,    83,    81,
1790 >      89,    87,    88,     0,     0,     0,   301,     0,     0,   325,
1791 >     299,    30,    31,    32,    33,    34,   223,   224,   217,   219,
1792 >     221,   220,   218,   213,   225,   216,   214,   215,   222,   368,
1793 >     370,   371,   383,   380,   376,   377,   379,   378,     0,   375,
1794 >     365,   381,   382,   364,   369,   367,   384,   366,   407,   408,
1795 >     428,   429,   421,     0,   420,   557,     0,   533,     0,    38,
1796 >      39,    40,   610,   609,     0,   608,   596,   595,   602,   601,
1797 >       0,   600,   604,   603,   265,   266,   275,   272,   277,   274,
1798 >     273,   279,   276,   278,   271,     0,   270,   264,   282,   281,
1799 >     280,   263,   399,   391,     0,   390,   398,   233,   234,   232,
1800 >       0,   231,   249,   248,     0,     0,     0,   115,     0,     0,
1801 >       0,     0,   110,   148,   146,   188,   185,   184,   177,   179,
1802 >     194,   189,   192,   187,   178,   193,   181,   190,   182,   191,
1803 >     186,   180,   183,     0,   176,   143,   145,   147,   159,   153,
1804 >     170,   171,   154,   155,   156,   157,   165,   158,   168,   172,
1805 >     161,   166,   162,   167,   160,   164,   163,   169,     0,   152,
1806 >     144,   292,   293,   291,    70,    74,   308,   314,   320,   323,
1807 >     316,   322,   317,   321,   319,   315,   318,     0,   313,   309,
1808 >     331,   336,   342,   345,   338,   344,   339,   343,   341,   337,
1809 >     340,     0,   335,   373,     0,   418,     0,   558,   534,   606,
1810 >       0,   598,     0,   268,     0,   388,     0,   229,     0,   247,
1811 >     244,   243,     0,     0,     0,     0,   109,   174,     0,   150,
1812 >       0,   311,     0,   333,     0,   374,   419,   607,   599,   269,
1813 >     389,   230,   116,   125,   128,   127,   124,   129,   126,   123,
1814 >       0,   122,   118,   117,   175,   151,   312,   334,   120,     0,
1815 >     121
1816   };
1817  
1818   /* YYDEFGOTO[NTERM-NUM].  */
1819   static const yytype_int16 yydefgoto[] =
1820   {
1821 <      -1,     1,    25,   836,   837,   981,   982,    26,   254,   255,
1822 <     256,   257,    27,   290,   291,   292,   582,  1059,  1060,   293,
1823 <     294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
1824 <      28,    74,    75,    76,    77,    78,    29,   245,   246,   247,
1825 <     248,   249,   250,  1023,  1024,  1025,  1026,  1027,  1173,  1306,
1826 <    1307,    30,    63,   546,   547,   548,   549,   550,   551,   552,
1827 <     553,   554,   779,  1221,  1222,   555,   775,  1197,  1198,    31,
1828 <      51,   351,   352,   353,   354,   355,   356,   357,   358,   359,
1829 <     360,   361,   362,   363,   364,   365,    32,    60,   520,   759,
1830 <    1164,  1165,   521,   522,   523,  1170,  1014,  1015,   524,   525,
1831 <      33,    58,   496,   497,   498,   499,   500,   501,   502,   745,
1832 <    1149,  1150,   503,   504,   505,    34,    64,   560,   561,   562,
1833 <     563,   564,    35,   308,   309,   310,    36,    67,   593,   594,
1834 <     595,   596,   597,   812,  1241,  1242,    37,    68,   601,   602,
1835 <     603,   604,   818,  1256,  1257,    38,    52,   381,   382,   383,
1836 <     384,   385,   386,   387,   388,   389,   390,   654,  1102,  1103,
1837 <     391,   392,   393,   394,   395,   396,    39,    59,   510,   754,
1838 <    1158,  1159,   511,   512,   513,   514,    40,    53,   400,   401,
1839 <     402,   403,    41,   123,   124,   125,    42,    55,   411,   673,
1840 <    1117,  1118,   412,   413,   414,   415,    43,   182,   183,   184,
1841 <     185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1842 <     195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1843 <     205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1844 <     215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1845 <     225,   226,   227,   228,   229,   230,   231,   232,   448,   960,
1846 <     961,   233,   446,   938,   939,   234,   235,   236,   237,    44,
1847 <      57,   479,   480,   481,   482,   483,   737,  1134,  1135,   484,
1848 <     485,   486,   734,  1128,  1129,    45,    98,    99,   100,   101,
1849 <     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
1850 <     112,   113,   114,   115,   116,   117,    46,   268,   269,   270,
1851 <     271,   272,   273,   274,   275,   276
1821 >      -1,     1,    25,   834,   835,   978,   979,    26,   246,   247,
1822 >     248,   249,    27,   285,   286,   287,   288,   797,   798,   801,
1823 >     802,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1824 >     298,   299,   300,   301,    28,    74,    75,    76,    77,    78,
1825 >      29,   238,   239,   240,   241,   242,  1019,  1020,  1021,  1022,
1826 >    1023,  1169,  1300,  1301,    30,    63,   538,   539,   540,   541,
1827 >     542,   543,   544,   545,   546,   769,  1218,  1219,   547,   765,
1828 >    1193,  1194,    31,    51,   349,   350,   351,   352,   353,   354,
1829 >     355,   356,   357,   358,   359,   360,   361,   362,   363,    32,
1830 >      60,   513,   750,  1160,  1161,   514,   515,   516,  1166,  1011,
1831 >    1012,   517,   518,    33,    58,   489,   490,   491,   492,   493,
1832 >     494,   495,   736,  1145,  1146,   496,   497,   498,    34,    64,
1833 >     552,   553,   554,   555,   556,    35,   306,   307,   308,    36,
1834 >      67,   588,   589,   590,   591,   592,   811,  1237,  1238,    37,
1835 >      68,   596,   597,   598,   599,   817,  1251,  1252,    38,    52,
1836 >     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
1837 >     648,  1098,  1099,   388,   389,   390,   391,   392,    39,    59,
1838 >     503,   745,  1154,  1155,   504,   505,   506,   507,    40,    53,
1839 >     396,   397,   398,   399,    41,   123,   124,   125,    42,    55,
1840 >     407,   667,  1113,  1114,   408,   409,   410,   411,    43,   179,
1841 >     180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
1842 >     190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
1843 >     200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
1844 >     210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
1845 >     220,   221,   222,   223,   224,   225,   226,   442,   958,   959,
1846 >     227,   440,   935,   936,   228,   229,   230,   231,    44,    57,
1847 >     472,   473,   474,   475,   476,   728,  1130,  1131,   477,   478,
1848 >     479,   725,  1124,  1125,    45,    98,    99,   100,   101,   102,
1849 >     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
1850 >     113,   114,   115,   116,   117,    46,   260,   261,   262,   263,
1851 >     264,   265,   266,   267,   268
1852   };
1853  
1854   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1855     STATE-NUM.  */
1856 < #define YYPACT_NINF -769
1856 > #define YYPACT_NINF -733
1857   static const yytype_int16 yypact[] =
1858   {
1859 <    -769,   684,  -769,  -212,  -245,  -229,  -769,  -769,  -769,  -223,
1860 <    -769,  -208,  -769,  -769,  -769,  -769,  -198,  -191,  -769,  -769,
1861 <    -186,  -157,  -769,  -769,  -155,  -769,  -769,  -769,  -769,  -769,
1862 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1863 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,    43,
1864 <     588,  -147,   -97,   -94,     8,   -91,   418,   -84,   -63,   -60,
1865 <     -44,    50,     5,   -13,    27,   764,   457,    30,    33,    79,
1866 <     -21,    21,    34,    39,     9,  -769,  -769,  -769,  -769,  -769,
1867 <      40,    51,    60,    70,    72,    90,    98,   100,   101,   107,
1868 <     110,   117,   118,   119,   128,   130,   135,   136,   129,  -769,
1869 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1870 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,   665,   486,
1871 <      91,  -769,   137,     6,  -769,  -769,   229,  -769,   139,   142,
1872 <     143,   144,   146,   149,   150,   151,   154,   156,   157,   159,
1873 <     160,   161,   164,   166,   169,   176,   179,   182,   183,   186,
1874 <     187,   189,   190,   191,   192,   193,   194,   198,  -769,   199,
1875 <    -769,   202,   205,   208,   210,   213,   215,   216,   217,   221,
1876 <     222,   223,   224,   225,   232,   233,   235,   237,   239,   242,
1877 <     247,   248,    22,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1878 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1879 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1880 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1881 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1882 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,   304,   382,
1883 <     158,   309,   111,   250,   251,    35,  -769,  -769,  -769,  -769,
1884 <      73,   257,   255,   256,    38,  -769,  -769,  -769,   428,    69,
1885 <    -769,   258,   259,   263,   264,   268,   276,   278,   108,  -769,
1886 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,   260,   279,   280,
1887 <     281,   283,   288,   290,   291,  -769,   295,   297,   298,   301,
1888 <     228,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1889 <    -769,  -769,  -769,  -769,   172,   131,  -769,   302,    26,  -769,
1890 <    -769,  -769,   116,   415,   416,   310,  -769,   373,   445,   448,
1891 <     386,   387,   453,   453,   454,   455,   392,   393,   459,   453,
1892 <     396,   398,   399,   400,   402,   340,  -769,   346,   345,   351,
1893 <     356,   357,   362,   364,   366,   367,   368,   369,   370,   371,
1894 <     375,   197,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1895 <    -769,  -769,  -769,  -769,  -769,  -769,   384,   379,   383,   385,
1896 <     389,   390,  -769,   391,   395,   397,   403,   404,   405,   406,
1897 <     408,   238,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1898 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,   409,   410,
1899 <      37,  -769,  -769,  -769,   493,   417,  -769,  -769,   420,   421,
1900 <    -769,  -769,    65,  -769,  -769,  -769,   466,   453,   453,   518,
1901 <     498,   532,   482,   490,   558,   538,   495,   561,   562,   565,
1902 <     504,   508,   509,   453,   554,   511,   578,   581,   453,   582,
1903 <     583,   566,   586,   589,   525,   526,   461,   531,   465,   453,
1904 <     453,   536,   453,   584,   539,   541,   542,   -75,   -48,   544,
1905 <     547,   453,   453,   603,   592,   453,   550,   551,   553,   567,
1906 <     497,  -769,  -769,  -769,   499,   501,  -769,   502,   505,    14,
1907 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,   507,   520,   522,
1908 <    -769,   528,   530,   533,   534,   537,   165,  -769,  -769,  -769,
1909 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,   540,  -769,   543,
1910 <    -769,    94,  -769,  -769,  -769,   524,  -769,   546,   548,   549,
1911 <    -769,    87,  -769,  -769,  -769,  -769,  -769,   585,   594,   545,
1912 <    -769,   555,  -769,   642,   649,   556,  -769,   559,   560,   563,
1913 <    -769,   564,   577,   580,  -769,   587,     4,  -769,  -769,  -769,
1914 <    -769,  -769,  -769,  -769,  -769,  -769,   568,   593,   595,   596,
1915 <      47,  -769,  -769,  -769,  -769,   606,   611,   614,   672,   629,
1916 <     633,   453,   570,  -769,  -769,   689,   655,   700,   701,   703,
1917 <     705,   709,   597,   710,   734,   715,   718,   617,  -769,   620,
1918 <     608,  -769,   618,    20,  -769,  -769,  -769,  -769,   625,   623,
1919 <    -769,    68,  -769,  -769,  -769,   744,   632,  -769,   637,   639,
1920 <     640,  -769,   641,   644,   645,   646,   648,   212,   650,   656,
1921 <     659,   664,   667,   671,   675,   676,   678,   679,   680,   681,
1922 <     688,  -769,  -769,   771,   778,   453,   794,   820,   821,   825,
1923 <     805,   828,   832,   453,   453,   603,   707,  -769,  -769,   816,
1924 <      -9,   818,   819,   776,   712,   824,   826,   827,   829,   842,
1925 <     830,   831,   833,   720,  -769,   834,   835,   724,  -769,   728,
1926 <    -769,   837,   838,   714,   731,  -769,   732,   733,   735,   736,
1927 <     737,   738,   739,   741,   742,   743,   745,   746,   747,   748,
1928 <     749,   750,   751,   752,   753,   754,   755,   756,   757,   758,
1929 <     759,   760,   761,   762,   763,   765,   669,   766,   708,   767,
1930 <     768,   769,   770,   772,   773,   774,   775,   777,   779,   780,
1931 <     781,   782,   783,   784,   785,   338,   786,   787,   788,   789,
1932 <     790,   791,   792,  -769,   793,   453,   798,   795,   848,   852,
1933 <     797,  -769,  -769,   872,   840,   796,   879,   907,   901,   902,
1934 <     903,   800,  -769,   909,   799,   911,   804,  -769,  -769,   802,
1935 <     914,   915,   937,   809,  -769,   810,   811,  -769,    76,   812,
1936 <     813,  -769,  -769,   922,   880,   814,   923,   926,   927,   817,
1937 <     929,   822,  -769,  -769,   931,   932,   933,   836,  -769,   839,
1938 <     841,   843,   844,   845,   846,   847,  -769,   849,   850,   851,
1939 <     853,   854,   855,   856,    78,   857,   858,   859,   860,  -769,
1940 <    -769,   934,   861,   935,   862,  -769,  -769,   936,   863,   865,
1941 <    -769,   867,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1942 <    -769,   453,   453,   453,   453,   453,  -769,  -769,  -769,  -769,
1943 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1944 <    -769,   868,   869,   870,   871,   873,   874,   875,   876,   877,
1945 <     878,   881,   882,   883,  -769,   884,   885,   886,   887,   888,
1946 <     889,     2,   890,   891,   892,   893,   894,   895,   896,   897,
1947 <    -769,   898,   899,  -769,  -769,   900,   904,   938,  -769,  -769,
1948 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1949 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1950 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1951 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1952 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -233,  -769,
1953 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1954 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1955 <    -230,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1956 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,   603,   603,
1957 <     603,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1958 <       0,   905,   906,    13,   908,   910,  -769,   912,   913,   717,
1959 <     916,   917,   918,   919,   920,  -769,   921,   940,   924,  -769,
1960 <     115,   925,   928,   939,   930,  -769,  -769,  -769,  -769,   941,
1961 <     942,  -769,   943,    99,  -769,  -769,  -769,  -769,  -769,  -769,
1962 <     944,   947,   521,   948,   949,   950,   740,   951,  -769,   952,
1963 <     953,   954,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1964 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -224,
1965 <    -769,  -769,  -769,  -769,  -769,   955,   527,   956,  -769,   957,
1966 <     590,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1967 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1968 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1969 <    -769,  -769,  -213,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1970 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -204,  -769,  -769,
1971 <     669,  -769,   708,  -769,  -769,  -769,  -769,  -769,  -203,  -769,
1972 <    -769,  -769,  -769,  -769,  -187,  -769,  -769,  -769,  -769,  -769,
1973 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -175,
1974 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -174,  -769,
1975 <    -769,  -769,  -769,  -769,  -172,  -769,  -769,  -769,   958,   937,
1976 <     959,  -769,   946,   960,  -113,   961,  -769,  -769,  -769,  -769,
1977 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1978 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -165,  -769,  -769,
1979 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1980 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1981 <    -769,  -132,  -769,  -769,  -769,  -769,  -769,  -769,    78,  -769,
1982 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1983 <    -769,   -23,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1984 <    -769,  -769,  -769,  -769,  -769,  -769,    81,  -769,  -769,     2,
1985 <    -769,   938,  -769,  -769,  -769,     0,  -769,    13,  -769,   717,
1986 <    -769,   940,  -769,   115,  -769,  -769,  -769,   962,   220,   964,
1987 <     965,  -769,  -769,   521,  -769,   740,  -769,  -769,   527,  -769,
1988 <     590,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1989 <    -769,  -769,  -769,  -769,  -769,  -769,   112,  -769,  -769,  -769,
1990 <    -769,  -769,  -769,  -769,  -769,   220,  -769
1859 >    -733,   707,  -733,  -152,  -235,  -230,  -733,  -733,  -733,  -228,
1860 >    -733,  -225,  -733,  -733,  -733,  -733,  -222,  -219,  -733,  -733,
1861 >    -217,  -211,  -733,  -733,  -206,  -733,  -733,  -733,  -733,  -733,
1862 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1863 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,    13,
1864 >     612,  -201,  -198,  -188,    16,  -183,   373,  -173,  -170,  -167,
1865 >    -164,    40,    90,  -151,  -135,   359,   422,  -132,   -97,    15,
1866 >     -82,   -64,   -61,   -55,    22,  -733,  -733,  -733,  -733,  -733,
1867 >     -49,   -43,   -41,   -13,   -10,    -8,    -3,     7,    30,    66,
1868 >      80,    85,    95,   134,   135,   139,   146,   154,   172,  -733,
1869 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1870 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   637,   472,
1871 >      18,  -733,   169,    24,  -733,  -733,   189,  -733,   171,   180,
1872 >     182,   186,   192,   196,   199,   200,   202,   203,   206,   207,
1873 >     210,   211,   214,   216,   218,   227,   228,   230,   233,   239,
1874 >     241,   242,   248,   255,   260,   261,  -733,   263,  -733,   265,
1875 >     268,   273,   275,   276,   277,   282,   285,   286,   287,   288,
1876 >     291,   297,   298,   299,   305,   310,   311,   312,   313,    48,
1877 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1878 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1879 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1880 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1881 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1882 >    -733,  -733,   307,   456,    64,   346,   -32,   314,    33,  -733,
1883 >    -733,  -733,    44,    28,   315,   316,    29,  -733,  -733,  -733,
1884 >     464,   109,  -733,   317,   319,   322,   327,   329,   330,   332,
1885 >     281,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   116,
1886 >     333,   334,   339,   341,   342,   343,   344,   350,   353,   354,
1887 >     355,   356,   360,   361,   363,   152,  -733,  -733,  -733,  -733,
1888 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1889 >    -733,  -733,    21,    58,  -733,   365,    81,  -733,  -733,  -733,
1890 >     254,   266,   300,   176,  -733,   493,   502,   442,   443,   510,
1891 >     510,   511,   513,   514,   450,   451,   518,   510,   453,   454,
1892 >     458,   459,   460,   391,  -733,   396,   397,   398,   399,   400,
1893 >     402,   404,   405,   406,   407,   408,   409,   410,   411,   238,
1894 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1895 >    -733,  -733,  -733,  -733,   420,   419,   421,   423,   424,  -733,
1896 >     426,   427,   428,   431,   432,   433,   434,   436,     4,  -733,
1897 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1898 >    -733,  -733,  -733,  -733,   437,   438,    63,  -733,  -733,  -733,
1899 >     533,   425,  -733,  -733,   440,   441,  -733,  -733,    19,  -733,
1900 >    -733,  -733,   517,   510,   510,   576,   519,   523,   577,   569,
1901 >     525,   592,   594,   595,   534,   539,   540,   510,   578,   541,
1902 >     610,   611,   510,   613,   618,   591,   622,   625,   562,   564,
1903 >     497,   567,   501,   510,   510,   570,   510,   571,   572,   581,
1904 >     -15,   141,   584,   585,   510,   510,   644,   631,   510,   587,
1905 >     593,   596,   599,   526,  -733,  -733,  -733,   524,   535,  -733,
1906 >     536,   537,   153,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1907 >     529,   538,   543,  -733,   546,   547,   548,   549,   550,    35,
1908 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1909 >     558,  -733,   559,  -733,    60,  -733,  -733,  -733,   542,  -733,
1910 >     563,   568,   574,  -733,     2,  -733,  -733,  -733,  -733,  -733,
1911 >     601,   544,  -733,   580,  -733,   653,   680,   573,  -733,   586,
1912 >     582,   588,  -733,   589,   590,   600,  -733,   602,     5,  -733,
1913 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   597,   603,
1914 >     604,   605,    43,  -733,  -733,  -733,  -733,   649,   652,   655,
1915 >     698,   659,   660,   510,   598,  -733,  -733,   706,   664,   714,
1916 >     719,   720,   721,   722,   723,   187,   213,   724,   725,   747,
1917 >     729,   730,   635,  -733,   636,   643,  -733,   646,    74,  -733,
1918 >    -733,  -733,  -733,   638,   647,  -733,    77,  -733,  -733,  -733,
1919 >     757,   656,  -733,   663,   667,   668,  -733,   672,   675,   683,
1920 >     686,   178,   687,   688,   689,   690,   692,   693,   694,   695,
1921 >     696,   697,   699,   701,   702,   703,  -733,  -733,   783,   784,
1922 >     510,   786,   795,   810,   829,   814,   836,   837,   510,   510,
1923 >     644,   709,  -733,  -733,   817,   173,   820,   776,   710,   822,
1924 >     824,   825,   826,   848,   828,   830,   831,   726,  -733,   832,
1925 >     833,   727,  -733,   728,  -733,   834,   835,   731,   732,  -733,
1926 >     733,   735,   736,   737,   738,   739,   740,   741,   742,   743,
1927 >     744,   745,   746,   748,   749,   750,   752,   753,   754,   755,
1928 >     756,   758,   759,   760,   761,   762,   763,   764,   614,   765,
1929 >     679,   766,   767,   768,   770,   771,   772,   773,   774,   775,
1930 >     777,   778,   779,   780,   781,   782,    25,   785,   787,   788,
1931 >     789,   790,   791,   792,  -733,   793,   510,   794,   796,   841,
1932 >     857,   797,  -733,  -733,   867,   849,   798,   886,   850,   893,
1933 >     896,   903,   800,  -733,   904,   799,   905,   803,  -733,  -733,
1934 >     801,   908,   915,   861,   806,  -733,   807,  -733,   117,   808,
1935 >     809,  -733,  -733,   920,   876,   811,   922,   923,   925,   813,
1936 >     927,   818,  -733,  -733,   929,   930,   931,   823,  -733,   827,
1937 >     838,   839,   842,   843,   844,   845,  -733,   846,   847,   851,
1938 >     852,   853,   854,   855,   856,  -733,  -733,  -212,  -733,  -733,
1939 >    -733,  -210,  -733,   858,   859,   860,   862,   863,  -733,  -733,
1940 >     932,   821,   935,   864,  -733,  -733,   936,   865,   866,  -733,
1941 >     869,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   510,
1942 >     510,   510,   510,   510,  -733,  -733,  -733,  -733,  -733,  -733,
1943 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1944 >     870,   871,   872,   873,   874,   875,   877,   878,   879,   880,
1945 >     881,   882,   883,  -733,   884,   885,   887,   888,   889,   138,
1946 >     890,   891,   892,   894,   895,   897,   898,   899,  -733,   900,
1947 >     901,  -733,  -733,   902,   906,   933,  -733,  -733,  -733,  -733,
1948 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1949 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1950 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1951 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1952 >    -733,  -733,  -733,  -733,  -733,   -35,  -733,  -733,  -733,  -733,
1953 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1954 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   -33,  -733,
1955 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1956 >    -733,  -733,  -733,  -733,  -733,   644,   644,   644,  -733,  -733,
1957 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,     0,   907,   909,
1958 >       1,   910,   911,  -733,   912,   913,   840,   914,   916,   917,
1959 >     918,   919,  -733,   921,   934,   924,  -733,    -6,   926,   928,
1960 >     946,   937,  -733,  -733,  -733,   938,   939,  -733,   940,    67,
1961 >    -733,  -733,  -733,  -733,  -733,  -733,   944,   945,   477,   947,
1962 >     948,   949,   716,   950,  -733,   951,   952,   953,  -733,  -733,
1963 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1964 >    -733,  -733,  -733,  -733,  -733,   187,  -733,   213,  -733,  -733,
1965 >    -733,  -733,  -733,   954,   302,   955,  -733,   956,   560,  -733,
1966 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1967 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1968 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   -16,  -733,
1969 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1970 >    -733,  -733,  -733,    51,  -733,  -733,   614,  -733,   679,  -733,
1971 >    -733,  -733,  -733,  -733,    62,  -733,  -733,  -733,  -733,  -733,
1972 >     108,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1973 >    -733,  -733,  -733,  -733,  -733,   113,  -733,  -733,  -733,  -733,
1974 >    -733,  -733,  -733,  -733,   123,  -733,  -733,  -733,  -733,  -733,
1975 >     124,  -733,  -733,  -733,   961,   861,   957,  -733,   941,   943,
1976 >    -106,   958,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1977 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1978 >    -733,  -733,  -733,   131,  -733,  -733,  -733,  -733,  -733,  -733,
1979 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1980 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   132,  -733,
1981 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1982 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,   143,  -733,  -733,
1983 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1984 >    -733,   159,  -733,  -733,   138,  -733,   933,  -733,  -733,  -733,
1985 >       0,  -733,     1,  -733,   840,  -733,   934,  -733,    -6,  -733,
1986 >    -733,  -733,   959,   388,   960,   962,  -733,  -733,   477,  -733,
1987 >     716,  -733,   302,  -733,   560,  -733,  -733,  -733,  -733,  -733,
1988 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1989 >     184,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   388,
1990 >    -733
1991   };
1992  
1993   /* YYPGOTO[NTERM-NUM].  */
1994   static const yytype_int16 yypgoto[] =
1995   {
1996 <    -769,  -769,  -769,  -411,  -321,  -768,  -463,  -769,  -769,   823,
1997 <    -769,  -769,  -769,  -769,   808,  -769,  -769,  -769,  -152,  -769,
1998 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
1999 <    -769,  -769,  1004,  -769,  -769,  -769,  -769,  -769,   864,  -769,
2000 <    -769,  -769,  -769,  -769,    56,  -769,  -769,  -769,  -769,  -769,
2001 <    -235,  -769,  -769,  -769,   572,  -769,  -769,  -769,  -769,  -769,
2002 <    -769,  -769,  -769,  -769,  -199,  -769,  -769,  -769,  -195,  -769,
2003 <    -769,  -769,   806,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2004 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2005 <    -769,  -179,  -769,   604,  -769,  -769,  -769,   -62,  -769,  -769,
2006 <    -769,  -769,  -769,   651,  -769,  -769,  -769,  -769,  -769,  -769,
2007 <    -769,  -121,  -769,  -769,  -769,  -769,  -769,  -769,   600,  -769,
2008 <    -769,  -769,  -769,  -769,   945,  -769,  -769,  -769,  -769,   575,
2009 <    -769,  -769,  -769,  -769,  -769,  -139,  -769,  -769,  -769,   552,
2010 <    -769,  -769,  -769,  -769,  -135,  -769,  -769,  -769,   801,  -769,
2011 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,   -98,
2012 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2013 <    -769,  -102,  -769,   661,  -769,  -769,  -769,  -769,  -769,   815,
2014 <    -769,  -769,  -769,  -769,  1050,  -769,  -769,  -769,  -769,  -769,
2015 <    -769,   -86,  -769,   807,  -769,  -769,  -769,  -769,   994,  -769,
2016 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2017 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2018 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2019 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2020 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2021 <      55,  -769,  -769,  -769,    58,  -769,  -769,  -769,  -769,  -769,
2022 <    -769,  -769,   702,  -769,  -769,  -769,  -769,  -769,   -88,  -769,
2023 <    -769,  -769,  -769,  -769,   -82,  -769,  -769,  1086,  -769,  -769,
2024 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,
2025 <    -769,  -769,  -769,  -769,  -769,  -769,  -769,  -769,   963,  -769,
2026 <    -769,  -769,  -769,  -769,  -769,  -769
1996 >    -733,  -733,  -733,  -732,  -318,  -542,  -456,  -733,  -733,   963,
1997 >    -733,  -733,  -733,  -733,   804,  -733,  -733,  -733,    20,  -733,
1998 >      17,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
1999 >    -733,  -733,  -733,  -733,  -733,  -733,   999,  -733,  -733,  -733,
2000 >    -733,  -733,   868,  -733,  -733,  -733,  -733,    57,  -733,  -733,
2001 >    -733,  -733,  -733,  -232,  -733,  -733,  -733,   552,  -733,  -733,
2002 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -202,  -733,  -733,
2003 >    -733,  -197,  -733,  -733,  -733,   812,  -733,  -733,  -733,  -733,
2004 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2005 >    -733,  -733,  -733,  -733,  -186,  -733,   620,  -733,  -733,  -733,
2006 >     -74,  -733,  -733,  -733,  -733,  -733,   609,  -733,  -733,  -733,
2007 >    -733,  -733,  -733,  -733,  -162,  -733,  -733,  -733,  -733,  -733,
2008 >    -733,   556,  -733,  -733,  -733,  -733,  -733,   942,  -733,  -733,
2009 >    -733,  -733,   557,  -733,  -733,  -733,  -733,  -733,  -165,  -733,
2010 >    -733,  -733,   553,  -733,  -733,  -733,  -733,  -147,  -733,  -733,
2011 >    -733,   802,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2012 >    -733,  -733,  -110,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2013 >    -733,  -733,  -733,  -120,  -733,   662,  -733,  -733,  -733,  -733,
2014 >    -733,   815,  -733,  -733,  -733,  -733,  1033,  -733,  -733,  -733,
2015 >    -733,  -733,  -733,   -93,  -733,   769,  -733,  -733,  -733,  -733,
2016 >     985,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2017 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2018 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2019 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2020 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,    50,
2021 >    -733,  -733,  -733,    54,  -733,  -733,  -733,  -733,  -733,  -733,
2022 >    -733,   700,  -733,  -733,  -733,  -733,  -733,   -91,  -733,  -733,
2023 >    -733,  -733,  -733,   -87,  -733,  -733,  1076,  -733,  -733,  -733,
2024 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
2025 >    -733,  -733,  -733,  -733,  -733,  -733,  -733,   964,  -733,  -733,
2026 >    -733,  -733,  -733,  -733,  -733
2027   };
2028  
2029   /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
2030     positive, shift that token.  If negative, reduce the rule which
2031     number is the opposite.  If YYTABLE_NINF, syntax error.  */
2032 < #define YYTABLE_NINF -102
2032 > #define YYTABLE_NINF -109
2033   static const yytype_int16 yytable[] =
2034   {
2035 <     726,   618,   619,    49,   725,   537,   251,   121,   625,   121,
2036 <      70,  1126,  1097,  1119,  1098,   472,  1121,  1120,   473,    50,
2037 <    1122,   589,  1227,   127,  1132,    54,  1228,   306,  1099,   538,
2038 <     128,   129,  1100,  1258,    47,    48,   242,  1259,   397,   251,
2039 <      56,   130,  1260,  1264,    70,    71,  1261,  1265,   556,   131,
2040 <      61,   242,   539,   132,   133,    72,   540,    62,   474,  1266,
2041 <     134,   475,    65,  1267,   135,   136,   407,   137,   557,   598,
2042 <     556,  1268,  1270,   138,  1272,  1269,  1271,  1019,  1273,    71,
2043 <     306,  1282,   139,   140,   122,  1283,   122,   141,   515,    72,
2044 <     557,    66,   397,    69,   142,   506,   677,   678,   143,   144,
2045 <    1019,   118,   145,  1279,   476,   146,   147,   717,   718,   260,
2046 <     252,   541,   693,   148,  1284,   398,    73,   698,  1285,   149,
2047 <     150,   477,   151,   152,   153,   154,   155,   590,   709,   710,
2048 <      79,   712,   598,   307,   719,   720,   542,   156,   253,   516,
2049 <     723,   724,    80,   252,   728,   157,   158,   159,   261,   160,
2050 <      73,   119,   161,   162,   120,   543,   163,   126,   558,   506,
2051 <     517,   262,    81,    82,   238,   518,   487,   164,    83,   398,
2052 <      84,   253,   408,   589,   263,   599,   264,   399,   265,   266,
2053 <     558,  1161,   863,  1020,  1127,   239,   307,   559,   240,   165,
2054 <     488,   166,   591,   866,   867,   167,   267,  1133,   337,   168,
2055 <     169,   170,   171,   172,   241,   409,  1020,   173,   174,   559,
2056 <    1123,  1124,  1125,   489,    85,    86,   175,   490,   544,   338,
2057 <     339,    87,    88,  1287,   519,   311,   340,  1288,  1101,   277,
2058 <     407,   399,  1057,  1058,   507,   258,   545,   410,   599,   366,
2059 <     600,   367,    89,    90,   368,   176,   478,   177,  1021,   178,
2060 <     795,   781,   592,   405,   608,   179,   315,    91,    92,   243,
2061 <     180,   740,   369,   370,   278,   181,   508,   814,    93,   470,
2062 <     312,  1021,   244,   606,   243,   259,  1299,    94,   304,   590,
2063 <    -101,   305,   529,   313,   667,   535,   371,   244,   314,   317,
2064 <     372,   341,   342,   343,   787,  -101,   344,   491,   507,  1300,
2065 <     318,  1301,   279,   600,   345,   472,   492,   493,   473,   319,
2066 <     515,   373,   674,   374,   853,   819,   346,   347,   531,   320,
2067 <    1022,   321,   861,   862,  1162,   375,   509,  1289,  1163,   617,
2068 <     508,  1290,   348,   349,   763,   280,   408,   281,   282,   322,
2069 <     494,   756,  1302,  1022,   591,   376,  1175,   323,   474,   324,
2070 <     325,   475,   978,   979,   980,   572,   326,   526,  1314,   327,
2071 <     350,   516,  1315,    95,    96,    97,   328,   329,   330,   409,
2072 <     831,   832,   833,   834,   835,   377,   335,   331,   283,   332,
2073 <     284,   285,   517,   487,   333,   334,   404,   518,   416,   378,
2074 <     509,   417,   418,   419,   476,   420,   286,   495,   421,   422,
2075 <     423,   410,   379,   424,   592,   425,   426,   488,   427,   428,
2076 <     429,   477,   751,   430,   991,   431,  1303,  1304,   432,   127,
2077 <    1073,  1074,  1075,  1076,  1077,   433,   128,   129,   434,   537,
2078 <     489,   435,   436,   287,   490,   437,   438,   130,   439,   440,
2079 <     441,   442,   443,   444,   646,   131,   519,   445,   447,   132,
2080 <     133,   449,  1305,   538,   450,   725,   134,   451,   277,   452,
2081 <     135,   136,   453,   137,   454,   455,   456,   288,   289,   138,
2082 <     457,   458,   459,   460,   461,   587,   539,   380,   139,   140,
2083 <     540,   462,   463,   141,   464,   663,   465,   366,   466,   367,
2084 <     142,   467,   368,   278,   143,   144,   468,   469,   145,   527,
2085 <     528,   146,   147,   532,   533,   534,   574,   565,   566,   148,
2086 <     369,   370,   567,   568,   491,   149,   150,   569,   151,   152,
2087 <     153,   154,   155,   492,   493,   570,  1179,   571,   575,   576,
2088 <     577,   279,   578,   156,   371,   541,   478,   579,   372,   580,
2089 <     581,   157,   158,   159,   583,   160,   584,   585,   161,   162,
2090 <     586,   605,   163,   609,   610,   612,   611,   494,  1180,   373,
2091 <     542,   374,   613,   164,   280,   614,   281,   282,   615,   616,
2092 <     617,   620,   621,   375,   622,   623,   624,  1181,   626,   543,
2093 <     627,   628,   629,  1182,   630,   165,   631,   166,  1183,    79,
2094 <    1184,   167,   632,   376,   633,   168,   169,   170,   171,   172,
2095 <     634,    80,  1185,   173,   174,   635,   636,   283,  1230,   284,
2096 <     285,   637,   175,   638,   495,   639,   640,   641,   642,   643,
2097 <     644,    81,    82,   377,   645,   286,  1186,    83,   649,    84,
2098 <     648,   669,   650,  1187,   651,   679,   680,   378,   652,   653,
2099 <     655,   176,   544,   177,   656,   178,   657,  1188,   676,   681,
2100 <     379,   179,   658,   659,   660,   661,   180,   662,   665,   666,
2101 <     545,   181,   287,   670,   682,  1189,   337,  1190,  1191,   671,
2102 <     672,  1245,   683,    85,    86,   684,   685,   686,   687,   688,
2103 <      87,    88,   689,  1231,     2,     3,   690,   338,   339,     4,
2104 <     691,   692,   694,   695,   340,   696,   288,   289,   697,   699,
2105 <     700,    89,    90,   702,   701,     5,   703,   704,   705,     6,
2106 <     706,  1280,     7,   707,   708,  1232,    91,    92,   711,     8,
2107 <     725,   714,   713,   715,   716,   380,   721,    93,  1192,   722,
2108 <     727,  1233,   729,   730,     9,   731,    94,  1140,    10,    11,
2109 <    1193,    12,  1194,   733,  1234,  1235,  1246,    13,   735,   732,
2110 <     736,   738,  1195,   742,   739,  1236,  1237,  1238,  1239,   341,
2111 <     342,   343,  1196,    14,   344,   260,  1141,   765,  1240,   743,
2112 <     758,   744,   345,    15,    16,  1142,   766,   746,  1247,   747,
2113 <     769,  1143,   748,   749,   346,   347,   750,   770,   789,   753,
2114 <      17,   767,   755,   790,  1248,   760,   791,   761,   762,  1144,
2115 <     348,   349,   771,   768,   261,   772,    18,  1249,  1250,   773,
2116 <     792,   793,   774,   776,   783,   794,   796,   262,  1251,  1252,
2117 <    1253,  1254,    95,    96,    97,  1145,   777,   797,   350,   778,
2118 <     263,  1255,   264,  1146,   265,   266,   780,   798,   799,   800,
2119 <      19,   801,   784,   802,   785,   786,   804,   803,   805,    20,
2120 <      21,   806,   267,   807,    22,    23,   808,   811,   919,   920,
2121 <     921,   922,   923,   809,   924,   925,   810,   813,   926,   927,
2122 <     928,   816,   817,   929,  1147,   930,   931,   932,   822,   933,
2123 <     934,   935,   821,   823,   936,   824,   825,   826,   851,   937,
2124 <     827,   828,   829,  1148,   830,   852,   838,   941,   942,   943,
2125 <     944,   945,   839,   946,   947,   840,    24,   948,   949,   950,
2126 <     841,   854,   951,   842,   952,   953,   954,   843,   955,   956,
2127 <     957,   844,   845,   958,   846,   847,   848,   849,   959,  1202,
2128 <    1203,  1204,  1205,  1206,   850,  1207,  1208,   855,   856,  1209,
2129 <    1210,  1211,   857,   858,  1212,   859,  1213,  1214,  1215,   860,
2130 <    1216,  1217,  1218,   864,   865,  1219,   868,   869,   870,   876,
2131 <    1220,   871,   872,   887,   873,   874,   880,   875,   877,   878,
2132 <     883,   879,   881,   882,   884,   885,   886,   888,   889,   890,
2133 <     992,   891,   892,   893,   894,   895,   994,   896,   897,   898,
2134 <     995,   899,   900,   901,   902,   903,   904,   905,   906,   907,
2135 <     908,   909,   910,   911,   912,   913,   914,   915,   916,   917,
2136 <     997,   918,   940,   962,   963,   964,   965,  1000,   966,   967,
2137 <     968,   969,   998,   970,  1001,   971,   972,   973,   974,   975,
2138 <     976,   977,   983,   984,   985,   986,   987,   988,   989,  1002,
2139 <    1003,  1004,   990,   996,   993,   999,  1005,  1006,  1007,  1008,
2140 <    1009,  1010,  1011,  1012,  1013,  1016,  1017,  1018,  1028,  1029,
2141 <    1030,  1033,  1031,  1032,  1034,  1035,  1036,  1037,  1038,  1039,
2142 <    1040,  1041,  1065,  1067,  1069,  1274,  1286,   536,   316,  1176,
2143 <    1316,  1116,  1042,  1157,  1277,  1043,  1311,  1044,  1310,  1045,
2144 <    1046,  1047,  1048,  1049,  1297,  1050,  1051,  1052,   588,  1053,
2145 <    1054,  1055,  1056,  1061,  1062,  1063,  1064,  1275,  1068,   530,
2146 <    1066,  1071,  1070,  1072,  1078,  1079,  1080,  1081,   782,  1082,
2147 <    1083,  1084,  1085,  1086,  1087,   764,  1168,  1088,  1089,  1090,
2148 <    1091,  1092,  1093,  1094,  1095,  1096,  1104,  1105,  1106,  1107,
2149 <    1108,  1109,  1110,  1111,  1112,  1113,  1114,   752,  1295,  1312,
2150 <    1115,  1130,  1131,   820,  1136,  1313,  1137,   647,  1138,  1139,
2151 <     788,  1291,  1151,  1152,  1153,  1154,  1155,  1156,   815,  1296,
2152 <    1160,  1166,   757,   406,  1167,  1292,   471,  1263,  1262,  1294,
2153 <    1169,   741,   664,  1293,   336,     0,     0,  1171,     0,     0,
2154 <    1177,  1172,  1174,  1178,  1199,  1200,  1201,  1223,  1224,  1225,
2155 <    1226,  1229,  1243,  1244,     0,  1276,     0,  1281,  1298,  1278,
2156 <    1308,  1309,     0,     0,     0,   668,     0,     0,     0,   675,
2035 >     717,   612,   613,   508,   716,   364,   529,   365,    49,   620,
2036 >     366,  1122,  1128,    50,    70,    54,   304,   121,    56,   393,
2037 >     403,    61,   584,    70,    62,   121,    65,   367,   530,  1054,
2038 >     243,  1056,    66,  1055,   236,  1057,   480,    69,   975,   976,
2039 >     977,   236,   118,    71,   548,   119,   368,   531,   509,   127,
2040 >     369,   532,    71,    72,  1157,   120,   128,   129,   481,   593,
2041 >     126,   499,    72,   549,   393,   499,   130,   510,  1015,   370,
2042 >     232,   371,   511,   233,   131,   584,   234,   482,   593,   235,
2043 >     132,   483,   304,   372,   133,   134,   122,   135,   394,    47,
2044 >      48,   243,   250,   136,   122,   671,   672,  1071,  1072,  1073,
2045 >    1074,  1075,   137,   138,   373,   533,  1274,   139,   251,   685,
2046 >     548,   302,   140,    73,   690,   305,   141,   142,  1015,   404,
2047 >     143,   585,    73,   144,   145,   701,   702,   244,   704,   549,
2048 >     534,   146,   512,   394,   374,   716,   714,   715,   147,   148,
2049 >     719,   149,   150,   151,   152,   153,   303,   550,  1094,   535,
2050 >    1095,   395,   405,   269,   465,   245,   154,   466,   594,   309,
2051 >     484,   708,   709,   375,   155,   156,   157,  1016,   158,   485,
2052 >     486,   159,   160,    79,   585,   161,   551,   594,  1123,  1129,
2053 >     310,   305,   270,   311,   862,   406,   162,   586,   244,   312,
2054 >     403,   467,   376,   500,   468,   315,   395,   500,  1158,    80,
2055 >      81,   316,  1159,   317,   487,    82,  1115,    83,  1117,   519,
2056 >    1116,   163,  1118,   550,   536,   164,   245,  1016,   271,   165,
2057 >     166,   167,   168,   169,   595,  1253,   501,   170,   171,  1254,
2058 >     501,   318,   537,  1017,   319,   469,   320,   172,   377,   335,
2059 >     586,   321,   551,   595,   754,   785,   657,   771,   587,    84,
2060 >      85,   322,   272,   470,   273,   274,    86,    87,    88,   336,
2061 >     337,   668,   488,   338,   313,   237,   401,   173,   174,   524,
2062 >     175,   527,   237,  -108,   323,   521,   176,   742,    89,    90,
2063 >    -108,   177,   252,  1017,   523,   777,   178,   502,   611,   404,
2064 >     463,   502,  1255,    91,    92,   275,  1256,   276,   277,   278,
2065 >     279,   587,   747,  1259,    93,   661,  1018,  1260,   465,  1171,
2066 >     324,   466,   852,    94,   280,   253,   813,   710,   711,   818,
2067 >     860,   861,   405,   601,   325,   339,   340,   341,   254,   326,
2068 >     342,   829,   830,   831,   832,   833,   795,   796,   343,   327,
2069 >     281,   255,   256,   257,   258,   467,  1096,   508,   468,  1261,
2070 >     344,   345,   282,  1262,  1263,   406,  1018,   566,  1264,  1097,
2071 >     252,   259,   799,   800,  1265,  1267,   346,   347,  1266,  1268,
2072 >     865,   866,  1277,  1279,   127,  1227,  1278,  1280,   328,   329,
2073 >     471,   128,   129,   330,  1281,   603,   283,   284,  1282,   469,
2074 >     331,   130,   509,   253,   582,   731,   348,   604,   332,   131,
2075 >    1283,    95,    96,    97,  1284,   132,   254,   470,   988,   133,
2076 >     134,   510,   135,   400,   333,   412,   511,   606,   136,   255,
2077 >     256,   257,   258,   269,   413,  1308,   414,   137,   138,  1309,
2078 >     415,   605,   139,  1119,  1120,  1121,   416,   140,  1293,   259,
2079 >     417,   141,   142,   418,   419,   143,   420,   421,   144,   145,
2080 >     422,   423,   270,  1228,   424,   425,   146,   480,   426,  1294,
2081 >     427,  1295,   428,   147,   148,   529,   149,   150,   151,   152,
2082 >     153,   429,   430,   364,   431,   365,   512,   432,   366,   481,
2083 >     641,   154,  1175,   433,  1229,   434,   435,   530,   271,   155,
2084 >     156,   157,   436,   158,  1230,   367,   159,   160,   482,   437,
2085 >     161,  1231,   483,  1296,   438,   439,   531,   441,  1176,   443,
2086 >     532,   162,   444,  1232,   368,  1233,  1234,   445,   369,   446,
2087 >     447,   448,   272,   564,   273,   274,   449,  1177,  1235,   450,
2088 >     451,   452,   453,  1178,   471,   454,   163,   370,  1236,   371,
2089 >     164,   455,   456,   457,   165,   166,   167,   168,   169,   458,
2090 >    1179,   372,   170,   171,   459,   460,   461,   462,   520,   525,
2091 >     526,   557,   172,   558,   533,   275,   559,   276,   277,   278,
2092 >     279,   560,   373,   561,   562,  1180,   563,   567,   568,  1297,
2093 >    1298,   484,  1181,   569,   280,   570,   571,   572,   573,   534,
2094 >     485,   486,   173,   174,   574,   175,  1182,   575,   576,   577,
2095 >     578,   176,   374,   607,   579,   580,   177,   581,   535,   600,
2096 >     281,   178,   608,    79,  1183,  1299,  1184,  1185,   609,   610,
2097 >     611,   614,   282,   615,   616,   487,   617,   618,   619,   621,
2098 >     622,   375,   626,  1241,   623,   624,   625,   627,   335,    80,
2099 >      81,   628,   629,   630,   631,    82,   632,    83,   633,   634,
2100 >     635,   636,   637,   638,   639,   640,   283,   284,   336,   337,
2101 >     376,   643,   338,   644,   663,   645,   664,   646,   647,  1186,
2102 >     649,   650,   651,   536,   915,   652,   653,   654,   655,  1187,
2103 >     656,   659,   660,   488,   665,   666,   673,   676,  1188,    84,
2104 >      85,   537,  1189,   670,  1190,   674,    86,    87,    88,   675,
2105 >     677,   678,   679,  1191,   680,   681,   377,     2,     3,   686,
2106 >     682,  1242,     4,  1192,  1275,   683,   684,   687,    89,    90,
2107 >     688,   689,   693,   691,   339,   340,   341,     5,   692,   342,
2108 >       6,     7,   694,    91,    92,   695,     8,   343,   696,   938,
2109 >     697,   698,  1243,   699,    93,   700,   703,   705,   706,   344,
2110 >     345,     9,  1244,    94,   716,    10,    11,   707,    12,  1245,
2111 >     712,   713,   718,   720,    13,   346,   347,   724,   726,   721,
2112 >     733,  1246,   722,  1247,  1248,   723,  1198,   756,    14,   727,
2113 >     729,   730,   734,   749,   759,   757,  1249,   735,    15,    16,
2114 >     737,   738,   739,   740,   741,   348,  1250,   916,   917,   918,
2115 >     919,   920,   744,   746,   921,   922,    17,   751,   923,   924,
2116 >     925,   760,   752,   926,   761,   927,   928,   929,   753,   930,
2117 >     931,   932,    18,   758,   933,   779,   763,   762,   780,   782,
2118 >     934,   781,   764,   766,   767,   783,   784,   787,   773,   786,
2119 >     788,    95,    96,    97,   768,   789,   770,   774,   775,   776,
2120 >     790,   791,   792,   793,   794,   803,   804,   805,    19,  1136,
2121 >     806,   807,   939,   940,   941,   942,   943,    20,    21,   944,
2122 >     945,    22,    23,   946,   947,   948,   808,   809,   949,   815,
2123 >     950,   951,   952,  1137,   953,   954,   955,   810,   820,   956,
2124 >     812,   816,  1138,   850,   851,   957,   853,   821,  1139,  1199,
2125 >    1200,  1201,  1202,  1203,   822,   854,  1204,  1205,   823,   824,
2126 >    1206,  1207,  1208,   825,  1140,  1209,   826,  1210,  1211,  1212,
2127 >     855,  1213,  1214,  1215,   827,    24,  1216,   828,   836,   837,
2128 >     838,   839,  1217,   840,   841,   842,   843,   844,   845,   856,
2129 >     846,  1141,   847,   848,   849,   857,   858,   859,   864,  1142,
2130 >     863,   867,   868,   870,   869,   871,   872,   873,   874,   875,
2131 >     998,   876,   877,   879,   880,   883,   884,   878,   881,   882,
2132 >     989,  1010,   991,   886,   887,   885,   888,   889,   890,   891,
2133 >     892,   893,   894,   895,   896,   897,   898,   899,   992,   900,
2134 >     901,   902,  1143,   903,   904,   905,   906,   907,   994,   908,
2135 >     909,   910,   911,   912,   913,   914,   937,   960,   961,   962,
2136 >    1144,   963,   964,   965,   966,   967,   968,   997,   969,   970,
2137 >     971,   972,   973,   974,   999,   995,   980,  1000,   981,   982,
2138 >     983,   984,   985,   986,  1001,  1003,  1005,   987,   993,  1008,
2139 >     990,  1002,   996,  1004,  1006,  1007,  1009,  1013,  1014,  1024,
2140 >    1025,  1026,  1027,  1029,  1030,  1028,  1031,  1032,  1033,  1034,
2141 >    1035,  1036,  1037,  1063,  1038,  1064,  1065,  1067,  1039,  1112,
2142 >    1153,  1269,  1272,   314,  1225,  1224,  1172,  1310,  1305,  1040,
2143 >    1041,  1304,  1291,  1042,  1043,  1044,  1045,  1046,  1047,   583,
2144 >     772,  1270,  1048,  1049,  1050,  1051,  1052,  1053,   743,  1058,
2145 >    1059,  1060,  1289,  1061,  1062,  1066,   522,  1069,   778,  1068,
2146 >    1070,  1076,  1077,  1078,  1079,  1080,  1081,  1306,  1082,  1083,
2147 >    1084,  1085,  1086,  1087,  1088,  1089,  1090,  1164,  1091,  1092,
2148 >    1093,  1100,  1101,  1102,   755,  1103,  1104,  1307,  1105,  1106,
2149 >    1107,  1108,  1109,  1110,  1285,   814,  1290,  1111,  1126,   819,
2150 >    1127,  1132,  1133,  1134,  1135,  1147,   402,  1148,  1149,  1150,
2151 >    1151,   642,  1152,  1286,   464,  1156,   748,  1162,  1258,  1163,
2152 >    1257,  1288,   732,  1287,   334,     0,     0,   669,     0,  1167,
2153 >     658,     0,  1165,  1168,  1170,  1173,  1174,  1273,  1195,  1196,
2154 >    1197,  1220,  1221,  1222,  1223,  1226,  1239,  1240,  1271,  1276,
2155 >    1292,  1302,     0,  1303,     0,     0,     0,     0,     0,   528,
2156 >       0,   662,     0,     0,     0,     0,     0,     0,     0,     0,
2157 >       0,     0,     0,     0,   565,     0,     0,     0,     0,     0,
2158         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2159 <       0,   573,     0,     0,     0,     0,     0,     0,     0,     0,
2187 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2188 <       0,     0,     0,   607
2159 >       0,     0,     0,     0,     0,     0,     0,     0,   602
2160   };
2161  
2162   #define yypact_value_is_default(yystate) \
2163 <  ((yystate) == (-769))
2163 >  ((yystate) == (-733))
2164  
2165   #define yytable_value_is_error(yytable_value) \
2166    YYID (0)
2167  
2168   static const yytype_int16 yycheck[] =
2169   {
2170 <     463,   322,   323,   248,   117,     1,     1,     1,   329,     1,
2171 <       1,    11,    10,   246,    12,     1,   246,   250,     4,   248,
2172 <     250,     1,   246,     1,    11,   248,   250,     1,    26,    25,
2173 <       8,     9,    30,   246,   246,   247,     1,   250,     1,     1,
2174 <     248,    19,   246,   246,     1,    36,   250,   250,     1,    27,
2175 <     248,     1,    48,    31,    32,    46,    52,   248,    44,   246,
2176 <      38,    47,   248,   250,    42,    43,     1,    45,    21,     1,
2177 <       1,   246,   246,    51,   246,   250,   250,     1,   250,    36,
2178 <       1,   246,    60,    61,    78,   250,    78,    65,     1,    46,
2179 <      21,   248,     1,   248,    72,     1,   417,   418,    76,    77,
2180 <       1,   248,    80,   216,    90,    83,    84,   182,   183,     1,
2181 <     105,   107,   433,    91,   246,    78,   107,   438,   250,    97,
2182 <      98,   107,   100,   101,   102,   103,   104,   107,   449,   450,
2183 <       1,   452,     1,   107,   182,   183,   132,   115,   133,    52,
2184 <     461,   462,    13,   105,   465,   123,   124,   125,    40,   127,
2185 <     107,   248,   130,   131,   248,   151,   134,   248,   111,     1,
2186 <      73,    53,    33,    34,   248,    78,     1,   145,    39,    78,
2187 <      41,   133,   107,     1,    66,   107,    68,   140,    70,    71,
2188 <     111,    66,   645,   107,   184,   248,   107,   140,   248,   167,
2189 <      25,   169,   172,   202,   203,   173,    88,   184,     1,   177,
2190 <     178,   179,   180,   181,   248,   140,   107,   185,   186,   140,
2191 <     978,   979,   980,    48,    85,    86,   194,    52,   214,    22,
2192 <      23,    92,    93,   246,   137,   246,    29,   250,   226,     1,
2193 <       1,   140,   154,   155,   140,   248,   232,   172,   107,     1,
2194 <     172,     3,   113,   114,     6,   223,   232,   225,   172,   227,
2195 <     571,   247,   232,   247,   138,   233,   247,   128,   129,   224,
2196 <     238,   247,    24,    25,    36,   243,   172,   247,   139,   247,
2197 <     249,   172,   237,   247,   224,   248,    56,   148,   248,   107,
2198 <     245,   248,   247,   249,   247,   247,    48,   237,   249,   249,
2199 <      52,    94,    95,    96,   247,   245,    99,   132,   140,    79,
2200 <     249,    81,    74,   172,   107,     1,   141,   142,     4,   249,
2201 <       1,    73,   247,    75,   635,   247,   119,   120,   245,   249,
2202 <     244,   249,   643,   644,   209,    87,   232,   246,   213,   117,
2203 <     172,   250,   135,   136,   247,   107,   107,   109,   110,   249,
2204 <     175,   247,   122,   244,   172,   107,   247,   249,    44,   249,
2205 <     249,    47,    14,    15,    16,   247,   249,   246,   246,   249,
2206 <     163,    52,   250,   234,   235,   236,   249,   249,   249,   140,
2207 <     158,   159,   160,   161,   162,   137,   247,   249,   150,   249,
2208 <     152,   153,    73,     1,   249,   249,   249,    78,   249,   151,
2209 <     232,   249,   249,   249,    90,   249,   168,   232,   249,   249,
2210 <     249,   172,   164,   249,   232,   249,   249,    25,   249,   249,
2211 <     249,   107,   247,   249,   735,   249,   196,   197,   249,     1,
2212 <     831,   832,   833,   834,   835,   249,     8,     9,   249,     1,
2213 <      48,   249,   249,   205,    52,   249,   249,    19,   249,   249,
2214 <     249,   249,   249,   249,   247,    27,   137,   249,   249,    31,
2215 <      32,   249,   232,    25,   249,   117,    38,   249,     1,   249,
2216 <      42,    43,   249,    45,   249,   249,   249,   239,   240,    51,
2217 <     249,   249,   249,   249,   249,   247,    48,   239,    60,    61,
2218 <      52,   249,   249,    65,   249,   247,   249,     1,   249,     3,
2219 <      72,   249,     6,    36,    76,    77,   249,   249,    80,   249,
2220 <     249,    83,    84,   246,   249,   249,   246,   249,   249,    91,
2221 <      24,    25,   249,   249,   132,    97,    98,   249,   100,   101,
2222 <     102,   103,   104,   141,   142,   249,     5,   249,   249,   249,
2223 <     249,    74,   249,   115,    48,   107,   232,   249,    52,   249,
2224 <     249,   123,   124,   125,   249,   127,   249,   249,   130,   131,
2225 <     249,   249,   134,   138,   138,   182,   246,   175,    37,    73,
2226 <     132,    75,   117,   145,   107,   117,   109,   110,   182,   182,
2227 <     117,   117,   117,    87,   182,   182,   117,    56,   182,   151,
2228 <     182,   182,   182,    62,   182,   167,   246,   169,    67,     1,
2229 <      69,   173,   246,   107,   249,   177,   178,   179,   180,   181,
2230 <     249,    13,    81,   185,   186,   249,   249,   150,    81,   152,
2231 <     153,   249,   194,   249,   232,   249,   249,   249,   249,   249,
2232 <     249,    33,    34,   137,   249,   168,   105,    39,   249,    41,
2233 <     246,   138,   249,   112,   249,   117,   138,   151,   249,   249,
2234 <     249,   223,   214,   225,   249,   227,   249,   126,   182,   117,
2235 <     164,   233,   249,   249,   249,   249,   238,   249,   249,   249,
2236 <     232,   243,   205,   246,   182,   144,     1,   146,   147,   249,
2237 <     249,    81,   182,    85,    86,   117,   138,   182,   117,   117,
2238 <      92,    93,   117,   156,     0,     1,   182,    22,    23,     5,
2239 <     182,   182,   138,   182,    29,   117,   239,   240,   117,   117,
2240 <     117,   113,   114,   117,   138,    21,   117,   182,   182,    25,
2241 <     249,  1174,    28,   182,   249,   188,   128,   129,   182,    35,
2242 <     117,   182,   138,   182,   182,   239,   182,   139,   207,   182,
2243 <     138,   204,   182,   182,    50,   182,   148,    20,    54,    55,
2244 <     219,    57,   221,   246,   217,   218,   156,    63,   249,   182,
2245 <     249,   249,   231,   246,   249,   228,   229,   230,   231,    94,
2246 <      95,    96,   241,    79,    99,     1,    49,   182,   241,   249,
2247 <     246,   249,   107,    89,    90,    58,   182,   249,   188,   249,
2248 <     138,    64,   249,   249,   119,   120,   249,   138,   182,   249,
2249 <     106,   246,   249,   182,   204,   249,   182,   249,   249,    82,
2250 <     135,   136,   246,   248,    40,   246,   122,   217,   218,   249,
2251 <     138,   182,   249,   249,   246,   182,   246,    53,   228,   229,
2252 <     230,   231,   234,   235,   236,   108,   249,   138,   163,   249,
2253 <      66,   241,    68,   116,    70,    71,   249,   182,   138,   138,
2254 <     156,   138,   249,   138,   249,   249,   249,   138,   138,   165,
2255 <     166,   117,    88,   138,   170,   171,   138,   249,   189,   190,
2256 <     191,   192,   193,   246,   195,   196,   246,   249,   199,   200,
2257 <     201,   246,   249,   204,   157,   206,   207,   208,   246,   210,
2258 <     211,   212,   138,   246,   215,   246,   246,   246,   117,   220,
2259 <     246,   246,   246,   176,   246,   117,   246,   189,   190,   191,
2260 <     192,   193,   246,   195,   196,   246,   222,   199,   200,   201,
2261 <     246,   117,   204,   246,   206,   207,   208,   246,   210,   211,
2262 <     212,   246,   246,   215,   246,   246,   246,   246,   220,   189,
2263 <     190,   191,   192,   193,   246,   195,   196,   117,   117,   199,
2264 <     200,   201,   117,   138,   204,   117,   206,   207,   208,   117,
2265 <     210,   211,   212,   246,   138,   215,   138,   138,   182,   117,
2266 <     220,   249,   138,   249,   138,   138,   246,   138,   138,   138,
2267 <     246,   138,   138,   138,   246,   138,   138,   246,   246,   246,
2268 <     182,   246,   246,   246,   246,   246,   138,   246,   246,   246,
2269 <     138,   246,   246,   246,   246,   246,   246,   246,   246,   246,
2270 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
2271 <     138,   246,   246,   246,   246,   246,   246,   138,   246,   246,
2272 <     246,   246,   182,   246,   117,   246,   246,   246,   246,   246,
2273 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   138,
2274 <     138,   138,   249,   246,   249,   249,   246,   138,   249,   138,
2275 <     246,   249,   138,   138,   117,   246,   246,   246,   246,   246,
2276 <     138,   138,   182,   249,   138,   138,   249,   138,   246,   138,
2277 <     138,   138,   138,   138,   138,   117,  1228,   254,    74,  1023,
2278 <    1315,   143,   246,   143,   138,   246,  1285,   246,  1283,   246,
2279 <     246,   246,   246,   246,  1273,   246,   246,   246,   290,   246,
2280 <     246,   246,   246,   246,   246,   246,   246,  1169,   246,   245,
2281 <     249,   246,   249,   246,   246,   246,   246,   246,   546,   246,
2282 <     246,   246,   246,   246,   246,   521,   187,   246,   246,   246,
2283 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
2284 <     246,   246,   246,   246,   246,   246,   246,   496,  1269,  1288,
2285 <     246,   246,   246,   601,   246,  1290,   246,   351,   246,   246,
2286 <     560,  1259,   246,   246,   246,   246,   246,   246,   593,  1271,
2287 <     246,   246,   511,   123,   246,  1261,   182,  1122,  1120,  1267,
2288 <     250,   479,   381,  1265,    98,    -1,    -1,   246,    -1,    -1,
2289 <     246,   249,   249,   246,   246,   246,   246,   246,   246,   246,
2290 <     246,   246,   246,   246,    -1,   246,    -1,   246,   246,   249,
2291 <     246,   246,    -1,    -1,    -1,   400,    -1,    -1,    -1,   412,
2292 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2322 <      -1,   268,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2170 >     456,   319,   320,     1,   110,     1,     1,     3,   243,   327,
2171 >       6,    11,    11,   243,     1,   243,     1,     1,   243,     1,
2172 >       1,   243,     1,     1,   243,     1,   243,    23,    23,   241,
2173 >       1,   241,   243,   245,     1,   245,     1,   243,    13,    14,
2174 >      15,     1,   243,    30,     1,   243,    42,    42,    46,     1,
2175 >      46,    46,    30,    40,    60,   243,     8,     9,    23,     1,
2176 >     243,     1,    40,    20,     1,     1,    18,    65,     1,    65,
2177 >     243,    67,    70,   243,    26,     1,   243,    42,     1,   243,
2178 >      32,    46,     1,    79,    36,    37,    70,    39,    70,   241,
2179 >     242,     1,   243,    45,    70,   413,   414,   829,   830,   831,
2180 >     832,   833,    54,    55,   100,   100,   212,    59,   243,   427,
2181 >       1,   243,    64,   100,   432,   100,    68,    69,     1,   100,
2182 >      72,   100,   100,    75,    76,   443,   444,    98,   446,    20,
2183 >     125,    83,   130,    70,   130,   110,   454,   455,    90,    91,
2184 >     458,    93,    94,    95,    96,    97,   243,   104,    10,   144,
2185 >      12,   133,   133,     1,     1,   126,   108,     4,   100,   241,
2186 >     125,   176,   177,   159,   116,   117,   118,   100,   120,   134,
2187 >     135,   123,   124,     1,   100,   127,   133,   100,   178,   178,
2188 >     244,   100,    30,   244,   640,   166,   138,   166,    98,   244,
2189 >       1,    38,   188,   133,    41,   244,   133,   133,   204,    27,
2190 >      28,   244,   208,   244,   169,    33,   241,    35,   241,   241,
2191 >     245,   163,   245,   104,   209,   167,   126,   100,    66,   171,
2192 >     172,   173,   174,   175,   166,   241,   166,   179,   180,   245,
2193 >     166,   244,   227,   166,   244,    82,   244,   189,   234,     1,
2194 >     166,   244,   133,   166,   242,   563,   242,   242,   227,    77,
2195 >      78,   244,   100,   100,   102,   103,    84,    85,    86,    21,
2196 >      22,   242,   227,    25,   242,   232,   242,   219,   220,   241,
2197 >     222,   242,   232,   240,   244,   242,   228,   242,   106,   107,
2198 >     240,   233,     1,   166,   240,   242,   238,   227,   110,   100,
2199 >     242,   227,   241,   121,   122,   143,   245,   145,   146,   147,
2200 >     148,   227,   242,   241,   132,   242,   239,   245,     1,   242,
2201 >     244,     4,   630,   141,   162,    34,   242,   176,   177,   242,
2202 >     638,   639,   133,   242,   244,    87,    88,    89,    47,   244,
2203 >      92,   153,   154,   155,   156,   157,   149,   150,   100,   244,
2204 >     188,    60,    61,    62,    63,    38,   208,     1,    41,   241,
2205 >     112,   113,   200,   245,   241,   166,   239,   241,   245,   221,
2206 >       1,    80,   149,   150,   241,   241,   128,   129,   245,   245,
2207 >     197,   198,   241,   241,     1,    73,   245,   245,   244,   244,
2208 >     227,     8,     9,   244,   241,   131,   234,   235,   245,    82,
2209 >     244,    18,    46,    34,   242,   242,   158,   131,   244,    26,
2210 >     241,   229,   230,   231,   245,    32,    47,   100,   726,    36,
2211 >      37,    65,    39,   244,   242,   244,    70,   241,    45,    60,
2212 >      61,    62,    63,     1,   244,   241,   244,    54,    55,   245,
2213 >     244,   131,    59,   975,   976,   977,   244,    64,    50,    80,
2214 >     244,    68,    69,   244,   244,    72,   244,   244,    75,    76,
2215 >     244,   244,    30,   151,   244,   244,    83,     1,   244,    71,
2216 >     244,    73,   244,    90,    91,     1,    93,    94,    95,    96,
2217 >      97,   244,   244,     1,   244,     3,   130,   244,     6,    23,
2218 >     242,   108,     5,   244,   182,   244,   244,    23,    66,   116,
2219 >     117,   118,   244,   120,   192,    23,   123,   124,    42,   244,
2220 >     127,   199,    46,   115,   244,   244,    42,   244,    31,   244,
2221 >      46,   138,   244,   211,    42,   213,   214,   244,    46,   244,
2222 >     244,   244,   100,   242,   102,   103,   244,    50,   226,   244,
2223 >     244,   244,   244,    56,   227,   244,   163,    65,   236,    67,
2224 >     167,   244,   244,   244,   171,   172,   173,   174,   175,   244,
2225 >      73,    79,   179,   180,   244,   244,   244,   244,   244,   244,
2226 >     244,   244,   189,   244,   100,   143,   244,   145,   146,   147,
2227 >     148,   244,   100,   244,   244,    98,   244,   244,   244,   191,
2228 >     192,   125,   105,   244,   162,   244,   244,   244,   244,   125,
2229 >     134,   135,   219,   220,   244,   222,   119,   244,   244,   244,
2230 >     244,   228,   130,   110,   244,   244,   233,   244,   144,   244,
2231 >     188,   238,   110,     1,   137,   227,   139,   140,   176,   176,
2232 >     110,   110,   200,   110,   110,   169,   176,   176,   110,   176,
2233 >     176,   159,   241,    73,   176,   176,   176,   241,     1,    27,
2234 >      28,   244,   244,   244,   244,    33,   244,    35,   244,   244,
2235 >     244,   244,   244,   244,   244,   244,   234,   235,    21,    22,
2236 >     188,   241,    25,   244,   131,   244,   241,   244,   244,   192,
2237 >     244,   244,   244,   209,    60,   244,   244,   244,   244,   202,
2238 >     244,   244,   244,   227,   244,   244,   110,   110,   211,    77,
2239 >      78,   227,   215,   176,   217,   176,    84,    85,    86,   176,
2240 >     131,   176,   110,   226,   110,   110,   234,     0,     1,   131,
2241 >     176,   151,     5,   236,  1170,   176,   176,   176,   106,   107,
2242 >     110,   110,   131,   110,    87,    88,    89,    20,   110,    92,
2243 >      23,    24,   110,   121,   122,   110,    29,   100,   176,    60,
2244 >     176,   244,   182,   176,   132,   244,   176,   176,   176,   112,
2245 >     113,    44,   192,   141,   110,    48,    49,   176,    51,   199,
2246 >     176,   176,   131,   176,    57,   128,   129,   241,   244,   176,
2247 >     241,   211,   176,   213,   214,   176,    60,   176,    71,   244,
2248 >     244,   244,   244,   241,   131,   241,   226,   244,    81,    82,
2249 >     244,   244,   244,   244,   244,   158,   236,   183,   184,   185,
2250 >     186,   187,   244,   244,   190,   191,    99,   244,   194,   195,
2251 >     196,   131,   244,   199,   241,   201,   202,   203,   244,   205,
2252 >     206,   207,   115,   243,   210,   176,   244,   241,   176,   131,
2253 >     216,   176,   244,   244,   244,   176,   176,   131,   241,   241,
2254 >     176,   229,   230,   231,   244,   131,   244,   244,   244,   244,
2255 >     131,   131,   131,   131,   131,   131,   131,   110,   151,    19,
2256 >     131,   131,   183,   184,   185,   186,   187,   160,   161,   190,
2257 >     191,   164,   165,   194,   195,   196,   241,   241,   199,   241,
2258 >     201,   202,   203,    43,   205,   206,   207,   244,   131,   210,
2259 >     244,   244,    52,   110,   110,   216,   110,   241,    58,   183,
2260 >     184,   185,   186,   187,   241,   110,   190,   191,   241,   241,
2261 >     194,   195,   196,   241,    74,   199,   241,   201,   202,   203,
2262 >     110,   205,   206,   207,   241,   218,   210,   241,   241,   241,
2263 >     241,   241,   216,   241,   241,   241,   241,   241,   241,   110,
2264 >     241,   101,   241,   241,   241,   131,   110,   110,   131,   109,
2265 >     241,   131,   176,   131,   244,   131,   131,   131,   110,   131,
2266 >     110,   131,   131,   131,   131,   131,   131,   241,   241,   241,
2267 >     176,   110,   131,   241,   241,   244,   241,   241,   241,   241,
2268 >     241,   241,   241,   241,   241,   241,   241,   241,   131,   241,
2269 >     241,   241,   152,   241,   241,   241,   241,   241,   131,   241,
2270 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2271 >     170,   241,   241,   241,   241,   241,   241,   131,   241,   241,
2272 >     241,   241,   241,   241,   131,   176,   241,   131,   241,   241,
2273 >     241,   241,   241,   241,   131,   131,   131,   244,   241,   131,
2274 >     244,   241,   244,   244,   241,   244,   131,   241,   241,   241,
2275 >     241,   131,   176,   131,   131,   244,   131,   244,   131,   241,
2276 >     131,   131,   131,   131,   241,   244,   131,   131,   241,   136,
2277 >     136,   110,   131,    74,  1057,  1055,  1019,  1309,  1280,   241,
2278 >     241,  1278,  1268,   241,   241,   241,   241,   241,   241,   285,
2279 >     538,  1165,   241,   241,   241,   241,   241,   241,   489,   241,
2280 >     241,   241,  1264,   241,   241,   241,   238,   241,   552,   244,
2281 >     241,   241,   241,   241,   241,   241,   241,  1282,   241,   241,
2282 >     241,   241,   241,   241,   241,   241,   241,   181,   241,   241,
2283 >     241,   241,   241,   241,   514,   241,   241,  1284,   241,   241,
2284 >     241,   241,   241,   241,  1254,   588,  1266,   241,   241,   596,
2285 >     241,   241,   241,   241,   241,   241,   123,   241,   241,   241,
2286 >     241,   349,   241,  1256,   179,   241,   504,   241,  1118,   241,
2287 >    1116,  1262,   472,  1260,    98,    -1,    -1,   408,    -1,   241,
2288 >     378,    -1,   245,   244,   244,   241,   241,   244,   241,   241,
2289 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2290 >     241,   241,    -1,   241,    -1,    -1,    -1,    -1,    -1,   246,
2291 >      -1,   396,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2292 >      -1,    -1,    -1,    -1,   260,    -1,    -1,    -1,    -1,    -1,
2293        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2294 <      -1,    -1,    -1,   308
2294 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   306
2295   };
2296  
2297   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2298     symbol of state STATE-NUM.  */
2299   static const yytype_uint16 yystos[] =
2300   {
2301 <       0,   252,     0,     1,     5,    21,    25,    28,    35,    50,
2302 <      54,    55,    57,    63,    79,    89,    90,   106,   122,   156,
2303 <     165,   166,   170,   171,   222,   253,   258,   263,   281,   287,
2304 <     302,   320,   337,   351,   366,   373,   377,   387,   396,   417,
2305 <     427,   433,   437,   447,   510,   526,   547,   246,   247,   248,
2306 <     248,   321,   397,   428,   248,   438,   248,   511,   352,   418,
2307 <     338,   248,   248,   303,   367,   248,   248,   378,   388,   248,
2308 <       1,    36,    46,   107,   282,   283,   284,   285,   286,     1,
2309 <      13,    33,    34,    39,    41,    85,    86,    92,    93,   113,
2310 <     114,   128,   129,   139,   148,   234,   235,   236,   527,   528,
2311 <     529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
2312 <     539,   540,   541,   542,   543,   544,   545,   546,   248,   248,
2313 <     248,     1,    78,   434,   435,   436,   248,     1,     8,     9,
2314 <      19,    27,    31,    32,    38,    42,    43,    45,    51,    60,
2315 <      61,    65,    72,    76,    77,    80,    83,    84,    91,    97,
2316 <      98,   100,   101,   102,   103,   104,   115,   123,   124,   125,
2317 <     127,   130,   131,   134,   145,   167,   169,   173,   177,   178,
2318 <     179,   180,   181,   185,   186,   194,   223,   225,   227,   233,
2319 <     238,   243,   448,   449,   450,   451,   452,   453,   454,   455,
2301 >       0,   247,     0,     1,     5,    20,    23,    24,    29,    44,
2302 >      48,    49,    51,    57,    71,    81,    82,    99,   115,   151,
2303 >     160,   161,   164,   165,   218,   248,   253,   258,   280,   286,
2304 >     300,   318,   335,   349,   364,   371,   375,   385,   394,   414,
2305 >     424,   430,   434,   444,   504,   520,   541,   241,   242,   243,
2306 >     243,   319,   395,   425,   243,   435,   243,   505,   350,   415,
2307 >     336,   243,   243,   301,   365,   243,   243,   376,   386,   243,
2308 >       1,    30,    40,   100,   281,   282,   283,   284,   285,     1,
2309 >      27,    28,    33,    35,    77,    78,    84,    85,    86,   106,
2310 >     107,   121,   122,   132,   141,   229,   230,   231,   521,   522,
2311 >     523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
2312 >     533,   534,   535,   536,   537,   538,   539,   540,   243,   243,
2313 >     243,     1,    70,   431,   432,   433,   243,     1,     8,     9,
2314 >      18,    26,    32,    36,    37,    39,    45,    54,    55,    59,
2315 >      64,    68,    69,    72,    75,    76,    83,    90,    91,    93,
2316 >      94,    95,    96,    97,   108,   116,   117,   118,   120,   123,
2317 >     124,   127,   138,   163,   167,   171,   172,   173,   174,   175,
2318 >     179,   180,   189,   219,   220,   222,   228,   233,   238,   445,
2319 >     446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
2320       456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
2321       466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
2322       476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
2323 <     486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
2324 <     496,   497,   498,   502,   506,   507,   508,   509,   248,   248,
2325 <     248,   248,     1,   224,   237,   288,   289,   290,   291,   292,
2326 <     293,     1,   105,   133,   259,   260,   261,   262,   248,   248,
2327 <       1,    40,    53,    66,    68,    70,    71,    88,   548,   549,
2328 <     550,   551,   552,   553,   554,   555,   556,     1,    36,    74,
2329 <     107,   109,   110,   150,   152,   153,   168,   205,   239,   240,
2330 <     264,   265,   266,   270,   271,   272,   273,   274,   275,   276,
2331 <     277,   278,   279,   280,   248,   248,     1,   107,   374,   375,
2332 <     376,   246,   249,   249,   249,   247,   283,   249,   249,   249,
2333 <     249,   249,   249,   249,   249,   249,   249,   249,   249,   249,
2334 <     249,   249,   249,   249,   249,   247,   528,     1,    22,    23,
2335 <      29,    94,    95,    96,    99,   107,   119,   120,   135,   136,
2336 <     163,   322,   323,   324,   325,   326,   327,   328,   329,   330,
2337 <     331,   332,   333,   334,   335,   336,     1,     3,     6,    24,
2338 <      25,    48,    52,    73,    75,    87,   107,   137,   151,   164,
2339 <     239,   398,   399,   400,   401,   402,   403,   404,   405,   406,
2340 <     407,   411,   412,   413,   414,   415,   416,     1,    78,   140,
2341 <     429,   430,   431,   432,   249,   247,   435,     1,   107,   140,
2342 <     172,   439,   443,   444,   445,   446,   249,   249,   249,   249,
2343 <     249,   249,   249,   249,   249,   249,   249,   249,   249,   249,
2344 <     249,   249,   249,   249,   249,   249,   249,   249,   249,   249,
2345 <     249,   249,   249,   249,   249,   249,   503,   249,   499,   249,
2346 <     249,   249,   249,   249,   249,   249,   249,   249,   249,   249,
2347 <     249,   249,   249,   249,   249,   249,   249,   249,   249,   249,
2348 <     247,   449,     1,     4,    44,    47,    90,   107,   232,   512,
2349 <     513,   514,   515,   516,   520,   521,   522,     1,    25,    48,
2350 <      52,   132,   141,   142,   175,   232,   353,   354,   355,   356,
2351 <     357,   358,   359,   363,   364,   365,     1,   140,   172,   232,
2352 <     419,   423,   424,   425,   426,     1,    52,    73,    78,   137,
2353 <     339,   343,   344,   345,   349,   350,   246,   249,   249,   247,
2354 <     289,   245,   246,   249,   249,   247,   260,     1,    25,    48,
2355 <      52,   107,   132,   151,   214,   232,   304,   305,   306,   307,
2356 <     308,   309,   310,   311,   312,   316,     1,    21,   111,   140,
2357 <     368,   369,   370,   371,   372,   249,   249,   249,   249,   249,
2358 <     249,   249,   247,   549,   246,   249,   249,   249,   249,   249,
2359 <     249,   249,   267,   249,   249,   249,   249,   247,   265,     1,
2360 <     107,   172,   232,   379,   380,   381,   382,   383,     1,   107,
2361 <     172,   389,   390,   391,   392,   249,   247,   375,   138,   138,
2362 <     138,   246,   182,   117,   117,   182,   182,   117,   255,   255,
2363 <     117,   117,   182,   182,   117,   255,   182,   182,   182,   182,
2364 <     182,   246,   246,   249,   249,   249,   249,   249,   249,   249,
2365 <     249,   249,   249,   249,   249,   249,   247,   323,   246,   249,
2366 <     249,   249,   249,   249,   408,   249,   249,   249,   249,   249,
2367 <     249,   249,   249,   247,   399,   249,   249,   247,   430,   138,
2368 <     246,   249,   249,   440,   247,   444,   182,   255,   255,   117,
2369 <     138,   117,   182,   182,   117,   138,   182,   117,   117,   117,
2370 <     182,   182,   182,   255,   138,   182,   117,   117,   255,   117,
2371 <     117,   138,   117,   117,   182,   182,   249,   182,   249,   255,
2372 <     255,   182,   255,   138,   182,   182,   182,   182,   183,   182,
2373 <     183,   182,   182,   255,   255,   117,   257,   138,   255,   182,
2374 <     182,   182,   182,   246,   523,   249,   249,   517,   249,   249,
2375 <     247,   513,   246,   249,   249,   360,   249,   249,   249,   249,
2376 <     249,   247,   354,   249,   420,   249,   247,   424,   246,   340,
2377 <     249,   249,   249,   247,   344,   182,   182,   246,   248,   138,
2378 <     138,   246,   246,   249,   249,   317,   249,   249,   249,   313,
2379 <     249,   247,   305,   246,   249,   249,   249,   247,   369,   182,
2380 <     182,   182,   138,   182,   182,   255,   246,   138,   182,   138,
2381 <     138,   138,   138,   138,   249,   138,   117,   138,   138,   246,
2382 <     246,   249,   384,   249,   247,   380,   246,   249,   393,   247,
2383 <     390,   138,   246,   246,   246,   246,   246,   246,   246,   246,
2384 <     246,   158,   159,   160,   161,   162,   254,   255,   246,   246,
2385 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
2386 <     246,   117,   117,   255,   117,   117,   117,   117,   138,   117,
2387 <     117,   255,   255,   257,   246,   138,   202,   203,   138,   138,
2388 <     182,   249,   138,   138,   138,   138,   117,   138,   138,   138,
2389 <     246,   138,   138,   246,   246,   138,   138,   249,   246,   246,
2390 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
2391 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
2392 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   189,
2393 <     190,   191,   192,   193,   195,   196,   199,   200,   201,   204,
2394 <     206,   207,   208,   210,   211,   212,   215,   220,   504,   505,
2395 <     246,   189,   190,   191,   192,   193,   195,   196,   199,   200,
2396 <     201,   204,   206,   207,   208,   210,   211,   212,   215,   220,
2397 <     500,   501,   246,   246,   246,   246,   246,   246,   246,   246,
2398 <     246,   246,   246,   246,   246,   246,   246,   246,    14,    15,
2399 <      16,   256,   257,   246,   246,   246,   246,   246,   246,   246,
2400 <     249,   255,   182,   249,   138,   138,   246,   138,   182,   249,
2401 <     138,   117,   138,   138,   138,   246,   138,   249,   138,   246,
2402 <     249,   138,   138,   117,   347,   348,   246,   246,   246,     1,
2403 <     107,   172,   244,   294,   295,   296,   297,   298,   246,   246,
2404 <     138,   182,   249,   138,   138,   138,   249,   138,   246,   138,
2405 <     138,   138,   246,   246,   246,   246,   246,   246,   246,   246,
2406 <     246,   246,   246,   246,   246,   246,   246,   154,   155,   268,
2407 <     269,   246,   246,   246,   246,   138,   249,   138,   246,   138,
2408 <     249,   246,   246,   254,   254,   254,   254,   254,   246,   246,
2409 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
2410 <     246,   246,   246,   246,   246,   246,   246,    10,    12,    26,
2411 <      30,   226,   409,   410,   246,   246,   246,   246,   246,   246,
2412 <     246,   246,   246,   246,   246,   246,   143,   441,   442,   246,
2413 <     250,   246,   250,   256,   256,   256,    11,   184,   524,   525,
2414 <     246,   246,    11,   184,   518,   519,   246,   246,   246,   246,
2415 <      20,    49,    58,    64,    82,   108,   116,   157,   176,   361,
2416 <     362,   246,   246,   246,   246,   246,   246,   143,   421,   422,
2417 <     246,    66,   209,   213,   341,   342,   246,   246,   187,   250,
2418 <     346,   246,   249,   299,   249,   247,   295,   246,   246,     5,
2419 <      37,    56,    62,    67,    69,    81,   105,   112,   126,   144,
2420 <     146,   147,   207,   219,   221,   231,   241,   318,   319,   246,
2421 <     246,   246,   189,   190,   191,   192,   193,   195,   196,   199,
2422 <     200,   201,   204,   206,   207,   208,   210,   211,   212,   215,
2423 <     220,   314,   315,   246,   246,   246,   246,   246,   250,   246,
2424 <      81,   156,   188,   204,   217,   218,   228,   229,   230,   231,
2425 <     241,   385,   386,   246,   246,    81,   156,   188,   204,   217,
2426 <     218,   228,   229,   230,   231,   241,   394,   395,   246,   250,
2427 <     246,   250,   505,   501,   246,   250,   246,   250,   246,   250,
2428 <     246,   250,   246,   250,   117,   348,   246,   138,   249,   216,
2429 <     257,   246,   246,   250,   246,   250,   269,   246,   250,   246,
2430 <     250,   410,   442,   525,   519,   362,   422,   342,   246,    56,
2431 <      79,    81,   122,   196,   197,   232,   300,   301,   246,   246,
2432 <     319,   315,   386,   395,   246,   250,   301
2323 >     486,   487,   488,   489,   490,   491,   492,   496,   500,   501,
2324 >     502,   503,   243,   243,   243,   243,     1,   232,   287,   288,
2325 >     289,   290,   291,     1,    98,   126,   254,   255,   256,   257,
2326 >     243,   243,     1,    34,    47,    60,    61,    62,    63,    80,
2327 >     542,   543,   544,   545,   546,   547,   548,   549,   550,     1,
2328 >      30,    66,   100,   102,   103,   143,   145,   146,   147,   148,
2329 >     162,   188,   200,   234,   235,   259,   260,   261,   262,   267,
2330 >     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2331 >     278,   279,   243,   243,     1,   100,   372,   373,   374,   241,
2332 >     244,   244,   244,   242,   282,   244,   244,   244,   244,   244,
2333 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2334 >     244,   244,   244,   242,   522,     1,    21,    22,    25,    87,
2335 >      88,    89,    92,   100,   112,   113,   128,   129,   158,   320,
2336 >     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
2337 >     331,   332,   333,   334,     1,     3,     6,    23,    42,    46,
2338 >      65,    67,    79,   100,   130,   159,   188,   234,   396,   397,
2339 >     398,   399,   400,   401,   402,   403,   404,   405,   409,   410,
2340 >     411,   412,   413,     1,    70,   133,   426,   427,   428,   429,
2341 >     244,   242,   432,     1,   100,   133,   166,   436,   440,   441,
2342 >     442,   443,   244,   244,   244,   244,   244,   244,   244,   244,
2343 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2344 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2345 >     497,   244,   493,   244,   244,   244,   244,   244,   244,   244,
2346 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2347 >     244,   244,   244,   242,   446,     1,     4,    38,    41,    82,
2348 >     100,   227,   506,   507,   508,   509,   510,   514,   515,   516,
2349 >       1,    23,    42,    46,   125,   134,   135,   169,   227,   351,
2350 >     352,   353,   354,   355,   356,   357,   361,   362,   363,     1,
2351 >     133,   166,   227,   416,   420,   421,   422,   423,     1,    46,
2352 >      65,    70,   130,   337,   341,   342,   343,   347,   348,   241,
2353 >     244,   242,   288,   240,   241,   244,   244,   242,   255,     1,
2354 >      23,    42,    46,   100,   125,   144,   209,   227,   302,   303,
2355 >     304,   305,   306,   307,   308,   309,   310,   314,     1,    20,
2356 >     104,   133,   366,   367,   368,   369,   370,   244,   244,   244,
2357 >     244,   244,   244,   244,   242,   543,   241,   244,   244,   244,
2358 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2359 >     244,   244,   242,   260,     1,   100,   166,   227,   377,   378,
2360 >     379,   380,   381,     1,   100,   166,   387,   388,   389,   390,
2361 >     244,   242,   373,   131,   131,   131,   241,   110,   110,   176,
2362 >     176,   110,   250,   250,   110,   110,   110,   176,   176,   110,
2363 >     250,   176,   176,   176,   176,   176,   241,   241,   244,   244,
2364 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2365 >     244,   242,   321,   241,   244,   244,   244,   244,   406,   244,
2366 >     244,   244,   244,   244,   244,   244,   244,   242,   397,   244,
2367 >     244,   242,   427,   131,   241,   244,   244,   437,   242,   441,
2368 >     176,   250,   250,   110,   176,   176,   110,   131,   176,   110,
2369 >     110,   110,   176,   176,   176,   250,   131,   176,   110,   110,
2370 >     250,   110,   110,   131,   110,   110,   176,   176,   244,   176,
2371 >     244,   250,   250,   176,   250,   176,   176,   176,   176,   177,
2372 >     176,   177,   176,   176,   250,   250,   110,   252,   131,   250,
2373 >     176,   176,   176,   176,   241,   517,   244,   244,   511,   244,
2374 >     244,   242,   507,   241,   244,   244,   358,   244,   244,   244,
2375 >     244,   244,   242,   352,   244,   417,   244,   242,   421,   241,
2376 >     338,   244,   244,   244,   242,   342,   176,   241,   243,   131,
2377 >     131,   241,   241,   244,   244,   315,   244,   244,   244,   311,
2378 >     244,   242,   303,   241,   244,   244,   244,   242,   367,   176,
2379 >     176,   176,   131,   176,   176,   250,   241,   131,   176,   131,
2380 >     131,   131,   131,   131,   131,   149,   150,   263,   264,   149,
2381 >     150,   265,   266,   131,   131,   110,   131,   131,   241,   241,
2382 >     244,   382,   244,   242,   378,   241,   244,   391,   242,   388,
2383 >     131,   241,   241,   241,   241,   241,   241,   241,   241,   153,
2384 >     154,   155,   156,   157,   249,   250,   241,   241,   241,   241,
2385 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2386 >     110,   110,   250,   110,   110,   110,   110,   131,   110,   110,
2387 >     250,   250,   252,   241,   131,   197,   198,   131,   176,   244,
2388 >     131,   131,   131,   131,   110,   131,   131,   131,   241,   131,
2389 >     131,   241,   241,   131,   131,   244,   241,   241,   241,   241,
2390 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2391 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2392 >     241,   241,   241,   241,   241,    60,   183,   184,   185,   186,
2393 >     187,   190,   191,   194,   195,   196,   199,   201,   202,   203,
2394 >     205,   206,   207,   210,   216,   498,   499,   241,    60,   183,
2395 >     184,   185,   186,   187,   190,   191,   194,   195,   196,   199,
2396 >     201,   202,   203,   205,   206,   207,   210,   216,   494,   495,
2397 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2398 >     241,   241,   241,   241,   241,    13,    14,    15,   251,   252,
2399 >     241,   241,   241,   241,   241,   241,   241,   244,   250,   176,
2400 >     244,   131,   131,   241,   131,   176,   244,   131,   110,   131,
2401 >     131,   131,   241,   131,   244,   131,   241,   244,   131,   131,
2402 >     110,   345,   346,   241,   241,     1,   100,   166,   239,   292,
2403 >     293,   294,   295,   296,   241,   241,   131,   176,   244,   131,
2404 >     131,   131,   244,   131,   241,   131,   131,   131,   241,   241,
2405 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2406 >     241,   241,   241,   241,   241,   245,   241,   245,   241,   241,
2407 >     241,   241,   241,   131,   244,   131,   241,   131,   244,   241,
2408 >     241,   249,   249,   249,   249,   249,   241,   241,   241,   241,
2409 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2410 >     241,   241,   241,   241,    10,    12,   208,   221,   407,   408,
2411 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2412 >     241,   241,   136,   438,   439,   241,   245,   241,   245,   251,
2413 >     251,   251,    11,   178,   518,   519,   241,   241,    11,   178,
2414 >     512,   513,   241,   241,   241,   241,    19,    43,    52,    58,
2415 >      74,   101,   109,   152,   170,   359,   360,   241,   241,   241,
2416 >     241,   241,   241,   136,   418,   419,   241,    60,   204,   208,
2417 >     339,   340,   241,   241,   181,   245,   344,   241,   244,   297,
2418 >     244,   242,   293,   241,   241,     5,    31,    50,    56,    73,
2419 >      98,   105,   119,   137,   139,   140,   192,   202,   211,   215,
2420 >     217,   226,   236,   316,   317,   241,   241,   241,    60,   183,
2421 >     184,   185,   186,   187,   190,   191,   194,   195,   196,   199,
2422 >     201,   202,   203,   205,   206,   207,   210,   216,   312,   313,
2423 >     241,   241,   241,   241,   264,   266,   241,    73,   151,   182,
2424 >     192,   199,   211,   213,   214,   226,   236,   383,   384,   241,
2425 >     241,    73,   151,   182,   192,   199,   211,   213,   214,   226,
2426 >     236,   392,   393,   241,   245,   241,   245,   499,   495,   241,
2427 >     245,   241,   245,   241,   245,   241,   245,   241,   245,   110,
2428 >     346,   241,   131,   244,   212,   252,   241,   241,   245,   241,
2429 >     245,   241,   245,   241,   245,   408,   439,   519,   513,   360,
2430 >     419,   340,   241,    50,    71,    73,   115,   191,   192,   227,
2431 >     298,   299,   241,   241,   317,   313,   384,   393,   241,   245,
2432 >     299
2433   };
2434  
2435   #define yyerrok         (yyerrstatus = 0)
# Line 2489 | Line 2459 | static const yytype_uint16 yystos[] =
2459  
2460   #define YYRECOVERING()  (!!yyerrstatus)
2461  
2462 < #define YYBACKUP(Token, Value)                                  \
2463 < do                                                              \
2464 <  if (yychar == YYEMPTY && yylen == 1)                          \
2465 <    {                                                           \
2466 <      yychar = (Token);                                         \
2467 <      yylval = (Value);                                         \
2468 <      YYPOPSTACK (1);                                           \
2469 <      goto yybackup;                                            \
2470 <    }                                                           \
2471 <  else                                                          \
2472 <    {                                                           \
2462 > #define YYBACKUP(Token, Value)                                  \
2463 > do                                                              \
2464 >  if (yychar == YYEMPTY)                                        \
2465 >    {                                                           \
2466 >      yychar = (Token);                                         \
2467 >      yylval = (Value);                                         \
2468 >      YYPOPSTACK (yylen);                                       \
2469 >      yystate = *yyssp;                                         \
2470 >      goto yybackup;                                            \
2471 >    }                                                           \
2472 >  else                                                          \
2473 >    {                                                           \
2474        yyerror (YY_("syntax error: cannot back up")); \
2475        YYERROR;                                                  \
2476      }                                                           \
# Line 2594 | Line 2565 | yy_symbol_value_print (yyoutput, yytype,
2565      YYSTYPE const * const yyvaluep;
2566   #endif
2567   {
2568 +  FILE *yyo = yyoutput;
2569 +  YYUSE (yyo);
2570    if (!yyvaluep)
2571      return;
2572   # ifdef YYPRINT
# Line 2845 | Line 2818 | static int
2818   yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
2819                  yytype_int16 *yyssp, int yytoken)
2820   {
2821 <  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
2821 >  YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
2822    YYSIZE_T yysize = yysize0;
2823    YYSIZE_T yysize1;
2824    enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2825    /* Internationalized format string. */
2826 <  const char *yyformat = 0;
2826 >  const char *yyformat = YY_NULL;
2827    /* Arguments of yyformat. */
2828    char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2829    /* Number of reported tokens (one for the "unexpected", one per
# Line 2910 | Line 2883 | yysyntax_error (YYSIZE_T *yymsg_alloc, c
2883                      break;
2884                    }
2885                  yyarg[yycount++] = yytname[yyx];
2886 <                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2886 >                yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
2887                  if (! (yysize <= yysize1
2888                         && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
2889                    return 2;
# Line 3062 | Line 3035 | yyparse ()
3035         `yyss': related to states.
3036         `yyvs': related to semantic values.
3037  
3038 <       Refer to the stacks thru separate pointers, to allow yyoverflow
3038 >       Refer to the stacks through separate pointers, to allow yyoverflow
3039         to reallocate them elsewhere.  */
3040  
3041      /* The state stack.  */
# Line 3295 | Line 3268 | yyreduce:
3268      {
3269          case 27:
3270  
3271 < /* Line 1806 of yacc.c  */
3272 < #line 411 "ircd_parser.y"
3271 > /* Line 1810 of yacc.c  */
3272 > #line 384 "conf_parser.y"
3273      { (yyval.number) = 0; }
3274      break;
3275  
3276    case 29:
3277  
3278 < /* Line 1806 of yacc.c  */
3279 < #line 413 "ircd_parser.y"
3278 > /* Line 1810 of yacc.c  */
3279 > #line 386 "conf_parser.y"
3280      {
3281                          (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number);
3282                  }
# Line 3311 | Line 3284 | yyreduce:
3284  
3285    case 30:
3286  
3287 < /* Line 1806 of yacc.c  */
3288 < #line 417 "ircd_parser.y"
3287 > /* Line 1810 of yacc.c  */
3288 > #line 390 "conf_parser.y"
3289      {
3290                          (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number);
3291                  }
# Line 3320 | Line 3293 | yyreduce:
3293  
3294    case 31:
3295  
3296 < /* Line 1806 of yacc.c  */
3297 < #line 421 "ircd_parser.y"
3296 > /* Line 1810 of yacc.c  */
3297 > #line 394 "conf_parser.y"
3298      {
3299                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 + (yyvsp[(3) - (3)].number);
3300                  }
# Line 3329 | Line 3302 | yyreduce:
3302  
3303    case 32:
3304  
3305 < /* Line 1806 of yacc.c  */
3306 < #line 425 "ircd_parser.y"
3305 > /* Line 1810 of yacc.c  */
3306 > #line 398 "conf_parser.y"
3307      {
3308                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 + (yyvsp[(3) - (3)].number);
3309                  }
# Line 3338 | Line 3311 | yyreduce:
3311  
3312    case 33:
3313  
3314 < /* Line 1806 of yacc.c  */
3315 < #line 429 "ircd_parser.y"
3314 > /* Line 1810 of yacc.c  */
3315 > #line 402 "conf_parser.y"
3316      {
3317                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 + (yyvsp[(3) - (3)].number);
3318                  }
# Line 3347 | Line 3320 | yyreduce:
3320  
3321    case 34:
3322  
3323 < /* Line 1806 of yacc.c  */
3324 < #line 433 "ircd_parser.y"
3323 > /* Line 1810 of yacc.c  */
3324 > #line 406 "conf_parser.y"
3325      {
3326                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 + (yyvsp[(3) - (3)].number);
3327                  }
# Line 3356 | Line 3329 | yyreduce:
3329  
3330    case 35:
3331  
3332 < /* Line 1806 of yacc.c  */
3333 < #line 438 "ircd_parser.y"
3332 > /* Line 1810 of yacc.c  */
3333 > #line 411 "conf_parser.y"
3334      { (yyval.number) = 0; }
3335      break;
3336  
3337    case 37:
3338  
3339 < /* Line 1806 of yacc.c  */
3340 < #line 439 "ircd_parser.y"
3339 > /* Line 1810 of yacc.c  */
3340 > #line 412 "conf_parser.y"
3341      { (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number); }
3342      break;
3343  
3344    case 38:
3345  
3346 < /* Line 1806 of yacc.c  */
3347 < #line 440 "ircd_parser.y"
3346 > /* Line 1810 of yacc.c  */
3347 > #line 413 "conf_parser.y"
3348      { (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number); }
3349      break;
3350  
3351    case 39:
3352  
3353 < /* Line 1806 of yacc.c  */
3354 < #line 441 "ircd_parser.y"
3353 > /* Line 1810 of yacc.c  */
3354 > #line 414 "conf_parser.y"
3355      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 + (yyvsp[(3) - (3)].number); }
3356      break;
3357  
3358    case 40:
3359  
3360 < /* Line 1806 of yacc.c  */
3361 < #line 442 "ircd_parser.y"
3360 > /* Line 1810 of yacc.c  */
3361 > #line 415 "conf_parser.y"
3362      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 * 1024 + (yyvsp[(3) - (3)].number); }
3363      break;
3364  
3365    case 47:
3366  
3367 < /* Line 1806 of yacc.c  */
3368 < #line 456 "ircd_parser.y"
3367 > /* Line 1810 of yacc.c  */
3368 > #line 429 "conf_parser.y"
3369      {
3370    if (conf_parser_ctx.pass == 2)
3371      add_conf_module(libio_basename(yylval.string));
# Line 3401 | Line 3374 | yyreduce:
3374  
3375    case 48:
3376  
3377 < /* Line 1806 of yacc.c  */
3378 < #line 462 "ircd_parser.y"
3377 > /* Line 1810 of yacc.c  */
3378 > #line 435 "conf_parser.y"
3379      {
3380    if (conf_parser_ctx.pass == 2)
3381      mod_add_path(yylval.string);
3382   }
3383      break;
3384  
3385 <  case 65:
3385 >  case 72:
3386  
3387 < /* Line 1806 of yacc.c  */
3388 < #line 482 "ircd_parser.y"
3387 > /* Line 1810 of yacc.c  */
3388 > #line 460 "conf_parser.y"
3389      {
3390   #ifdef HAVE_LIBCRYPTO
3391 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3392 <    ServerInfo.tls_version = 0;
3391 >  if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
3392 >    SSL_CTX_clear_options(ServerInfo.client_ctx, SSL_OP_NO_SSLv3);
3393   #endif
3394   }
3395      break;
3396  
3397 <  case 66:
3397 >  case 73:
3398  
3399 < /* Line 1806 of yacc.c  */
3400 < #line 488 "ircd_parser.y"
3399 > /* Line 1810 of yacc.c  */
3400 > #line 466 "conf_parser.y"
3401      {
3402   #ifdef HAVE_LIBCRYPTO
3403 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3404 <  {
3432 <    if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_SSLV3))
3433 <      SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_SSLv3);
3434 <    if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_TLSV1))
3435 <      SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_TLSv1);
3436 <  }
3403 >  if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
3404 >    SSL_CTX_clear_options(ServerInfo.client_ctx, SSL_OP_NO_TLSv1);
3405   #endif
3406   }
3407      break;
3408  
3409 <  case 69:
3409 >  case 76:
3410  
3411 < /* Line 1806 of yacc.c  */
3412 < #line 502 "ircd_parser.y"
3411 > /* Line 1810 of yacc.c  */
3412 > #line 475 "conf_parser.y"
3413      {
3414   #ifdef HAVE_LIBCRYPTO
3415 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3416 <    ServerInfo.tls_version |= CONF_SERVER_INFO_TLS_VERSION_SSLV3;
3415 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3416 >    SSL_CTX_clear_options(ServerInfo.server_ctx, SSL_OP_NO_SSLv3);
3417   #endif
3418   }
3419      break;
3420  
3421 <  case 70:
3421 >  case 77:
3422  
3423 < /* Line 1806 of yacc.c  */
3424 < #line 508 "ircd_parser.y"
3423 > /* Line 1810 of yacc.c  */
3424 > #line 481 "conf_parser.y"
3425      {
3426   #ifdef HAVE_LIBCRYPTO
3427 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3428 <    ServerInfo.tls_version |= CONF_SERVER_INFO_TLS_VERSION_TLSV1;
3427 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3428 >    SSL_CTX_clear_options(ServerInfo.server_ctx, SSL_OP_NO_TLSv1);
3429   #endif
3430   }
3431      break;
3432  
3433 <  case 71:
3433 >  case 78:
3434  
3435 < /* Line 1806 of yacc.c  */
3436 < #line 516 "ircd_parser.y"
3435 > /* Line 1810 of yacc.c  */
3436 > #line 489 "conf_parser.y"
3437      {
3438   #ifdef HAVE_LIBCRYPTO
3439    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3477 | Line 3445 | yyreduce:
3445      }
3446  
3447      if (SSL_CTX_use_certificate_file(ServerInfo.server_ctx, yylval.string,
3448 +                                     SSL_FILETYPE_PEM) <= 0 ||
3449 +        SSL_CTX_use_certificate_file(ServerInfo.client_ctx, yylval.string,
3450                                       SSL_FILETYPE_PEM) <= 0)
3451      {
3452        yyerror(ERR_lib_error_string(ERR_get_error()));
# Line 3484 | Line 3454 | yyreduce:
3454      }
3455  
3456      if (SSL_CTX_use_PrivateKey_file(ServerInfo.server_ctx, ServerInfo.rsa_private_key_file,
3457 +                                    SSL_FILETYPE_PEM) <= 0 ||
3458 +        SSL_CTX_use_PrivateKey_file(ServerInfo.client_ctx, ServerInfo.rsa_private_key_file,
3459                                      SSL_FILETYPE_PEM) <= 0)
3460      {
3461        yyerror(ERR_lib_error_string(ERR_get_error()));
3462        break;
3463      }
3464  
3465 <    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx))
3465 >    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx) ||
3466 >        !SSL_CTX_check_private_key(ServerInfo.client_ctx))
3467      {
3468        yyerror(ERR_lib_error_string(ERR_get_error()));
3469        break;
# Line 3500 | Line 3473 | yyreduce:
3473   }
3474      break;
3475  
3476 <  case 72:
3476 >  case 79:
3477  
3478 < /* Line 1806 of yacc.c  */
3479 < #line 550 "ircd_parser.y"
3478 > /* Line 1810 of yacc.c  */
3479 > #line 528 "conf_parser.y"
3480      {
3481   #ifdef HAVE_LIBCRYPTO
3482    if (conf_parser_ctx.pass == 1)
# Line 3530 | Line 3503 | yyreduce:
3503        break;
3504      }
3505  
3506 <    ServerInfo.rsa_private_key = (RSA *)PEM_read_bio_RSAPrivateKey(file, NULL,
3534 <      0, NULL);
3506 >    ServerInfo.rsa_private_key = PEM_read_bio_RSAPrivateKey(file, NULL, 0, NULL);
3507  
3508      BIO_set_close(file, BIO_CLOSE);
3509      BIO_free(file);
# Line 3564 | Line 3536 | yyreduce:
3536   }
3537      break;
3538  
3539 <  case 73:
3539 >  case 80:
3540 >
3541 > /* Line 1810 of yacc.c  */
3542 > #line 587 "conf_parser.y"
3543 >    {
3544 > /* TBD - XXX: error reporting */
3545 > #ifdef HAVE_LIBCRYPTO
3546 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3547 >  {
3548 >    BIO *file = BIO_new_file(yylval.string, "r");
3549  
3550 < /* Line 1806 of yacc.c  */
3551 < #line 610 "ircd_parser.y"
3550 >    if (file)
3551 >    {
3552 >      DH *dh = PEM_read_bio_DHparams(file, NULL, NULL, NULL);
3553 >
3554 >      BIO_free(file);
3555 >
3556 >      if (dh)
3557 >      {
3558 >        if (DH_size(dh) < 128)
3559 >          ilog(LOG_TYPE_IRCD, "Ignoring serverinfo::ssl_dh_param_file -- need at least a 1024 bit DH prime size");
3560 >        else
3561 >          SSL_CTX_set_tmp_dh(ServerInfo.server_ctx, dh);
3562 >
3563 >        DH_free(dh);
3564 >      }
3565 >    }
3566 >  }
3567 > #endif
3568 > }
3569 >    break;
3570 >
3571 >  case 81:
3572 >
3573 > /* Line 1810 of yacc.c  */
3574 > #line 615 "conf_parser.y"
3575 >    {
3576 > #ifdef HAVE_LIBCRYPTO
3577 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3578 >    SSL_CTX_set_cipher_list(ServerInfo.server_ctx, yylval.string);
3579 > #endif
3580 > }
3581 >    break;
3582 >
3583 >  case 82:
3584 >
3585 > /* Line 1810 of yacc.c  */
3586 > #line 623 "conf_parser.y"
3587      {
3588    /* this isn't rehashable */
3589    if (conf_parser_ctx.pass == 2 && !ServerInfo.name)
# Line 3583 | Line 3599 | yyreduce:
3599   }
3600      break;
3601  
3602 <  case 74:
3602 >  case 83:
3603  
3604 < /* Line 1806 of yacc.c  */
3605 < #line 625 "ircd_parser.y"
3604 > /* Line 1810 of yacc.c  */
3605 > #line 638 "conf_parser.y"
3606      {
3607    /* this isn't rehashable */
3608    if (conf_parser_ctx.pass == 2 && !ServerInfo.sid)
# Line 3602 | Line 3618 | yyreduce:
3618   }
3619      break;
3620  
3621 <  case 75:
3621 >  case 84:
3622  
3623 < /* Line 1806 of yacc.c  */
3624 < #line 640 "ircd_parser.y"
3623 > /* Line 1810 of yacc.c  */
3624 > #line 653 "conf_parser.y"
3625      {
3626    if (conf_parser_ctx.pass == 2)
3627    {
# Line 3615 | Line 3631 | yyreduce:
3631   }
3632      break;
3633  
3634 <  case 76:
3634 >  case 85:
3635  
3636 < /* Line 1806 of yacc.c  */
3637 < #line 649 "ircd_parser.y"
3636 > /* Line 1810 of yacc.c  */
3637 > #line 662 "conf_parser.y"
3638      {
3639    if (conf_parser_ctx.pass == 2)
3640    {
# Line 3633 | Line 3649 | yyreduce:
3649   }
3650      break;
3651  
3652 <  case 77:
3652 >  case 86:
3653  
3654 < /* Line 1806 of yacc.c  */
3655 < #line 663 "ircd_parser.y"
3654 > /* Line 1810 of yacc.c  */
3655 > #line 676 "conf_parser.y"
3656      {
3657    if (conf_parser_ctx.pass == 2)
3658    {
# Line 3646 | Line 3662 | yyreduce:
3662   }
3663      break;
3664  
3665 <  case 78:
3665 >  case 87:
3666  
3667 < /* Line 1806 of yacc.c  */
3668 < #line 672 "ircd_parser.y"
3667 > /* Line 1810 of yacc.c  */
3668 > #line 685 "conf_parser.y"
3669      {
3670    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3671    {
# Line 3678 | Line 3694 | yyreduce:
3694   }
3695      break;
3696  
3697 <  case 79:
3697 >  case 88:
3698  
3699 < /* Line 1806 of yacc.c  */
3700 < #line 700 "ircd_parser.y"
3699 > /* Line 1810 of yacc.c  */
3700 > #line 713 "conf_parser.y"
3701      {
3702   #ifdef IPV6
3703    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
# Line 3712 | Line 3728 | yyreduce:
3728   }
3729      break;
3730  
3731 <  case 80:
3731 >  case 89:
3732  
3733 < /* Line 1806 of yacc.c  */
3734 < #line 730 "ircd_parser.y"
3733 > /* Line 1810 of yacc.c  */
3734 > #line 743 "conf_parser.y"
3735      {
3736    if (conf_parser_ctx.pass == 2)
3737    {
# Line 3739 | Line 3755 | yyreduce:
3755   }
3756      break;
3757  
3758 <  case 81:
3758 >  case 90:
3759  
3760 < /* Line 1806 of yacc.c  */
3761 < #line 753 "ircd_parser.y"
3760 > /* Line 1810 of yacc.c  */
3761 > #line 766 "conf_parser.y"
3762      {
3763    if (conf_parser_ctx.pass == 2)
3764      ServerInfo.hub = yylval.number;
3765   }
3766      break;
3767  
3768 <  case 89:
3768 >  case 98:
3769  
3770 < /* Line 1806 of yacc.c  */
3771 < #line 768 "ircd_parser.y"
3770 > /* Line 1810 of yacc.c  */
3771 > #line 781 "conf_parser.y"
3772      {
3773    if (conf_parser_ctx.pass == 2)
3774    {
# Line 3762 | Line 3778 | yyreduce:
3778   }
3779      break;
3780  
3781 <  case 90:
3781 >  case 99:
3782  
3783 < /* Line 1806 of yacc.c  */
3784 < #line 777 "ircd_parser.y"
3783 > /* Line 1810 of yacc.c  */
3784 > #line 790 "conf_parser.y"
3785      {
3786    if (conf_parser_ctx.pass == 2)
3787    {
# Line 3775 | Line 3791 | yyreduce:
3791   }
3792      break;
3793  
3794 <  case 91:
3794 >  case 100:
3795  
3796 < /* Line 1806 of yacc.c  */
3797 < #line 786 "ircd_parser.y"
3796 > /* Line 1810 of yacc.c  */
3797 > #line 799 "conf_parser.y"
3798      {
3799    if (conf_parser_ctx.pass == 2)
3800    {
# Line 3788 | Line 3804 | yyreduce:
3804   }
3805      break;
3806  
3807 <  case 99:
3807 >  case 107:
3808  
3809 < /* Line 1806 of yacc.c  */
3810 < #line 804 "ircd_parser.y"
3809 > /* Line 1810 of yacc.c  */
3810 > #line 817 "conf_parser.y"
3811      {
3812    if (conf_parser_ctx.pass == 2)
3813      ConfigLoggingEntry.use_logging = yylval.number;
3814   }
3815      break;
3816  
3817 <  case 100:
3817 >  case 108:
3818  
3819 < /* Line 1806 of yacc.c  */
3820 < #line 810 "ircd_parser.y"
3805 <    {
3806 <  if (conf_parser_ctx.pass == 2)
3807 <    ConfigLoggingEntry.timestamp = yylval.number;
3808 < }
3809 <    break;
3810 <
3811 <  case 101:
3812 <
3813 < /* Line 1806 of yacc.c  */
3814 < #line 816 "ircd_parser.y"
3819 > /* Line 1810 of yacc.c  */
3820 > #line 823 "conf_parser.y"
3821      {
3822    lfile[0] = '\0';
3823    ltype = 0;
# Line 3819 | Line 3825 | yyreduce:
3825   }
3826      break;
3827  
3828 <  case 102:
3828 >  case 109:
3829  
3830 < /* Line 1806 of yacc.c  */
3831 < #line 821 "ircd_parser.y"
3830 > /* Line 1810 of yacc.c  */
3831 > #line 828 "conf_parser.y"
3832      {
3833    if (conf_parser_ctx.pass == 2 && ltype > 0)
3834      log_add_file(ltype, lsize, lfile);
3835   }
3836      break;
3837  
3838 <  case 109:
3838 >  case 116:
3839  
3840 < /* Line 1806 of yacc.c  */
3841 < #line 833 "ircd_parser.y"
3840 > /* Line 1810 of yacc.c  */
3841 > #line 840 "conf_parser.y"
3842      {
3843    strlcpy(lfile, yylval.string, sizeof(lfile));
3844   }
3845      break;
3846  
3847 <  case 110:
3847 >  case 117:
3848  
3849 < /* Line 1806 of yacc.c  */
3850 < #line 838 "ircd_parser.y"
3849 > /* Line 1810 of yacc.c  */
3850 > #line 845 "conf_parser.y"
3851      {
3852    lsize = (yyvsp[(3) - (4)].number);
3853   }
3854      break;
3855  
3856 <  case 111:
3856 >  case 118:
3857  
3858 < /* Line 1806 of yacc.c  */
3859 < #line 841 "ircd_parser.y"
3858 > /* Line 1810 of yacc.c  */
3859 > #line 848 "conf_parser.y"
3860      {
3861    lsize = 0;
3862   }
3863      break;
3864  
3865 <  case 112:
3865 >  case 119:
3866  
3867 < /* Line 1806 of yacc.c  */
3868 < #line 846 "ircd_parser.y"
3867 > /* Line 1810 of yacc.c  */
3868 > #line 853 "conf_parser.y"
3869      {
3870    if (conf_parser_ctx.pass == 2)
3871      ltype = 0;
3872   }
3873      break;
3874  
3875 <  case 116:
3875 >  case 123:
3876  
3877 < /* Line 1806 of yacc.c  */
3878 < #line 853 "ircd_parser.y"
3877 > /* Line 1810 of yacc.c  */
3878 > #line 860 "conf_parser.y"
3879      {
3880    if (conf_parser_ctx.pass == 2)
3881      ltype = LOG_TYPE_USER;
3882   }
3883      break;
3884  
3885 <  case 117:
3885 >  case 124:
3886  
3887 < /* Line 1806 of yacc.c  */
3888 < #line 857 "ircd_parser.y"
3887 > /* Line 1810 of yacc.c  */
3888 > #line 864 "conf_parser.y"
3889      {
3890    if (conf_parser_ctx.pass == 2)
3891      ltype = LOG_TYPE_OPER;
3892   }
3893      break;
3894  
3895 <  case 118:
3895 >  case 125:
3896  
3897 < /* Line 1806 of yacc.c  */
3898 < #line 861 "ircd_parser.y"
3897 > /* Line 1810 of yacc.c  */
3898 > #line 868 "conf_parser.y"
3899      {
3900    if (conf_parser_ctx.pass == 2)
3901      ltype = LOG_TYPE_GLINE;
3902   }
3903      break;
3904  
3905 <  case 119:
3905 >  case 126:
3906  
3907 < /* Line 1806 of yacc.c  */
3908 < #line 865 "ircd_parser.y"
3907 > /* Line 1810 of yacc.c  */
3908 > #line 872 "conf_parser.y"
3909      {
3910    if (conf_parser_ctx.pass == 2)
3911      ltype = LOG_TYPE_DLINE;
3912   }
3913      break;
3914  
3915 <  case 120:
3915 >  case 127:
3916  
3917 < /* Line 1806 of yacc.c  */
3918 < #line 869 "ircd_parser.y"
3917 > /* Line 1810 of yacc.c  */
3918 > #line 876 "conf_parser.y"
3919      {
3920    if (conf_parser_ctx.pass == 2)
3921      ltype = LOG_TYPE_KLINE;
3922   }
3923      break;
3924  
3925 <  case 121:
3925 >  case 128:
3926  
3927 < /* Line 1806 of yacc.c  */
3928 < #line 873 "ircd_parser.y"
3927 > /* Line 1810 of yacc.c  */
3928 > #line 880 "conf_parser.y"
3929      {
3930    if (conf_parser_ctx.pass == 2)
3931      ltype = LOG_TYPE_KILL;
3932   }
3933      break;
3934  
3935 <  case 122:
3935 >  case 129:
3936  
3937 < /* Line 1806 of yacc.c  */
3938 < #line 877 "ircd_parser.y"
3937 > /* Line 1810 of yacc.c  */
3938 > #line 884 "conf_parser.y"
3939      {
3940    if (conf_parser_ctx.pass == 2)
3941      ltype = LOG_TYPE_DEBUG;
3942   }
3943      break;
3944  
3945 <  case 123:
3945 >  case 130:
3946  
3947 < /* Line 1806 of yacc.c  */
3948 < #line 887 "ircd_parser.y"
3947 > /* Line 1810 of yacc.c  */
3948 > #line 894 "conf_parser.y"
3949      {
3950    if (conf_parser_ctx.pass == 2)
3951    {
# Line 3955 | Line 3961 | yyreduce:
3961   }
3962      break;
3963  
3964 <  case 124:
3964 >  case 131:
3965  
3966 < /* Line 1806 of yacc.c  */
3967 < #line 900 "ircd_parser.y"
3966 > /* Line 1810 of yacc.c  */
3967 > #line 907 "conf_parser.y"
3968      {
3969    if (conf_parser_ctx.pass == 2)
3970    {
# Line 3994 | Line 4000 | yyreduce:
4000        else
4001          DupString(new_aconf->host, "*");
4002  
4003 <      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->ipnum,
4003 >      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->addr,
4004                                       &new_aconf->bits);
4005  
4006        conf_add_class_to_conf(new_conf, class_name);
# Line 4044 | Line 4050 | yyreduce:
4050   }
4051      break;
4052  
4053 <  case 136:
4053 >  case 143:
4054  
4055 < /* Line 1806 of yacc.c  */
4056 < #line 990 "ircd_parser.y"
4055 > /* Line 1810 of yacc.c  */
4056 > #line 997 "conf_parser.y"
4057      {
4058    if (conf_parser_ctx.pass == 2)
4059    {
4054    if (strlen(yylval.string) > OPERNICKLEN)
4055      yylval.string[OPERNICKLEN] = '\0';
4056
4060      MyFree(yy_conf->name);
4061      DupString(yy_conf->name, yylval.string);
4062    }
4063   }
4064      break;
4065  
4066 <  case 137:
4066 >  case 144:
4067  
4068 < /* Line 1806 of yacc.c  */
4069 < #line 1002 "ircd_parser.y"
4068 > /* Line 1810 of yacc.c  */
4069 > #line 1006 "conf_parser.y"
4070      {
4071    if (conf_parser_ctx.pass == 2)
4072    {
# Line 4085 | Line 4088 | yyreduce:
4088        DupString(yy_aconf->user, userbuf);
4089        DupString(yy_aconf->host, hostbuf);
4090  
4091 <      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->ipnum,
4091 >      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->addr,
4092                                      &yy_aconf->bits);
4093      }
4094      else
# Line 4101 | Line 4104 | yyreduce:
4104   }
4105      break;
4106  
4107 <  case 138:
4107 >  case 145:
4108  
4109 < /* Line 1806 of yacc.c  */
4110 < #line 1039 "ircd_parser.y"
4109 > /* Line 1810 of yacc.c  */
4110 > #line 1043 "conf_parser.y"
4111      {
4112    if (conf_parser_ctx.pass == 2)
4113    {
# Line 4117 | Line 4120 | yyreduce:
4120   }
4121      break;
4122  
4123 <  case 139:
4123 >  case 146:
4124  
4125 < /* Line 1806 of yacc.c  */
4126 < #line 1051 "ircd_parser.y"
4125 > /* Line 1810 of yacc.c  */
4126 > #line 1055 "conf_parser.y"
4127      {
4128    if (conf_parser_ctx.pass == 2)
4129    {
# Line 4132 | Line 4135 | yyreduce:
4135   }
4136      break;
4137  
4138 <  case 140:
4138 >  case 147:
4139  
4140 < /* Line 1806 of yacc.c  */
4141 < #line 1062 "ircd_parser.y"
4140 > /* Line 1810 of yacc.c  */
4141 > #line 1066 "conf_parser.y"
4142      {
4143   #ifdef HAVE_LIBCRYPTO
4144    if (conf_parser_ctx.pass == 2)
# Line 4178 | Line 4181 | yyreduce:
4181   }
4182      break;
4183  
4184 <  case 141:
4184 >  case 148:
4185  
4186 < /* Line 1806 of yacc.c  */
4187 < #line 1104 "ircd_parser.y"
4186 > /* Line 1810 of yacc.c  */
4187 > #line 1108 "conf_parser.y"
4188      {
4189    if (conf_parser_ctx.pass == 2)
4190    {
# Line 4191 | Line 4194 | yyreduce:
4194   }
4195      break;
4196  
4197 <  case 142:
4197 >  case 149:
4198  
4199 < /* Line 1806 of yacc.c  */
4200 < #line 1113 "ircd_parser.y"
4199 > /* Line 1810 of yacc.c  */
4200 > #line 1117 "conf_parser.y"
4201      {
4202    if (conf_parser_ctx.pass == 2)
4203      yy_aconf->modes = 0;
4204   }
4205      break;
4206  
4207 <  case 146:
4207 >  case 153:
4208  
4209 < /* Line 1806 of yacc.c  */
4210 < #line 1120 "ircd_parser.y"
4209 > /* Line 1810 of yacc.c  */
4210 > #line 1124 "conf_parser.y"
4211      {
4212    if (conf_parser_ctx.pass == 2)
4213      yy_aconf->modes |= UMODE_BOTS;
4214   }
4215      break;
4216  
4217 <  case 147:
4217 >  case 154:
4218  
4219 < /* Line 1806 of yacc.c  */
4220 < #line 1124 "ircd_parser.y"
4219 > /* Line 1810 of yacc.c  */
4220 > #line 1128 "conf_parser.y"
4221      {
4222    if (conf_parser_ctx.pass == 2)
4223      yy_aconf->modes |= UMODE_CCONN;
4224   }
4225      break;
4226  
4227 <  case 148:
4227 >  case 155:
4228  
4229 < /* Line 1806 of yacc.c  */
4230 < #line 1128 "ircd_parser.y"
4229 > /* Line 1810 of yacc.c  */
4230 > #line 1132 "conf_parser.y"
4231      {
4232    if (conf_parser_ctx.pass == 2)
4233      yy_aconf->modes |= UMODE_CCONN_FULL;
4234   }
4235      break;
4236  
4237 <  case 149:
4237 >  case 156:
4238  
4239 < /* Line 1806 of yacc.c  */
4240 < #line 1132 "ircd_parser.y"
4239 > /* Line 1810 of yacc.c  */
4240 > #line 1136 "conf_parser.y"
4241      {
4242    if (conf_parser_ctx.pass == 2)
4243      yy_aconf->modes |= UMODE_DEAF;
4244   }
4245      break;
4246  
4247 <  case 150:
4247 >  case 157:
4248  
4249 < /* Line 1806 of yacc.c  */
4250 < #line 1136 "ircd_parser.y"
4249 > /* Line 1810 of yacc.c  */
4250 > #line 1140 "conf_parser.y"
4251      {
4252    if (conf_parser_ctx.pass == 2)
4253      yy_aconf->modes |= UMODE_DEBUG;
4254   }
4255      break;
4256  
4257 <  case 151:
4257 >  case 158:
4258  
4259 < /* Line 1806 of yacc.c  */
4260 < #line 1140 "ircd_parser.y"
4259 > /* Line 1810 of yacc.c  */
4260 > #line 1144 "conf_parser.y"
4261      {
4262    if (conf_parser_ctx.pass == 2)
4263      yy_aconf->modes |= UMODE_FULL;
4264   }
4265      break;
4266  
4267 <  case 152:
4267 >  case 159:
4268  
4269 < /* Line 1806 of yacc.c  */
4270 < #line 1144 "ircd_parser.y"
4269 > /* Line 1810 of yacc.c  */
4270 > #line 1148 "conf_parser.y"
4271 >    {
4272 >  if (conf_parser_ctx.pass == 2)
4273 >    yy_aconf->modes |= UMODE_HIDDEN;
4274 > }
4275 >    break;
4276 >
4277 >  case 160:
4278 >
4279 > /* Line 1810 of yacc.c  */
4280 > #line 1152 "conf_parser.y"
4281      {
4282    if (conf_parser_ctx.pass == 2)
4283      yy_aconf->modes |= UMODE_SKILL;
4284   }
4285      break;
4286  
4287 <  case 153:
4287 >  case 161:
4288  
4289 < /* Line 1806 of yacc.c  */
4290 < #line 1148 "ircd_parser.y"
4289 > /* Line 1810 of yacc.c  */
4290 > #line 1156 "conf_parser.y"
4291      {
4292    if (conf_parser_ctx.pass == 2)
4293      yy_aconf->modes |= UMODE_NCHANGE;
4294   }
4295      break;
4296  
4297 <  case 154:
4297 >  case 162:
4298  
4299 < /* Line 1806 of yacc.c  */
4300 < #line 1152 "ircd_parser.y"
4299 > /* Line 1810 of yacc.c  */
4300 > #line 1160 "conf_parser.y"
4301      {
4302    if (conf_parser_ctx.pass == 2)
4303      yy_aconf->modes |= UMODE_REJ;
4304   }
4305      break;
4306  
4307 <  case 155:
4307 >  case 163:
4308  
4309 < /* Line 1806 of yacc.c  */
4310 < #line 1156 "ircd_parser.y"
4309 > /* Line 1810 of yacc.c  */
4310 > #line 1164 "conf_parser.y"
4311      {
4312    if (conf_parser_ctx.pass == 2)
4313      yy_aconf->modes |= UMODE_UNAUTH;
4314   }
4315      break;
4316  
4317 <  case 156:
4317 >  case 164:
4318  
4319 < /* Line 1806 of yacc.c  */
4320 < #line 1160 "ircd_parser.y"
4319 > /* Line 1810 of yacc.c  */
4320 > #line 1168 "conf_parser.y"
4321      {
4322    if (conf_parser_ctx.pass == 2)
4323      yy_aconf->modes |= UMODE_SPY;
4324   }
4325      break;
4326  
4327 <  case 157:
4327 >  case 165:
4328  
4329 < /* Line 1806 of yacc.c  */
4330 < #line 1164 "ircd_parser.y"
4329 > /* Line 1810 of yacc.c  */
4330 > #line 1172 "conf_parser.y"
4331      {
4332    if (conf_parser_ctx.pass == 2)
4333      yy_aconf->modes |= UMODE_EXTERNAL;
4334   }
4335      break;
4336  
4337 <  case 158:
4337 >  case 166:
4338  
4339 < /* Line 1806 of yacc.c  */
4340 < #line 1168 "ircd_parser.y"
4339 > /* Line 1810 of yacc.c  */
4340 > #line 1176 "conf_parser.y"
4341      {
4342    if (conf_parser_ctx.pass == 2)
4343      yy_aconf->modes |= UMODE_OPERWALL;
4344   }
4345      break;
4346  
4347 <  case 159:
4347 >  case 167:
4348  
4349 < /* Line 1806 of yacc.c  */
4350 < #line 1172 "ircd_parser.y"
4349 > /* Line 1810 of yacc.c  */
4350 > #line 1180 "conf_parser.y"
4351      {
4352    if (conf_parser_ctx.pass == 2)
4353      yy_aconf->modes |= UMODE_SERVNOTICE;
4354   }
4355      break;
4356  
4357 <  case 160:
4357 >  case 168:
4358  
4359 < /* Line 1806 of yacc.c  */
4360 < #line 1176 "ircd_parser.y"
4359 > /* Line 1810 of yacc.c  */
4360 > #line 1184 "conf_parser.y"
4361      {
4362    if (conf_parser_ctx.pass == 2)
4363      yy_aconf->modes |= UMODE_INVISIBLE;
4364   }
4365      break;
4366  
4367 <  case 161:
4367 >  case 169:
4368  
4369 < /* Line 1806 of yacc.c  */
4370 < #line 1180 "ircd_parser.y"
4369 > /* Line 1810 of yacc.c  */
4370 > #line 1188 "conf_parser.y"
4371      {
4372    if (conf_parser_ctx.pass == 2)
4373      yy_aconf->modes |= UMODE_WALLOP;
4374   }
4375      break;
4376  
4377 <  case 162:
4377 >  case 170:
4378  
4379 < /* Line 1806 of yacc.c  */
4380 < #line 1184 "ircd_parser.y"
4379 > /* Line 1810 of yacc.c  */
4380 > #line 1192 "conf_parser.y"
4381      {
4382    if (conf_parser_ctx.pass == 2)
4383      yy_aconf->modes |= UMODE_SOFTCALLERID;
4384   }
4385      break;
4386  
4387 <  case 163:
4387 >  case 171:
4388  
4389 < /* Line 1806 of yacc.c  */
4390 < #line 1188 "ircd_parser.y"
4389 > /* Line 1810 of yacc.c  */
4390 > #line 1196 "conf_parser.y"
4391      {
4392    if (conf_parser_ctx.pass == 2)
4393      yy_aconf->modes |= UMODE_CALLERID;
4394   }
4395      break;
4396  
4397 <  case 164:
4397 >  case 172:
4398  
4399 < /* Line 1806 of yacc.c  */
4400 < #line 1192 "ircd_parser.y"
4399 > /* Line 1810 of yacc.c  */
4400 > #line 1200 "conf_parser.y"
4401      {
4402    if (conf_parser_ctx.pass == 2)
4403      yy_aconf->modes |= UMODE_LOCOPS;
4404   }
4405      break;
4406  
4407 <  case 165:
4407 >  case 173:
4408  
4409 < /* Line 1806 of yacc.c  */
4410 < #line 1198 "ircd_parser.y"
4409 > /* Line 1810 of yacc.c  */
4410 > #line 1206 "conf_parser.y"
4411      {
4412    if (conf_parser_ctx.pass == 2)
4413      yy_aconf->port = 0;
4414   }
4415      break;
4416  
4417 <  case 169:
4417 >  case 177:
4418  
4419 < /* Line 1806 of yacc.c  */
4420 < #line 1205 "ircd_parser.y"
4419 > /* Line 1810 of yacc.c  */
4420 > #line 1213 "conf_parser.y"
4421      {
4422    if (conf_parser_ctx.pass == 2)
4423      yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4424   }
4425      break;
4426  
4427 <  case 170:
4427 >  case 178:
4428  
4429 < /* Line 1806 of yacc.c  */
4430 < #line 1209 "ircd_parser.y"
4429 > /* Line 1810 of yacc.c  */
4430 > #line 1217 "conf_parser.y"
4431      {
4432    if (conf_parser_ctx.pass == 2)
4433      yy_aconf->port |= OPER_FLAG_REMOTE;
4434   }
4435      break;
4436  
4437 <  case 171:
4437 >  case 179:
4438  
4439 < /* Line 1806 of yacc.c  */
4440 < #line 1213 "ircd_parser.y"
4439 > /* Line 1810 of yacc.c  */
4440 > #line 1221 "conf_parser.y"
4441      {
4442    if (conf_parser_ctx.pass == 2)
4443      yy_aconf->port |= OPER_FLAG_K;
4444   }
4445      break;
4446  
4447 <  case 172:
4447 >  case 180:
4448  
4449 < /* Line 1806 of yacc.c  */
4450 < #line 1217 "ircd_parser.y"
4449 > /* Line 1810 of yacc.c  */
4450 > #line 1225 "conf_parser.y"
4451      {
4452    if (conf_parser_ctx.pass == 2)
4453      yy_aconf->port |= OPER_FLAG_UNKLINE;
4454   }
4455      break;
4456  
4457 <  case 173:
4457 >  case 181:
4458  
4459 < /* Line 1806 of yacc.c  */
4460 < #line 1221 "ircd_parser.y"
4459 > /* Line 1810 of yacc.c  */
4460 > #line 1229 "conf_parser.y"
4461      {
4462    if (conf_parser_ctx.pass == 2)
4463 <    yy_aconf->port |= OPER_FLAG_X;
4463 >    yy_aconf->port |= OPER_FLAG_DLINE;
4464   }
4465      break;
4466  
4467 <  case 174:
4467 >  case 182:
4468  
4469 < /* Line 1806 of yacc.c  */
4470 < #line 1225 "ircd_parser.y"
4469 > /* Line 1810 of yacc.c  */
4470 > #line 1233 "conf_parser.y"
4471      {
4472    if (conf_parser_ctx.pass == 2)
4473 <    yy_aconf->port |= OPER_FLAG_GLINE;
4473 >    yy_aconf->port |= OPER_FLAG_UNDLINE;
4474   }
4475      break;
4476  
4477 <  case 175:
4477 >  case 183:
4478  
4479 < /* Line 1806 of yacc.c  */
4480 < #line 1229 "ircd_parser.y"
4479 > /* Line 1810 of yacc.c  */
4480 > #line 1237 "conf_parser.y"
4481      {
4482    if (conf_parser_ctx.pass == 2)
4483 <    yy_aconf->port |= OPER_FLAG_DIE;
4483 >    yy_aconf->port |= OPER_FLAG_X;
4484   }
4485      break;
4486  
4487 <  case 176:
4487 >  case 184:
4488  
4489 < /* Line 1806 of yacc.c  */
4490 < #line 1233 "ircd_parser.y"
4489 > /* Line 1810 of yacc.c  */
4490 > #line 1241 "conf_parser.y"
4491      {
4492    if (conf_parser_ctx.pass == 2)
4493 <    yy_aconf->port |= OPER_FLAG_RESTART;
4493 >    yy_aconf->port |= OPER_FLAG_GLINE;
4494   }
4495      break;
4496  
4497 <  case 177:
4497 >  case 185:
4498  
4499 < /* Line 1806 of yacc.c  */
4500 < #line 1237 "ircd_parser.y"
4499 > /* Line 1810 of yacc.c  */
4500 > #line 1245 "conf_parser.y"
4501      {
4502    if (conf_parser_ctx.pass == 2)
4503 <    yy_aconf->port |= OPER_FLAG_REHASH;
4503 >    yy_aconf->port |= OPER_FLAG_DIE;
4504   }
4505      break;
4506  
4507 <  case 178:
4507 >  case 186:
4508  
4509 < /* Line 1806 of yacc.c  */
4510 < #line 1241 "ircd_parser.y"
4509 > /* Line 1810 of yacc.c  */
4510 > #line 1249 "conf_parser.y"
4511      {
4512    if (conf_parser_ctx.pass == 2)
4513 <    yy_aconf->port |= OPER_FLAG_ADMIN;
4513 >    yy_aconf->port |= OPER_FLAG_RESTART;
4514   }
4515      break;
4516  
4517 <  case 179:
4517 >  case 187:
4518  
4519 < /* Line 1806 of yacc.c  */
4520 < #line 1245 "ircd_parser.y"
4519 > /* Line 1810 of yacc.c  */
4520 > #line 1253 "conf_parser.y"
4521      {
4522    if (conf_parser_ctx.pass == 2)
4523 <    yy_aconf->port |= OPER_FLAG_HIDDEN_ADMIN;
4523 >    yy_aconf->port |= OPER_FLAG_REHASH;
4524   }
4525      break;
4526  
4527 <  case 180:
4527 >  case 188:
4528  
4529 < /* Line 1806 of yacc.c  */
4530 < #line 1249 "ircd_parser.y"
4529 > /* Line 1810 of yacc.c  */
4530 > #line 1257 "conf_parser.y"
4531      {
4532    if (conf_parser_ctx.pass == 2)
4533 <    yy_aconf->port |= OPER_FLAG_N;
4533 >    yy_aconf->port |= OPER_FLAG_ADMIN;
4534   }
4535      break;
4536  
4537 <  case 181:
4537 >  case 189:
4538  
4539 < /* Line 1806 of yacc.c  */
4540 < #line 1253 "ircd_parser.y"
4539 > /* Line 1810 of yacc.c  */
4540 > #line 1261 "conf_parser.y"
4541      {
4542    if (conf_parser_ctx.pass == 2)
4543 <    yy_aconf->port |= OPER_FLAG_OPERWALL;
4543 >    yy_aconf->port |= OPER_FLAG_N;
4544   }
4545      break;
4546  
4547 <  case 182:
4547 >  case 190:
4548  
4549 < /* Line 1806 of yacc.c  */
4550 < #line 1257 "ircd_parser.y"
4549 > /* Line 1810 of yacc.c  */
4550 > #line 1265 "conf_parser.y"
4551      {
4552    if (conf_parser_ctx.pass == 2)
4553 <    yy_aconf->port |= OPER_FLAG_GLOBOPS;
4553 >    yy_aconf->port |= OPER_FLAG_OPERWALL;
4554   }
4555      break;
4556  
4557 <  case 183:
4557 >  case 191:
4558  
4559 < /* Line 1806 of yacc.c  */
4560 < #line 1261 "ircd_parser.y"
4559 > /* Line 1810 of yacc.c  */
4560 > #line 1269 "conf_parser.y"
4561      {
4562    if (conf_parser_ctx.pass == 2)
4563 <    yy_aconf->port |= OPER_FLAG_OPER_SPY;
4563 >    yy_aconf->port |= OPER_FLAG_GLOBOPS;
4564   }
4565      break;
4566  
4567 <  case 184:
4567 >  case 192:
4568  
4569 < /* Line 1806 of yacc.c  */
4570 < #line 1265 "ircd_parser.y"
4569 > /* Line 1810 of yacc.c  */
4570 > #line 1273 "conf_parser.y"
4571      {
4572    if (conf_parser_ctx.pass == 2)
4573 <    yy_aconf->port |= OPER_FLAG_HIDDEN_OPER;
4573 >    yy_aconf->port |= OPER_FLAG_OPER_SPY;
4574   }
4575      break;
4576  
4577 <  case 185:
4577 >  case 193:
4578  
4579 < /* Line 1806 of yacc.c  */
4580 < #line 1269 "ircd_parser.y"
4579 > /* Line 1810 of yacc.c  */
4580 > #line 1277 "conf_parser.y"
4581      {
4582    if (conf_parser_ctx.pass == 2)
4583      yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4584   }
4585      break;
4586  
4587 <  case 186:
4587 >  case 194:
4588  
4589 < /* Line 1806 of yacc.c  */
4590 < #line 1273 "ircd_parser.y"
4589 > /* Line 1810 of yacc.c  */
4590 > #line 1281 "conf_parser.y"
4591      {
4592    if (conf_parser_ctx.pass == 2)
4593      yy_aconf->port |= OPER_FLAG_MODULE;
4594   }
4595      break;
4596  
4597 <  case 187:
4597 >  case 195:
4598  
4599 < /* Line 1806 of yacc.c  */
4600 < #line 1283 "ircd_parser.y"
4599 > /* Line 1810 of yacc.c  */
4600 > #line 1291 "conf_parser.y"
4601      {
4602    if (conf_parser_ctx.pass == 1)
4603    {
# Line 4594 | Line 4607 | yyreduce:
4607   }
4608      break;
4609  
4610 <  case 188:
4610 >  case 196:
4611  
4612 < /* Line 1806 of yacc.c  */
4613 < #line 1290 "ircd_parser.y"
4612 > /* Line 1810 of yacc.c  */
4613 > #line 1298 "conf_parser.y"
4614      {
4615    if (conf_parser_ctx.pass == 1)
4616    {
# Line 4641 | Line 4654 | yyreduce:
4654   }
4655      break;
4656  
4657 <  case 205:
4657 >  case 213:
4658  
4659 < /* Line 1806 of yacc.c  */
4660 < #line 1348 "ircd_parser.y"
4659 > /* Line 1810 of yacc.c  */
4660 > #line 1356 "conf_parser.y"
4661      {
4662    if (conf_parser_ctx.pass == 1)
4663    {
# Line 4654 | Line 4667 | yyreduce:
4667   }
4668      break;
4669  
4670 <  case 206:
4670 >  case 214:
4671  
4672 < /* Line 1806 of yacc.c  */
4673 < #line 1357 "ircd_parser.y"
4672 > /* Line 1810 of yacc.c  */
4673 > #line 1365 "conf_parser.y"
4674      {
4675    if (conf_parser_ctx.pass == 1)
4676 <    PingFreq(yy_class) = (yyvsp[(3) - (4)].number);
4676 >    yy_class->ping_freq = (yyvsp[(3) - (4)].number);
4677   }
4678      break;
4679  
4680 <  case 207:
4680 >  case 215:
4681  
4682 < /* Line 1806 of yacc.c  */
4683 < #line 1363 "ircd_parser.y"
4682 > /* Line 1810 of yacc.c  */
4683 > #line 1371 "conf_parser.y"
4684      {
4685    if (conf_parser_ctx.pass == 1)
4686 <    PingWarning(yy_class) = (yyvsp[(3) - (4)].number);
4686 >    yy_class->ping_warning = (yyvsp[(3) - (4)].number);
4687   }
4688      break;
4689  
4690 <  case 208:
4690 >  case 216:
4691  
4692 < /* Line 1806 of yacc.c  */
4693 < #line 1369 "ircd_parser.y"
4692 > /* Line 1810 of yacc.c  */
4693 > #line 1377 "conf_parser.y"
4694      {
4695    if (conf_parser_ctx.pass == 1)
4696 <    MaxPerIp(yy_class) = (yyvsp[(3) - (4)].number);
4696 >    yy_class->max_perip = (yyvsp[(3) - (4)].number);
4697   }
4698      break;
4699  
4700 <  case 209:
4700 >  case 217:
4701  
4702 < /* Line 1806 of yacc.c  */
4703 < #line 1375 "ircd_parser.y"
4702 > /* Line 1810 of yacc.c  */
4703 > #line 1383 "conf_parser.y"
4704      {
4705    if (conf_parser_ctx.pass == 1)
4706 <    ConFreq(yy_class) = (yyvsp[(3) - (4)].number);
4706 >    yy_class->con_freq = (yyvsp[(3) - (4)].number);
4707   }
4708      break;
4709  
4710 <  case 210:
4710 >  case 218:
4711  
4712 < /* Line 1806 of yacc.c  */
4713 < #line 1381 "ircd_parser.y"
4712 > /* Line 1810 of yacc.c  */
4713 > #line 1389 "conf_parser.y"
4714      {
4715    if (conf_parser_ctx.pass == 1)
4716 <    MaxTotal(yy_class) = (yyvsp[(3) - (4)].number);
4716 >    yy_class->max_total = (yyvsp[(3) - (4)].number);
4717   }
4718      break;
4719  
4720 <  case 211:
4720 >  case 219:
4721  
4722 < /* Line 1806 of yacc.c  */
4723 < #line 1387 "ircd_parser.y"
4722 > /* Line 1810 of yacc.c  */
4723 > #line 1395 "conf_parser.y"
4724      {
4725    if (conf_parser_ctx.pass == 1)
4726 <    MaxGlobal(yy_class) = (yyvsp[(3) - (4)].number);
4726 >    yy_class->max_global = (yyvsp[(3) - (4)].number);
4727   }
4728      break;
4729  
4730 <  case 212:
4730 >  case 220:
4731  
4732 < /* Line 1806 of yacc.c  */
4733 < #line 1393 "ircd_parser.y"
4732 > /* Line 1810 of yacc.c  */
4733 > #line 1401 "conf_parser.y"
4734      {
4735    if (conf_parser_ctx.pass == 1)
4736 <    MaxLocal(yy_class) = (yyvsp[(3) - (4)].number);
4736 >    yy_class->max_local = (yyvsp[(3) - (4)].number);
4737   }
4738      break;
4739  
4740 <  case 213:
4740 >  case 221:
4741  
4742 < /* Line 1806 of yacc.c  */
4743 < #line 1399 "ircd_parser.y"
4742 > /* Line 1810 of yacc.c  */
4743 > #line 1407 "conf_parser.y"
4744      {
4745    if (conf_parser_ctx.pass == 1)
4746 <    MaxIdent(yy_class) = (yyvsp[(3) - (4)].number);
4746 >    yy_class->max_ident = (yyvsp[(3) - (4)].number);
4747   }
4748      break;
4749  
4750 <  case 214:
4750 >  case 222:
4751  
4752 < /* Line 1806 of yacc.c  */
4753 < #line 1405 "ircd_parser.y"
4752 > /* Line 1810 of yacc.c  */
4753 > #line 1413 "conf_parser.y"
4754      {
4755    if (conf_parser_ctx.pass == 1)
4756 <    MaxSendq(yy_class) = (yyvsp[(3) - (4)].number);
4756 >    yy_class->max_sendq = (yyvsp[(3) - (4)].number);
4757   }
4758      break;
4759  
4760 <  case 215:
4760 >  case 223:
4761  
4762 < /* Line 1806 of yacc.c  */
4763 < #line 1411 "ircd_parser.y"
4762 > /* Line 1810 of yacc.c  */
4763 > #line 1419 "conf_parser.y"
4764      {
4765    if (conf_parser_ctx.pass == 1)
4766 <    CidrBitlenIPV4(yy_class) = (yyvsp[(3) - (4)].number);
4766 >    yy_class->cidr_bitlen_ipv4 = (yyvsp[(3) - (4)].number) > 32 ? 32 : (yyvsp[(3) - (4)].number);
4767   }
4768      break;
4769  
4770 <  case 216:
4770 >  case 224:
4771  
4772 < /* Line 1806 of yacc.c  */
4773 < #line 1417 "ircd_parser.y"
4772 > /* Line 1810 of yacc.c  */
4773 > #line 1425 "conf_parser.y"
4774      {
4775    if (conf_parser_ctx.pass == 1)
4776 <    CidrBitlenIPV6(yy_class) = (yyvsp[(3) - (4)].number);
4776 >    yy_class->cidr_bitlen_ipv6 = (yyvsp[(3) - (4)].number) > 128 ? 128 : (yyvsp[(3) - (4)].number);
4777   }
4778      break;
4779  
4780 <  case 217:
4780 >  case 225:
4781  
4782 < /* Line 1806 of yacc.c  */
4783 < #line 1423 "ircd_parser.y"
4782 > /* Line 1810 of yacc.c  */
4783 > #line 1431 "conf_parser.y"
4784      {
4785    if (conf_parser_ctx.pass == 1)
4786 <    NumberPerCidr(yy_class) = (yyvsp[(3) - (4)].number);
4786 >    yy_class->number_per_cidr = (yyvsp[(3) - (4)].number);
4787   }
4788      break;
4789  
4790 <  case 218:
4790 >  case 226:
4791  
4792 < /* Line 1806 of yacc.c  */
4793 < #line 1432 "ircd_parser.y"
4792 > /* Line 1810 of yacc.c  */
4793 > #line 1440 "conf_parser.y"
4794      {
4795    if (conf_parser_ctx.pass == 2)
4796    {
# Line 4787 | Line 4800 | yyreduce:
4800   }
4801      break;
4802  
4803 <  case 219:
4803 >  case 227:
4804  
4805 < /* Line 1806 of yacc.c  */
4806 < #line 1439 "ircd_parser.y"
4805 > /* Line 1810 of yacc.c  */
4806 > #line 1447 "conf_parser.y"
4807      {
4808    if (conf_parser_ctx.pass == 2)
4809    {
# Line 4800 | Line 4813 | yyreduce:
4813   }
4814      break;
4815  
4816 <  case 220:
4816 >  case 228:
4817  
4818 < /* Line 1806 of yacc.c  */
4819 < #line 1448 "ircd_parser.y"
4818 > /* Line 1810 of yacc.c  */
4819 > #line 1456 "conf_parser.y"
4820      {
4821    listener_flags = 0;
4822   }
4823      break;
4824  
4825 <  case 224:
4825 >  case 232:
4826  
4827 < /* Line 1806 of yacc.c  */
4828 < #line 1454 "ircd_parser.y"
4827 > /* Line 1810 of yacc.c  */
4828 > #line 1462 "conf_parser.y"
4829      {
4830    if (conf_parser_ctx.pass == 2)
4831      listener_flags |= LISTENER_SSL;
4832   }
4833      break;
4834  
4835 <  case 225:
4835 >  case 233:
4836  
4837 < /* Line 1806 of yacc.c  */
4838 < #line 1458 "ircd_parser.y"
4837 > /* Line 1810 of yacc.c  */
4838 > #line 1466 "conf_parser.y"
4839      {
4840    if (conf_parser_ctx.pass == 2)
4841      listener_flags |= LISTENER_HIDDEN;
4842   }
4843      break;
4844  
4845 <  case 226:
4845 >  case 234:
4846  
4847 < /* Line 1806 of yacc.c  */
4848 < #line 1462 "ircd_parser.y"
4847 > /* Line 1810 of yacc.c  */
4848 > #line 1470 "conf_parser.y"
4849      {
4850    if (conf_parser_ctx.pass == 2)
4851      listener_flags |= LISTENER_SERVER;
4852   }
4853      break;
4854  
4855 <  case 234:
4855 >  case 242:
4856  
4857 < /* Line 1806 of yacc.c  */
4858 < #line 1472 "ircd_parser.y"
4857 > /* Line 1810 of yacc.c  */
4858 > #line 1480 "conf_parser.y"
4859      { listener_flags = 0; }
4860      break;
4861  
4862 <  case 238:
4862 >  case 246:
4863  
4864 < /* Line 1806 of yacc.c  */
4865 < #line 1477 "ircd_parser.y"
4864 > /* Line 1810 of yacc.c  */
4865 > #line 1485 "conf_parser.y"
4866      {
4867    if (conf_parser_ctx.pass == 2)
4868    {
# Line 4866 | Line 4879 | yyreduce:
4879   }
4880      break;
4881  
4882 <  case 239:
4882 >  case 247:
4883  
4884 < /* Line 1806 of yacc.c  */
4885 < #line 1491 "ircd_parser.y"
4884 > /* Line 1810 of yacc.c  */
4885 > #line 1499 "conf_parser.y"
4886      {
4887    if (conf_parser_ctx.pass == 2)
4888    {
# Line 4890 | Line 4903 | yyreduce:
4903   }
4904      break;
4905  
4906 <  case 240:
4906 >  case 248:
4907  
4908 < /* Line 1806 of yacc.c  */
4909 < #line 1511 "ircd_parser.y"
4908 > /* Line 1810 of yacc.c  */
4909 > #line 1519 "conf_parser.y"
4910      {
4911    if (conf_parser_ctx.pass == 2)
4912    {
# Line 4903 | Line 4916 | yyreduce:
4916   }
4917      break;
4918  
4919 <  case 241:
4919 >  case 249:
4920  
4921 < /* Line 1806 of yacc.c  */
4922 < #line 1520 "ircd_parser.y"
4921 > /* Line 1810 of yacc.c  */
4922 > #line 1528 "conf_parser.y"
4923      {
4924    if (conf_parser_ctx.pass == 2)
4925    {
# Line 4916 | Line 4929 | yyreduce:
4929   }
4930      break;
4931  
4932 <  case 242:
4932 >  case 250:
4933  
4934 < /* Line 1806 of yacc.c  */
4935 < #line 1532 "ircd_parser.y"
4934 > /* Line 1810 of yacc.c  */
4935 > #line 1540 "conf_parser.y"
4936      {
4937    if (conf_parser_ctx.pass == 2)
4938    {
# Line 4934 | Line 4947 | yyreduce:
4947   }
4948      break;
4949  
4950 <  case 243:
4950 >  case 251:
4951  
4952 < /* Line 1806 of yacc.c  */
4953 < #line 1544 "ircd_parser.y"
4952 > /* Line 1810 of yacc.c  */
4953 > #line 1552 "conf_parser.y"
4954      {
4955    if (conf_parser_ctx.pass == 2)
4956    {
# Line 4995 | Line 5008 | yyreduce:
5008   }
5009      break;
5010  
5011 <  case 255:
5011 >  case 263:
5012  
5013 < /* Line 1806 of yacc.c  */
5014 < #line 1606 "ircd_parser.y"
5013 > /* Line 1810 of yacc.c  */
5014 > #line 1614 "conf_parser.y"
5015      {
5016    if (conf_parser_ctx.pass == 2)
5017    {
# Line 5034 | Line 5047 | yyreduce:
5047   }
5048      break;
5049  
5050 <  case 256:
5050 >  case 264:
5051  
5052 < /* Line 1806 of yacc.c  */
5053 < #line 1643 "ircd_parser.y"
5052 > /* Line 1810 of yacc.c  */
5053 > #line 1649 "conf_parser.y"
5054      {
5055    if (conf_parser_ctx.pass == 2)
5056    {
# Line 5051 | Line 5064 | yyreduce:
5064   }
5065      break;
5066  
5067 <  case 257:
5067 >  case 265:
5068  
5069 < /* Line 1806 of yacc.c  */
5070 < #line 1656 "ircd_parser.y"
5069 > /* Line 1810 of yacc.c  */
5070 > #line 1662 "conf_parser.y"
5071      {
5072    if (conf_parser_ctx.pass == 2)
5073    {
# Line 5064 | Line 5077 | yyreduce:
5077   }
5078      break;
5079  
5080 <  case 258:
5080 >  case 266:
5081  
5082 < /* Line 1806 of yacc.c  */
5083 < #line 1665 "ircd_parser.y"
5082 > /* Line 1810 of yacc.c  */
5083 > #line 1671 "conf_parser.y"
5084      {
5085    if (conf_parser_ctx.pass == 2)
5086    {
# Line 5079 | Line 5092 | yyreduce:
5092   }
5093      break;
5094  
5095 <  case 259:
5095 >  case 267:
5096  
5097 < /* Line 1806 of yacc.c  */
5098 < #line 1676 "ircd_parser.y"
5097 > /* Line 1810 of yacc.c  */
5098 > #line 1682 "conf_parser.y"
5099      {
5100   }
5101      break;
5102  
5103 <  case 263:
5103 >  case 271:
5104  
5105 < /* Line 1806 of yacc.c  */
5106 < #line 1681 "ircd_parser.y"
5105 > /* Line 1810 of yacc.c  */
5106 > #line 1687 "conf_parser.y"
5107      {
5108    if (conf_parser_ctx.pass == 2)
5109      yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
5110   }
5111      break;
5112  
5113 <  case 264:
5113 >  case 272:
5114  
5115 < /* Line 1806 of yacc.c  */
5116 < #line 1685 "ircd_parser.y"
5115 > /* Line 1810 of yacc.c  */
5116 > #line 1691 "conf_parser.y"
5117      {
5118    if (conf_parser_ctx.pass == 2)
5119      yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
5120   }
5121      break;
5122  
5123 <  case 265:
5123 >  case 273:
5124  
5125 < /* Line 1806 of yacc.c  */
5126 < #line 1689 "ircd_parser.y"
5125 > /* Line 1810 of yacc.c  */
5126 > #line 1695 "conf_parser.y"
5127      {
5128    if (conf_parser_ctx.pass == 2)
5129      yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
5130   }
5131      break;
5132  
5133 <  case 266:
5133 >  case 274:
5134  
5135 < /* Line 1806 of yacc.c  */
5136 < #line 1693 "ircd_parser.y"
5135 > /* Line 1810 of yacc.c  */
5136 > #line 1699 "conf_parser.y"
5137      {
5138    if (conf_parser_ctx.pass == 2)
5139      yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
5140   }
5141      break;
5142  
5143 <  case 267:
5143 >  case 275:
5144  
5145 < /* Line 1806 of yacc.c  */
5146 < #line 1697 "ircd_parser.y"
5145 > /* Line 1810 of yacc.c  */
5146 > #line 1703 "conf_parser.y"
5147      {
5148    if (conf_parser_ctx.pass == 2)
5149      yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
5150   }
5151      break;
5152  
5153 <  case 268:
5153 >  case 276:
5154  
5155 < /* Line 1806 of yacc.c  */
5156 < #line 1701 "ircd_parser.y"
5155 > /* Line 1810 of yacc.c  */
5156 > #line 1707 "conf_parser.y"
5157      {
5158    if (conf_parser_ctx.pass == 2)
5159      yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
5160   }
5161      break;
5162  
5163 <  case 269:
5163 >  case 277:
5164  
5165 < /* Line 1806 of yacc.c  */
5166 < #line 1705 "ircd_parser.y"
5165 > /* Line 1810 of yacc.c  */
5166 > #line 1711 "conf_parser.y"
5167      {
5168    if (conf_parser_ctx.pass == 2)
5169      yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
5170   }
5171      break;
5172  
5173 <  case 270:
5173 >  case 278:
5174  
5175 < /* Line 1806 of yacc.c  */
5176 < #line 1709 "ircd_parser.y"
5175 > /* Line 1810 of yacc.c  */
5176 > #line 1715 "conf_parser.y"
5177      {
5178    if (conf_parser_ctx.pass == 2)
5179      yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
5180   }
5181      break;
5182  
5183 <  case 271:
5183 >  case 279:
5184  
5185 < /* Line 1806 of yacc.c  */
5186 < #line 1713 "ircd_parser.y"
5185 > /* Line 1810 of yacc.c  */
5186 > #line 1719 "conf_parser.y"
5187      {
5188    if (conf_parser_ctx.pass == 2)
5189      yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
5190   }
5191      break;
5192  
5193 <  case 272:
5193 >  case 280:
5194  
5195 < /* Line 1806 of yacc.c  */
5196 < #line 1720 "ircd_parser.y"
5195 > /* Line 1810 of yacc.c  */
5196 > #line 1726 "conf_parser.y"
5197      {
5198    if (conf_parser_ctx.pass == 2)
5199    {
# Line 5200 | Line 5213 | yyreduce:
5213   }
5214      break;
5215  
5216 <  case 273:
5216 >  case 281:
5217  
5218 < /* Line 1806 of yacc.c  */
5219 < #line 1739 "ircd_parser.y"
5218 > /* Line 1810 of yacc.c  */
5219 > #line 1745 "conf_parser.y"
5220      {
5221    if (conf_parser_ctx.pass == 2)
5222    {
# Line 5214 | Line 5227 | yyreduce:
5227   }
5228      break;
5229  
5230 <  case 274:
5230 >  case 282:
5231  
5232 < /* Line 1806 of yacc.c  */
5233 < #line 1749 "ircd_parser.y"
5232 > /* Line 1810 of yacc.c  */
5233 > #line 1755 "conf_parser.y"
5234      {
5235    if (conf_parser_ctx.pass == 2)
5236    {
# Line 5227 | Line 5240 | yyreduce:
5240   }
5241      break;
5242  
5243 <  case 275:
5243 >  case 283:
5244  
5245 < /* Line 1806 of yacc.c  */
5246 < #line 1762 "ircd_parser.y"
5245 > /* Line 1810 of yacc.c  */
5246 > #line 1768 "conf_parser.y"
5247      {
5248    if (conf_parser_ctx.pass == 2)
5249    {
# Line 5240 | Line 5253 | yyreduce:
5253   }
5254      break;
5255  
5256 <  case 276:
5256 >  case 284:
5257  
5258 < /* Line 1806 of yacc.c  */
5259 < #line 1769 "ircd_parser.y"
5258 > /* Line 1810 of yacc.c  */
5259 > #line 1775 "conf_parser.y"
5260      {
5261    if (conf_parser_ctx.pass == 2)
5262    {
# Line 5253 | Line 5266 | yyreduce:
5266   }
5267      break;
5268  
5269 <  case 283:
5269 >  case 291:
5270  
5271 < /* Line 1806 of yacc.c  */
5272 < #line 1781 "ircd_parser.y"
5271 > /* Line 1810 of yacc.c  */
5272 > #line 1787 "conf_parser.y"
5273      {
5274    if (conf_parser_ctx.pass == 2)
5275    {
# Line 5266 | Line 5279 | yyreduce:
5279   }
5280      break;
5281  
5282 <  case 284:
5282 >  case 292:
5283  
5284 < /* Line 1806 of yacc.c  */
5285 < #line 1790 "ircd_parser.y"
5284 > /* Line 1810 of yacc.c  */
5285 > #line 1796 "conf_parser.y"
5286      {
5287    if (conf_parser_ctx.pass == 2)
5288    {
# Line 5285 | Line 5298 | yyreduce:
5298   }
5299      break;
5300  
5301 <  case 285:
5301 >  case 293:
5302  
5303 < /* Line 1806 of yacc.c  */
5304 < #line 1805 "ircd_parser.y"
5303 > /* Line 1810 of yacc.c  */
5304 > #line 1811 "conf_parser.y"
5305      {
5306    if (conf_parser_ctx.pass == 2)
5307    {
# Line 5299 | Line 5312 | yyreduce:
5312   }
5313      break;
5314  
5315 <  case 291:
5315 >  case 299:
5316  
5317 < /* Line 1806 of yacc.c  */
5318 < #line 1823 "ircd_parser.y"
5317 > /* Line 1810 of yacc.c  */
5318 > #line 1829 "conf_parser.y"
5319      {
5320    if (conf_parser_ctx.pass == 2)
5321    {
# Line 5315 | Line 5328 | yyreduce:
5328   }
5329      break;
5330  
5331 <  case 292:
5331 >  case 300:
5332  
5333 < /* Line 1806 of yacc.c  */
5334 < #line 1838 "ircd_parser.y"
5333 > /* Line 1810 of yacc.c  */
5334 > #line 1844 "conf_parser.y"
5335      {
5336    if (conf_parser_ctx.pass == 2)
5337    {
# Line 5329 | Line 5342 | yyreduce:
5342   }
5343      break;
5344  
5345 <  case 293:
5345 >  case 301:
5346  
5347 < /* Line 1806 of yacc.c  */
5348 < #line 1846 "ircd_parser.y"
5347 > /* Line 1810 of yacc.c  */
5348 > #line 1852 "conf_parser.y"
5349      {
5350    if (conf_parser_ctx.pass == 2)
5351    {
# Line 5341 | Line 5354 | yyreduce:
5354   }
5355      break;
5356  
5357 <  case 300:
5357 >  case 308:
5358  
5359 < /* Line 1806 of yacc.c  */
5360 < #line 1857 "ircd_parser.y"
5359 > /* Line 1810 of yacc.c  */
5360 > #line 1863 "conf_parser.y"
5361      {
5362    if (conf_parser_ctx.pass == 2)
5363    {
# Line 5354 | Line 5367 | yyreduce:
5367   }
5368      break;
5369  
5370 <  case 301:
5370 >  case 309:
5371  
5372 < /* Line 1806 of yacc.c  */
5373 < #line 1866 "ircd_parser.y"
5372 > /* Line 1810 of yacc.c  */
5373 > #line 1872 "conf_parser.y"
5374      {
5375    if (conf_parser_ctx.pass == 2)
5376    {
# Line 5380 | Line 5393 | yyreduce:
5393   }
5394      break;
5395  
5396 <  case 302:
5396 >  case 310:
5397  
5398 < /* Line 1806 of yacc.c  */
5399 < #line 1888 "ircd_parser.y"
5398 > /* Line 1810 of yacc.c  */
5399 > #line 1894 "conf_parser.y"
5400      {
5401    if (conf_parser_ctx.pass == 2)
5402      yy_match_item->action = 0;
5403   }
5404      break;
5405  
5406 <  case 306:
5406 >  case 314:
5407  
5408 < /* Line 1806 of yacc.c  */
5409 < #line 1895 "ircd_parser.y"
5408 > /* Line 1810 of yacc.c  */
5409 > #line 1901 "conf_parser.y"
5410      {
5411    if (conf_parser_ctx.pass == 2)
5412      yy_match_item->action |= SHARED_KLINE;
5413   }
5414      break;
5415  
5416 <  case 307:
5416 >  case 315:
5417  
5418 < /* Line 1806 of yacc.c  */
5419 < #line 1899 "ircd_parser.y"
5418 > /* Line 1810 of yacc.c  */
5419 > #line 1905 "conf_parser.y"
5420      {
5421    if (conf_parser_ctx.pass == 2)
5422 <    yy_match_item->action |= SHARED_TKLINE;
5422 >    yy_match_item->action |= SHARED_UNKLINE;
5423   }
5424      break;
5425  
5426 <  case 308:
5426 >  case 316:
5427  
5428 < /* Line 1806 of yacc.c  */
5429 < #line 1903 "ircd_parser.y"
5428 > /* Line 1810 of yacc.c  */
5429 > #line 1909 "conf_parser.y"
5430      {
5431    if (conf_parser_ctx.pass == 2)
5432 <    yy_match_item->action |= SHARED_UNKLINE;
5432 >    yy_match_item->action |= SHARED_DLINE;
5433   }
5434      break;
5435  
5436 <  case 309:
5436 >  case 317:
5437  
5438 < /* Line 1806 of yacc.c  */
5439 < #line 1907 "ircd_parser.y"
5438 > /* Line 1810 of yacc.c  */
5439 > #line 1913 "conf_parser.y"
5440      {
5441    if (conf_parser_ctx.pass == 2)
5442 <    yy_match_item->action |= SHARED_XLINE;
5442 >    yy_match_item->action |= SHARED_UNDLINE;
5443   }
5444      break;
5445  
5446 <  case 310:
5446 >  case 318:
5447  
5448 < /* Line 1806 of yacc.c  */
5449 < #line 1911 "ircd_parser.y"
5448 > /* Line 1810 of yacc.c  */
5449 > #line 1917 "conf_parser.y"
5450      {
5451    if (conf_parser_ctx.pass == 2)
5452 <    yy_match_item->action |= SHARED_TXLINE;
5452 >    yy_match_item->action |= SHARED_XLINE;
5453   }
5454      break;
5455  
5456 <  case 311:
5456 >  case 319:
5457  
5458 < /* Line 1806 of yacc.c  */
5459 < #line 1915 "ircd_parser.y"
5458 > /* Line 1810 of yacc.c  */
5459 > #line 1921 "conf_parser.y"
5460      {
5461    if (conf_parser_ctx.pass == 2)
5462      yy_match_item->action |= SHARED_UNXLINE;
5463   }
5464      break;
5465  
5466 <  case 312:
5466 >  case 320:
5467  
5468 < /* Line 1806 of yacc.c  */
5469 < #line 1919 "ircd_parser.y"
5468 > /* Line 1810 of yacc.c  */
5469 > #line 1925 "conf_parser.y"
5470      {
5471    if (conf_parser_ctx.pass == 2)
5472      yy_match_item->action |= SHARED_RESV;
5473   }
5474      break;
5475  
5476 <  case 313:
5464 <
5465 < /* Line 1806 of yacc.c  */
5466 < #line 1923 "ircd_parser.y"
5467 <    {
5468 <  if (conf_parser_ctx.pass == 2)
5469 <    yy_match_item->action |= SHARED_TRESV;
5470 < }
5471 <    break;
5472 <
5473 <  case 314:
5476 >  case 321:
5477  
5478 < /* Line 1806 of yacc.c  */
5479 < #line 1927 "ircd_parser.y"
5478 > /* Line 1810 of yacc.c  */
5479 > #line 1929 "conf_parser.y"
5480      {
5481    if (conf_parser_ctx.pass == 2)
5482      yy_match_item->action |= SHARED_UNRESV;
5483   }
5484      break;
5485  
5486 <  case 315:
5486 >  case 322:
5487  
5488 < /* Line 1806 of yacc.c  */
5489 < #line 1931 "ircd_parser.y"
5488 > /* Line 1810 of yacc.c  */
5489 > #line 1933 "conf_parser.y"
5490      {
5491    if (conf_parser_ctx.pass == 2)
5492      yy_match_item->action |= SHARED_LOCOPS;
5493   }
5494      break;
5495  
5496 <  case 316:
5496 >  case 323:
5497  
5498 < /* Line 1806 of yacc.c  */
5499 < #line 1935 "ircd_parser.y"
5498 > /* Line 1810 of yacc.c  */
5499 > #line 1937 "conf_parser.y"
5500      {
5501    if (conf_parser_ctx.pass == 2)
5502      yy_match_item->action = SHARED_ALL;
5503   }
5504      break;
5505  
5506 <  case 317:
5506 >  case 324:
5507  
5508 < /* Line 1806 of yacc.c  */
5509 < #line 1944 "ircd_parser.y"
5508 > /* Line 1810 of yacc.c  */
5509 > #line 1946 "conf_parser.y"
5510      {
5511    if (conf_parser_ctx.pass == 2)
5512    {
# Line 5513 | Line 5516 | yyreduce:
5516   }
5517      break;
5518  
5519 <  case 318:
5519 >  case 325:
5520  
5521 < /* Line 1806 of yacc.c  */
5522 < #line 1951 "ircd_parser.y"
5521 > /* Line 1810 of yacc.c  */
5522 > #line 1953 "conf_parser.y"
5523      {
5524    if (conf_parser_ctx.pass == 2)
5525    {
# Line 5527 | Line 5530 | yyreduce:
5530   }
5531      break;
5532  
5533 <  case 324:
5533 >  case 331:
5534  
5535 < /* Line 1806 of yacc.c  */
5536 < #line 1964 "ircd_parser.y"
5535 > /* Line 1810 of yacc.c  */
5536 > #line 1966 "conf_parser.y"
5537      {
5538    if (conf_parser_ctx.pass == 2)
5539      DupString(yy_conf->name, yylval.string);
5540   }
5541      break;
5542  
5543 <  case 325:
5543 >  case 332:
5544  
5545 < /* Line 1806 of yacc.c  */
5546 < #line 1970 "ircd_parser.y"
5545 > /* Line 1810 of yacc.c  */
5546 > #line 1972 "conf_parser.y"
5547      {
5548    if (conf_parser_ctx.pass == 2)
5549      yy_conf->flags = 0;
5550   }
5551      break;
5552  
5553 <  case 329:
5553 >  case 336:
5554  
5555 < /* Line 1806 of yacc.c  */
5556 < #line 1977 "ircd_parser.y"
5555 > /* Line 1810 of yacc.c  */
5556 > #line 1979 "conf_parser.y"
5557      {
5558    if (conf_parser_ctx.pass == 2)
5559      yy_conf->flags |= SHARED_KLINE;
5560   }
5561      break;
5562  
5563 <  case 330:
5563 >  case 337:
5564  
5565 < /* Line 1806 of yacc.c  */
5566 < #line 1981 "ircd_parser.y"
5565 > /* Line 1810 of yacc.c  */
5566 > #line 1983 "conf_parser.y"
5567      {
5568    if (conf_parser_ctx.pass == 2)
5569 <    yy_conf->flags |= SHARED_TKLINE;
5569 >    yy_conf->flags |= SHARED_UNKLINE;
5570   }
5571      break;
5572  
5573 <  case 331:
5573 >  case 338:
5574  
5575 < /* Line 1806 of yacc.c  */
5576 < #line 1985 "ircd_parser.y"
5575 > /* Line 1810 of yacc.c  */
5576 > #line 1987 "conf_parser.y"
5577      {
5578    if (conf_parser_ctx.pass == 2)
5579 <    yy_conf->flags |= SHARED_UNKLINE;
5579 >    yy_conf->flags |= SHARED_DLINE;
5580   }
5581      break;
5582  
5583 <  case 332:
5583 >  case 339:
5584  
5585 < /* Line 1806 of yacc.c  */
5586 < #line 1989 "ircd_parser.y"
5585 > /* Line 1810 of yacc.c  */
5586 > #line 1991 "conf_parser.y"
5587      {
5588    if (conf_parser_ctx.pass == 2)
5589 <    yy_conf->flags |= SHARED_XLINE;
5589 >    yy_conf->flags |= SHARED_UNDLINE;
5590   }
5591      break;
5592  
5593 <  case 333:
5593 >  case 340:
5594  
5595 < /* Line 1806 of yacc.c  */
5596 < #line 1993 "ircd_parser.y"
5595 > /* Line 1810 of yacc.c  */
5596 > #line 1995 "conf_parser.y"
5597      {
5598    if (conf_parser_ctx.pass == 2)
5599 <    yy_conf->flags |= SHARED_TXLINE;
5599 >    yy_conf->flags |= SHARED_XLINE;
5600   }
5601      break;
5602  
5603 <  case 334:
5603 >  case 341:
5604  
5605 < /* Line 1806 of yacc.c  */
5606 < #line 1997 "ircd_parser.y"
5605 > /* Line 1810 of yacc.c  */
5606 > #line 1999 "conf_parser.y"
5607      {
5608    if (conf_parser_ctx.pass == 2)
5609      yy_conf->flags |= SHARED_UNXLINE;
5610   }
5611      break;
5612  
5613 <  case 335:
5613 >  case 342:
5614  
5615 < /* Line 1806 of yacc.c  */
5616 < #line 2001 "ircd_parser.y"
5615 > /* Line 1810 of yacc.c  */
5616 > #line 2003 "conf_parser.y"
5617      {
5618    if (conf_parser_ctx.pass == 2)
5619      yy_conf->flags |= SHARED_RESV;
5620   }
5621      break;
5622  
5623 <  case 336:
5621 <
5622 < /* Line 1806 of yacc.c  */
5623 < #line 2005 "ircd_parser.y"
5624 <    {
5625 <  if (conf_parser_ctx.pass == 2)
5626 <    yy_conf->flags |= SHARED_TRESV;
5627 < }
5628 <    break;
5629 <
5630 <  case 337:
5623 >  case 343:
5624  
5625 < /* Line 1806 of yacc.c  */
5626 < #line 2009 "ircd_parser.y"
5625 > /* Line 1810 of yacc.c  */
5626 > #line 2007 "conf_parser.y"
5627      {
5628    if (conf_parser_ctx.pass == 2)
5629      yy_conf->flags |= SHARED_UNRESV;
5630   }
5631      break;
5632  
5633 <  case 338:
5633 >  case 344:
5634  
5635 < /* Line 1806 of yacc.c  */
5636 < #line 2013 "ircd_parser.y"
5635 > /* Line 1810 of yacc.c  */
5636 > #line 2011 "conf_parser.y"
5637      {
5638    if (conf_parser_ctx.pass == 2)
5639      yy_conf->flags |= SHARED_LOCOPS;
5640   }
5641      break;
5642  
5643 <  case 339:
5643 >  case 345:
5644  
5645 < /* Line 1806 of yacc.c  */
5646 < #line 2017 "ircd_parser.y"
5645 > /* Line 1810 of yacc.c  */
5646 > #line 2015 "conf_parser.y"
5647      {
5648    if (conf_parser_ctx.pass == 2)
5649      yy_conf->flags = SHARED_ALL;
5650   }
5651      break;
5652  
5653 <  case 340:
5653 >  case 346:
5654  
5655 < /* Line 1806 of yacc.c  */
5656 < #line 2026 "ircd_parser.y"
5655 > /* Line 1810 of yacc.c  */
5656 > #line 2024 "conf_parser.y"
5657      {
5658    if (conf_parser_ctx.pass == 2)
5659    {
# Line 5678 | Line 5671 | yyreduce:
5671   }
5672      break;
5673  
5674 <  case 341:
5674 >  case 347:
5675  
5676 < /* Line 1806 of yacc.c  */
5677 < #line 2041 "ircd_parser.y"
5676 > /* Line 1810 of yacc.c  */
5677 > #line 2039 "conf_parser.y"
5678      {
5679    if (conf_parser_ctx.pass == 2)
5680    {
5681 <    struct CollectItem *yy_hconf=NULL;
5682 <    struct CollectItem *yy_lconf=NULL;
5683 <    dlink_node *ptr;
5684 <    dlink_node *next_ptr;
5685 < #ifdef HAVE_LIBCRYPTO
5686 <    if (yy_aconf->host &&
5687 <        ((yy_aconf->passwd && yy_aconf->spasswd) ||
5688 <         (yy_aconf->rsa_public_key && IsConfCryptLink(yy_aconf))))
5696 < #else /* !HAVE_LIBCRYPTO */
5697 <      if (yy_aconf->host && !IsConfCryptLink(yy_aconf) &&
5698 <          yy_aconf->passwd && yy_aconf->spasswd)
5699 < #endif /* !HAVE_LIBCRYPTO */
5700 <        {
5701 <          if (conf_add_server(yy_conf, class_name) == -1)
5702 <          {
5703 <            delete_conf_item(yy_conf);
5704 <            yy_conf = NULL;
5705 <            yy_aconf = NULL;
5706 <          }
5707 <        }
5708 <        else
5709 <        {
5710 <          /* Even if yy_conf ->name is NULL
5711 <           * should still unhook any hub/leaf confs still pending
5712 <           */
5713 <          unhook_hub_leaf_confs();
5714 <
5715 <          if (yy_conf->name != NULL)
5716 <          {
5717 < #ifndef HAVE_LIBCRYPTO
5718 <            if (IsConfCryptLink(yy_aconf))
5719 <              yyerror("Ignoring connect block -- no OpenSSL support");
5720 < #else
5721 <            if (IsConfCryptLink(yy_aconf) && !yy_aconf->rsa_public_key)
5722 <              yyerror("Ignoring connect block -- missing key");
5723 < #endif
5724 <            if (yy_aconf->host == NULL)
5725 <              yyerror("Ignoring connect block -- missing host");
5726 <            else if (!IsConfCryptLink(yy_aconf) &&
5727 <                    (!yy_aconf->passwd || !yy_aconf->spasswd))
5728 <              yyerror("Ignoring connect block -- missing password");
5729 <          }
5730 <
5731 <
5732 <          /* XXX
5733 <           * This fixes a try_connections() core (caused by invalid class_ptr
5734 <           * pointers) reported by metalrock. That's an ugly fix, but there
5735 <           * is currently no better way. The entire config subsystem needs an
5736 <           * rewrite ASAP. make_conf_item() shouldn't really add things onto
5737 <           * a doubly linked list immediately without any sanity checks!  -Michael
5738 <           */
5739 <          delete_conf_item(yy_conf);
5740 <
5741 <          yy_aconf = NULL;
5742 <          yy_conf = NULL;
5743 <        }
5744 <
5745 <      /*
5746 <       * yy_conf is still pointing at the server that is having
5747 <       * a connect block built for it. This means, y_aconf->name
5748 <       * points to the actual irc name this server will be known as.
5749 <       * Now this new server has a set or even just one hub_mask (or leaf_mask)
5750 <       * given in the link list at yy_hconf. Fill in the HUB confs
5751 <       * from this link list now.
5752 <       */        
5753 <      DLINK_FOREACH_SAFE(ptr, next_ptr, hub_conf_list.head)
5681 >    if (yy_aconf->host && yy_aconf->passwd && yy_aconf->spasswd)
5682 >    {
5683 >      if (conf_add_server(yy_conf, class_name) == -1)
5684 >        delete_conf_item(yy_conf);
5685 >    }
5686 >    else
5687 >    {
5688 >      if (yy_conf->name != NULL)
5689        {
5690 <        struct ConfItem *new_hub_conf;
5691 <        struct MatchItem *match_item;
5692 <
5693 <        yy_hconf = ptr->data;
5759 <
5760 <        /* yy_conf == NULL is a fatal error for this connect block! */
5761 <        if ((yy_conf != NULL) && (yy_conf->name != NULL))
5762 <        {
5763 <          new_hub_conf = make_conf_item(HUB_TYPE);
5764 <          match_item = (struct MatchItem *)map_to_conf(new_hub_conf);
5765 <          DupString(new_hub_conf->name, yy_conf->name);
5766 <          if (yy_hconf->user != NULL)
5767 <            DupString(match_item->user, yy_hconf->user);
5768 <          else
5769 <            DupString(match_item->user, "*");
5770 <          if (yy_hconf->host != NULL)
5771 <            DupString(match_item->host, yy_hconf->host);
5772 <          else
5773 <            DupString(match_item->host, "*");
5774 <        }
5775 <        dlinkDelete(&yy_hconf->node, &hub_conf_list);
5776 <        free_collect_item(yy_hconf);
5690 >        if (yy_aconf->host == NULL)
5691 >          yyerror("Ignoring connect block -- missing host");
5692 >        else if (!yy_aconf->passwd || !yy_aconf->spasswd)
5693 >          yyerror("Ignoring connect block -- missing password");
5694        }
5695  
5696 <      /* Ditto for the LEAF confs */
5697 <
5698 <      DLINK_FOREACH_SAFE(ptr, next_ptr, leaf_conf_list.head)
5699 <      {
5700 <        struct ConfItem *new_leaf_conf;
5701 <        struct MatchItem *match_item;
5702 <
5703 <        yy_lconf = ptr->data;
5696 >      /* XXX
5697 >       * This fixes a try_connections() core (caused by invalid class_ptr
5698 >       * pointers) reported by metalrock. That's an ugly fix, but there
5699 >       * is currently no better way. The entire config subsystem needs an
5700 >       * rewrite ASAP. make_conf_item() shouldn't really add things onto
5701 >       * a doubly linked list immediately without any sanity checks!  -Michael
5702 >       */
5703 >      delete_conf_item(yy_conf);
5704 >    }
5705  
5706 <        if ((yy_conf != NULL) && (yy_conf->name != NULL))
5707 <        {
5708 <          new_leaf_conf = make_conf_item(LEAF_TYPE);
5709 <          match_item = (struct MatchItem *)map_to_conf(new_leaf_conf);
5792 <          DupString(new_leaf_conf->name, yy_conf->name);
5793 <          if (yy_lconf->user != NULL)
5794 <            DupString(match_item->user, yy_lconf->user);
5795 <          else
5796 <            DupString(match_item->user, "*");
5797 <          if (yy_lconf->host != NULL)
5798 <            DupString(match_item->host, yy_lconf->host);
5799 <          else
5800 <            DupString(match_item->host, "*");
5801 <        }
5802 <        dlinkDelete(&yy_lconf->node, &leaf_conf_list);
5803 <        free_collect_item(yy_lconf);
5804 <      }
5805 <      MyFree(class_name);
5806 <      class_name = NULL;
5807 <      yy_conf = NULL;
5808 <      yy_aconf = NULL;
5706 >    MyFree(class_name);
5707 >    class_name = NULL;
5708 >    yy_conf = NULL;
5709 >    yy_aconf = NULL;
5710    }
5711   }
5712      break;
5713  
5714 <  case 359:
5714 >  case 364:
5715  
5716 < /* Line 1806 of yacc.c  */
5717 < #line 2178 "ircd_parser.y"
5716 > /* Line 1810 of yacc.c  */
5717 > #line 2083 "conf_parser.y"
5718      {
5719    if (conf_parser_ctx.pass == 2)
5720    {
5820    if (yy_conf->name != NULL)
5821      yyerror("Multiple connect name entry");
5822
5721      MyFree(yy_conf->name);
5722      DupString(yy_conf->name, yylval.string);
5723    }
5724   }
5725      break;
5726  
5727 <  case 360:
5727 >  case 365:
5728  
5729 < /* Line 1806 of yacc.c  */
5730 < #line 2190 "ircd_parser.y"
5729 > /* Line 1810 of yacc.c  */
5730 > #line 2092 "conf_parser.y"
5731      {
5732    if (conf_parser_ctx.pass == 2)
5733    {
# Line 5839 | Line 5737 | yyreduce:
5737   }
5738      break;
5739  
5740 <  case 361:
5740 >  case 366:
5741  
5742 < /* Line 1806 of yacc.c  */
5743 < #line 2199 "ircd_parser.y"
5742 > /* Line 1810 of yacc.c  */
5743 > #line 2101 "conf_parser.y"
5744      {
5745    if (conf_parser_ctx.pass == 2)
5746    {
# Line 5860 | Line 5758 | yyreduce:
5758      {
5759        assert(res != NULL);
5760  
5761 <      memcpy(&yy_aconf->my_ipnum, res->ai_addr, res->ai_addrlen);
5762 <      yy_aconf->my_ipnum.ss.ss_family = res->ai_family;
5763 <      yy_aconf->my_ipnum.ss_len = res->ai_addrlen;
5761 >      memcpy(&yy_aconf->bind, res->ai_addr, res->ai_addrlen);
5762 >      yy_aconf->bind.ss.ss_family = res->ai_family;
5763 >      yy_aconf->bind.ss_len = res->ai_addrlen;
5764        freeaddrinfo(res);
5765      }
5766    }
5767   }
5768      break;
5769  
5770 <  case 362:
5770 >  case 367:
5771  
5772 < /* Line 1806 of yacc.c  */
5773 < #line 2225 "ircd_parser.y"
5772 > /* Line 1810 of yacc.c  */
5773 > #line 2127 "conf_parser.y"
5774      {
5775    if (conf_parser_ctx.pass == 2)
5776    {
# Line 5891 | Line 5789 | yyreduce:
5789   }
5790      break;
5791  
5792 <  case 363:
5792 >  case 368:
5793  
5794 < /* Line 1806 of yacc.c  */
5795 < #line 2243 "ircd_parser.y"
5794 > /* Line 1810 of yacc.c  */
5795 > #line 2145 "conf_parser.y"
5796      {
5797    if (conf_parser_ctx.pass == 2)
5798    {
# Line 5913 | Line 5811 | yyreduce:
5811   }
5812      break;
5813  
5814 <  case 364:
5814 >  case 369:
5815  
5816 < /* Line 1806 of yacc.c  */
5817 < #line 2261 "ircd_parser.y"
5816 > /* Line 1810 of yacc.c  */
5817 > #line 2163 "conf_parser.y"
5818      {
5819    if (conf_parser_ctx.pass == 2)
5820      yy_aconf->port = (yyvsp[(3) - (4)].number);
5821   }
5822      break;
5823  
5824 <  case 365:
5824 >  case 370:
5825  
5826 < /* Line 1806 of yacc.c  */
5827 < #line 2267 "ircd_parser.y"
5826 > /* Line 1810 of yacc.c  */
5827 > #line 2169 "conf_parser.y"
5828      {
5829    if (conf_parser_ctx.pass == 2)
5830      yy_aconf->aftype = AF_INET;
5831   }
5832      break;
5833  
5834 <  case 366:
5834 >  case 371:
5835  
5836 < /* Line 1806 of yacc.c  */
5837 < #line 2271 "ircd_parser.y"
5836 > /* Line 1810 of yacc.c  */
5837 > #line 2173 "conf_parser.y"
5838      {
5839   #ifdef IPV6
5840    if (conf_parser_ctx.pass == 2)
# Line 5945 | Line 5843 | yyreduce:
5843   }
5844      break;
5845  
5948  case 367:
5949
5950 /* Line 1806 of yacc.c  */
5951 #line 2279 "ircd_parser.y"
5952    {
5953 }
5954    break;
5955
5956  case 371:
5957
5958 /* Line 1806 of yacc.c  */
5959 #line 2284 "ircd_parser.y"
5960    {
5961  if (conf_parser_ctx.pass == 2)
5962 #ifndef HAVE_LIBZ
5963    yyerror("Ignoring flags = compressed; -- no zlib support");
5964 #else
5965 {
5966   SetConfCompressed(yy_aconf);
5967 }
5968 #endif
5969 }
5970    break;
5971
5846    case 372:
5847  
5848 < /* Line 1806 of yacc.c  */
5849 < #line 2294 "ircd_parser.y"
5848 > /* Line 1810 of yacc.c  */
5849 > #line 2181 "conf_parser.y"
5850      {
5977  if (conf_parser_ctx.pass == 2)
5978    SetConfCryptLink(yy_aconf);
5851   }
5852      break;
5853  
5854 <  case 373:
5854 >  case 376:
5855  
5856 < /* Line 1806 of yacc.c  */
5857 < #line 2298 "ircd_parser.y"
5856 > /* Line 1810 of yacc.c  */
5857 > #line 2186 "conf_parser.y"
5858      {
5859    if (conf_parser_ctx.pass == 2)
5860      SetConfAllowAutoConn(yy_aconf);
5861   }
5862      break;
5863  
5864 <  case 374:
5864 >  case 377:
5865  
5866 < /* Line 1806 of yacc.c  */
5867 < #line 2302 "ircd_parser.y"
5866 > /* Line 1810 of yacc.c  */
5867 > #line 2190 "conf_parser.y"
5868      {
5869    if (conf_parser_ctx.pass == 2)
5870      SetConfAwayBurst(yy_aconf);
5871   }
5872      break;
5873  
5874 <  case 375:
5874 >  case 378:
5875  
5876 < /* Line 1806 of yacc.c  */
5877 < #line 2306 "ircd_parser.y"
5876 > /* Line 1810 of yacc.c  */
5877 > #line 2194 "conf_parser.y"
5878      {
5879    if (conf_parser_ctx.pass == 2)
5880      SetConfTopicBurst(yy_aconf);
5881   }
5882      break;
5883  
5884 <  case 376:
5884 >  case 379:
5885  
5886 < /* Line 1806 of yacc.c  */
5887 < #line 2312 "ircd_parser.y"
5886 > /* Line 1810 of yacc.c  */
5887 > #line 2198 "conf_parser.y"
5888      {
6017 #ifdef HAVE_LIBCRYPTO
5889    if (conf_parser_ctx.pass == 2)
5890 <  {
6020 <    BIO *file;
6021 <
6022 <    if (yy_aconf->rsa_public_key != NULL)
6023 <    {
6024 <      RSA_free(yy_aconf->rsa_public_key);
6025 <      yy_aconf->rsa_public_key = NULL;
6026 <    }
6027 <
6028 <    if (yy_aconf->rsa_public_key_file != NULL)
6029 <    {
6030 <      MyFree(yy_aconf->rsa_public_key_file);
6031 <      yy_aconf->rsa_public_key_file = NULL;
6032 <    }
6033 <
6034 <    DupString(yy_aconf->rsa_public_key_file, yylval.string);
6035 <
6036 <    if ((file = BIO_new_file(yylval.string, "r")) == NULL)
6037 <    {
6038 <      yyerror("Ignoring rsa_public_key_file -- file doesn't exist");
6039 <      break;
6040 <    }
6041 <
6042 <    yy_aconf->rsa_public_key = (RSA *)PEM_read_bio_RSA_PUBKEY(file, NULL, 0, NULL);
6043 <
6044 <    if (yy_aconf->rsa_public_key == NULL)
6045 <    {
6046 <      yyerror("Ignoring rsa_public_key_file -- Key invalid; check key syntax.");
6047 <      break;
6048 <    }
6049 <      
6050 <    BIO_set_close(file, BIO_CLOSE);
6051 <    BIO_free(file);
6052 <  }
6053 < #endif /* HAVE_LIBCRYPTO */
5890 >    SetConfSSL(yy_aconf);
5891   }
5892      break;
5893  
5894 <  case 377:
5894 >  case 380:
5895  
5896 < /* Line 1806 of yacc.c  */
5897 < #line 2353 "ircd_parser.y"
5896 > /* Line 1810 of yacc.c  */
5897 > #line 2204 "conf_parser.y"
5898      {
5899    if (conf_parser_ctx.pass == 2)
5900    {
# Line 6069 | Line 5906 | yyreduce:
5906   }
5907      break;
5908  
5909 <  case 378:
5909 >  case 381:
5910  
5911 < /* Line 1806 of yacc.c  */
5912 < #line 2364 "ircd_parser.y"
5911 > /* Line 1810 of yacc.c  */
5912 > #line 2215 "conf_parser.y"
5913      {
5914    if (conf_parser_ctx.pass == 2)
5915    {
5916 <    struct CollectItem *yy_tmp;
5916 >    char *mask;
5917  
5918 <    yy_tmp = (struct CollectItem *)MyMalloc(sizeof(struct CollectItem));
5919 <    DupString(yy_tmp->host, yylval.string);
6083 <    DupString(yy_tmp->user, "*");
6084 <    dlinkAdd(yy_tmp, &yy_tmp->node, &hub_conf_list);
5918 >    DupString(mask, yylval.string);
5919 >    dlinkAdd(mask, make_dlink_node(), &yy_aconf->hub_list);
5920    }
5921   }
5922      break;
5923  
5924 <  case 379:
5924 >  case 382:
5925  
5926 < /* Line 1806 of yacc.c  */
5927 < #line 2377 "ircd_parser.y"
5926 > /* Line 1810 of yacc.c  */
5927 > #line 2226 "conf_parser.y"
5928      {
5929    if (conf_parser_ctx.pass == 2)
5930    {
5931 <    struct CollectItem *yy_tmp;
5931 >    char *mask;
5932  
5933 <    yy_tmp = (struct CollectItem *)MyMalloc(sizeof(struct CollectItem));
5934 <    DupString(yy_tmp->host, yylval.string);
6100 <    DupString(yy_tmp->user, "*");
6101 <    dlinkAdd(yy_tmp, &yy_tmp->node, &leaf_conf_list);
5933 >    DupString(mask, yylval.string);
5934 >    dlinkAdd(mask, make_dlink_node(), &yy_aconf->leaf_list);
5935    }
5936   }
5937      break;
5938  
5939 <  case 380:
5939 >  case 383:
5940  
5941 < /* Line 1806 of yacc.c  */
5942 < #line 2390 "ircd_parser.y"
5941 > /* Line 1810 of yacc.c  */
5942 > #line 2237 "conf_parser.y"
5943      {
5944    if (conf_parser_ctx.pass == 2)
5945    {
# Line 6116 | Line 5949 | yyreduce:
5949   }
5950      break;
5951  
5952 <  case 381:
5952 >  case 384:
5953  
5954 < /* Line 1806 of yacc.c  */
5955 < #line 2399 "ircd_parser.y"
5954 > /* Line 1810 of yacc.c  */
5955 > #line 2246 "conf_parser.y"
5956      {
5957   #ifdef HAVE_LIBCRYPTO
5958    if (conf_parser_ctx.pass == 2)
5959    {
5960 <    struct EncCapability *ecap;
5961 <    const char *cipher_name;
6129 <    int found = 0;
6130 <
6131 <    yy_aconf->cipher_preference = NULL;
6132 <    cipher_name = yylval.string;
6133 <
6134 <    for (ecap = CipherTable; ecap->name; ecap++)
6135 <    {
6136 <      if ((irccmp(ecap->name, cipher_name) == 0) &&
6137 <          (ecap->cap & CAP_ENC_MASK))
6138 <      {
6139 <        yy_aconf->cipher_preference = ecap;
6140 <        found = 1;
6141 <        break;
6142 <      }
6143 <    }
6144 <
6145 <    if (!found)
6146 <      yyerror("Invalid cipher");
5960 >    MyFree(yy_aconf->cipher_list);
5961 >    DupString(yy_aconf->cipher_list, yylval.string);
5962    }
5963   #else
5964    if (conf_parser_ctx.pass == 2)
5965 <    yyerror("Ignoring cipher_preference -- no OpenSSL support");
5965 >    yyerror("Ignoring connect::ciphers -- no OpenSSL support");
5966   #endif
5967   }
5968      break;
5969  
5970 <  case 382:
5970 >  case 385:
5971  
5972 < /* Line 1806 of yacc.c  */
5973 < #line 2434 "ircd_parser.y"
5972 > /* Line 1810 of yacc.c  */
5973 > #line 2264 "conf_parser.y"
5974      {
5975    if (conf_parser_ctx.pass == 2)
5976    {
# Line 6165 | Line 5980 | yyreduce:
5980   }
5981      break;
5982  
5983 <  case 383:
5983 >  case 386:
5984  
5985 < /* Line 1806 of yacc.c  */
5986 < #line 2441 "ircd_parser.y"
5985 > /* Line 1810 of yacc.c  */
5986 > #line 2271 "conf_parser.y"
5987      {
5988    if (conf_parser_ctx.pass == 2)
5989    {
# Line 6207 | Line 6022 | yyreduce:
6022        }
6023        else
6024        {
6025 +        find_and_delete_temporary(userbuf, hostbuf, CONF_KLINE);
6026 +
6027          yy_aconf = map_to_conf(make_conf_item(KLINE_TYPE));
6028  
6029          DupString(yy_aconf->user, userbuf);
# Line 6216 | Line 6033 | yyreduce:
6033            DupString(yy_aconf->reason, reasonbuf);
6034          else
6035            DupString(yy_aconf->reason, "No reason");
6036 <        add_conf_by_address(CONF_KILL, yy_aconf);
6036 >        add_conf_by_address(CONF_KLINE, yy_aconf);
6037        }
6038      }
6039  
# Line 6225 | Line 6042 | yyreduce:
6042   }
6043      break;
6044  
6045 <  case 384:
6045 >  case 387:
6046  
6047 < /* Line 1806 of yacc.c  */
6048 < #line 2497 "ircd_parser.y"
6047 > /* Line 1810 of yacc.c  */
6048 > #line 2329 "conf_parser.y"
6049      {
6050   }
6051      break;
6052  
6053 <  case 388:
6053 >  case 391:
6054  
6055 < /* Line 1806 of yacc.c  */
6056 < #line 2502 "ircd_parser.y"
6055 > /* Line 1810 of yacc.c  */
6056 > #line 2334 "conf_parser.y"
6057      {
6058    if (conf_parser_ctx.pass == 2)
6059      regex_ban = 1;
6060   }
6061      break;
6062  
6063 <  case 395:
6063 >  case 398:
6064  
6065 < /* Line 1806 of yacc.c  */
6066 < #line 2511 "ircd_parser.y"
6065 > /* Line 1810 of yacc.c  */
6066 > #line 2343 "conf_parser.y"
6067      {
6068    if (conf_parser_ctx.pass == 2)
6069    {
# Line 6266 | Line 6083 | yyreduce:
6083   }
6084      break;
6085  
6086 <  case 396:
6086 >  case 399:
6087  
6088 < /* Line 1806 of yacc.c  */
6089 < #line 2530 "ircd_parser.y"
6088 > /* Line 1810 of yacc.c  */
6089 > #line 2362 "conf_parser.y"
6090      {
6091    if (conf_parser_ctx.pass == 2)
6092      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6093   }
6094      break;
6095  
6096 <  case 397:
6096 >  case 400:
6097  
6098 < /* Line 1806 of yacc.c  */
6099 < #line 2539 "ircd_parser.y"
6098 > /* Line 1810 of yacc.c  */
6099 > #line 2371 "conf_parser.y"
6100      {
6101    if (conf_parser_ctx.pass == 2)
6102      hostbuf[0] = reasonbuf[0] = '\0';
6103   }
6104      break;
6105  
6106 <  case 398:
6106 >  case 401:
6107  
6108 < /* Line 1806 of yacc.c  */
6109 < #line 2543 "ircd_parser.y"
6108 > /* Line 1810 of yacc.c  */
6109 > #line 2375 "conf_parser.y"
6110      {
6111    if (conf_parser_ctx.pass == 2)
6112    {
6113      if (hostbuf[0] && parse_netmask(hostbuf, NULL, NULL) != HM_HOST)
6114      {
6115 +      find_and_delete_temporary(NULL, hostbuf, CONF_DLINE);
6116 +
6117        yy_aconf = map_to_conf(make_conf_item(DLINE_TYPE));
6118        DupString(yy_aconf->host, hostbuf);
6119  
# Line 6309 | Line 6128 | yyreduce:
6128   }
6129      break;
6130  
6131 <  case 404:
6131 >  case 407:
6132  
6133 < /* Line 1806 of yacc.c  */
6134 < #line 2565 "ircd_parser.y"
6133 > /* Line 1810 of yacc.c  */
6134 > #line 2399 "conf_parser.y"
6135      {
6136    if (conf_parser_ctx.pass == 2)
6137      strlcpy(hostbuf, yylval.string, sizeof(hostbuf));
6138   }
6139      break;
6140  
6141 <  case 405:
6141 >  case 408:
6142  
6143 < /* Line 1806 of yacc.c  */
6144 < #line 2571 "ircd_parser.y"
6143 > /* Line 1810 of yacc.c  */
6144 > #line 2405 "conf_parser.y"
6145      {
6146    if (conf_parser_ctx.pass == 2)
6147      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6148   }
6149      break;
6150  
6151 <  case 411:
6151 >  case 414:
6152  
6153 < /* Line 1806 of yacc.c  */
6154 < #line 2585 "ircd_parser.y"
6153 > /* Line 1810 of yacc.c  */
6154 > #line 2419 "conf_parser.y"
6155      {
6156    if (conf_parser_ctx.pass == 2)
6157    {
# Line 6348 | Line 6167 | yyreduce:
6167   }
6168      break;
6169  
6170 <  case 412:
6170 >  case 415:
6171  
6172 < /* Line 1806 of yacc.c  */
6173 < #line 2603 "ircd_parser.y"
6172 > /* Line 1810 of yacc.c  */
6173 > #line 2437 "conf_parser.y"
6174      {
6175    if (conf_parser_ctx.pass == 2)
6176    {
# Line 6361 | Line 6180 | yyreduce:
6180   }
6181      break;
6182  
6183 <  case 413:
6183 >  case 416:
6184  
6185 < /* Line 1806 of yacc.c  */
6186 < #line 2610 "ircd_parser.y"
6185 > /* Line 1810 of yacc.c  */
6186 > #line 2444 "conf_parser.y"
6187      {
6188    if (conf_parser_ctx.pass == 2)
6189    {
# Line 6405 | Line 6224 | yyreduce:
6224   }
6225      break;
6226  
6227 <  case 414:
6227 >  case 417:
6228  
6229 < /* Line 1806 of yacc.c  */
6230 < #line 2650 "ircd_parser.y"
6229 > /* Line 1810 of yacc.c  */
6230 > #line 2484 "conf_parser.y"
6231      {
6232   }
6233      break;
6234  
6235 <  case 418:
6235 >  case 421:
6236  
6237 < /* Line 1806 of yacc.c  */
6238 < #line 2655 "ircd_parser.y"
6237 > /* Line 1810 of yacc.c  */
6238 > #line 2489 "conf_parser.y"
6239      {
6240    if (conf_parser_ctx.pass == 2)
6241      regex_ban = 1;
6242   }
6243      break;
6244  
6245 <  case 425:
6245 >  case 428:
6246  
6247 < /* Line 1806 of yacc.c  */
6248 < #line 2664 "ircd_parser.y"
6247 > /* Line 1810 of yacc.c  */
6248 > #line 2498 "conf_parser.y"
6249      {
6250    if (conf_parser_ctx.pass == 2)
6251      strlcpy(gecos_name, yylval.string, sizeof(gecos_name));
6252   }
6253      break;
6254  
6255 <  case 426:
6255 >  case 429:
6256  
6257 < /* Line 1806 of yacc.c  */
6258 < #line 2670 "ircd_parser.y"
6257 > /* Line 1810 of yacc.c  */
6258 > #line 2504 "conf_parser.y"
6259      {
6260    if (conf_parser_ctx.pass == 2)
6261      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
# Line 6445 | Line 6264 | yyreduce:
6264  
6265    case 485:
6266  
6267 < /* Line 1806 of yacc.c  */
6268 < #line 2715 "ircd_parser.y"
6267 > /* Line 1810 of yacc.c  */
6268 > #line 2548 "conf_parser.y"
6269      {
6270    ConfigFileEntry.max_watch = (yyvsp[(3) - (4)].number);
6271   }
# Line 6454 | Line 6273 | yyreduce:
6273  
6274    case 486:
6275  
6276 < /* Line 1806 of yacc.c  */
6277 < #line 2720 "ircd_parser.y"
6276 > /* Line 1810 of yacc.c  */
6277 > #line 2553 "conf_parser.y"
6278      {
6279    ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
6280   }
# Line 6463 | Line 6282 | yyreduce:
6282  
6283    case 487:
6284  
6285 < /* Line 1806 of yacc.c  */
6286 < #line 2725 "ircd_parser.y"
6285 > /* Line 1810 of yacc.c  */
6286 > #line 2558 "conf_parser.y"
6287      {
6288    ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
6289   }
# Line 6472 | Line 6291 | yyreduce:
6291  
6292    case 488:
6293  
6294 < /* Line 1806 of yacc.c  */
6295 < #line 2730 "ircd_parser.y"
6294 > /* Line 1810 of yacc.c  */
6295 > #line 2563 "conf_parser.y"
6296      {
6297    ConfigFileEntry.use_whois_actually = yylval.number;
6298   }
# Line 6481 | Line 6300 | yyreduce:
6300  
6301    case 489:
6302  
6303 < /* Line 1806 of yacc.c  */
6304 < #line 2735 "ircd_parser.y"
6303 > /* Line 1810 of yacc.c  */
6304 > #line 2568 "conf_parser.y"
6305      {
6306    GlobalSetOptions.rejecttime = yylval.number;
6307   }
# Line 6490 | Line 6309 | yyreduce:
6309  
6310    case 490:
6311  
6312 < /* Line 1806 of yacc.c  */
6313 < #line 2740 "ircd_parser.y"
6312 > /* Line 1810 of yacc.c  */
6313 > #line 2573 "conf_parser.y"
6314      {
6315    ConfigFileEntry.tkline_expire_notices = yylval.number;
6316   }
# Line 6499 | Line 6318 | yyreduce:
6318  
6319    case 491:
6320  
6321 < /* Line 1806 of yacc.c  */
6322 < #line 2745 "ircd_parser.y"
6321 > /* Line 1810 of yacc.c  */
6322 > #line 2578 "conf_parser.y"
6323      {
6324    ConfigFileEntry.kill_chase_time_limit = (yyvsp[(3) - (4)].number);
6325   }
# Line 6508 | Line 6327 | yyreduce:
6327  
6328    case 492:
6329  
6330 < /* Line 1806 of yacc.c  */
6331 < #line 2750 "ircd_parser.y"
6330 > /* Line 1810 of yacc.c  */
6331 > #line 2583 "conf_parser.y"
6332      {
6333    ConfigFileEntry.hide_spoof_ips = yylval.number;
6334   }
# Line 6517 | Line 6336 | yyreduce:
6336  
6337    case 493:
6338  
6339 < /* Line 1806 of yacc.c  */
6340 < #line 2755 "ircd_parser.y"
6339 > /* Line 1810 of yacc.c  */
6340 > #line 2588 "conf_parser.y"
6341      {
6342    ConfigFileEntry.ignore_bogus_ts = yylval.number;
6343   }
# Line 6526 | Line 6345 | yyreduce:
6345  
6346    case 494:
6347  
6348 < /* Line 1806 of yacc.c  */
6349 < #line 2760 "ircd_parser.y"
6348 > /* Line 1810 of yacc.c  */
6349 > #line 2593 "conf_parser.y"
6350      {
6351    ConfigFileEntry.disable_remote = yylval.number;
6352   }
# Line 6535 | Line 6354 | yyreduce:
6354  
6355    case 495:
6356  
6357 < /* Line 1806 of yacc.c  */
6358 < #line 2765 "ircd_parser.y"
6357 > /* Line 1810 of yacc.c  */
6358 > #line 2598 "conf_parser.y"
6359      {
6360    ConfigFileEntry.failed_oper_notice = yylval.number;
6361   }
# Line 6544 | Line 6363 | yyreduce:
6363  
6364    case 496:
6365  
6366 < /* Line 1806 of yacc.c  */
6367 < #line 2770 "ircd_parser.y"
6366 > /* Line 1810 of yacc.c  */
6367 > #line 2603 "conf_parser.y"
6368      {
6369    ConfigFileEntry.anti_nick_flood = yylval.number;
6370   }
# Line 6553 | Line 6372 | yyreduce:
6372  
6373    case 497:
6374  
6375 < /* Line 1806 of yacc.c  */
6376 < #line 2775 "ircd_parser.y"
6375 > /* Line 1810 of yacc.c  */
6376 > #line 2608 "conf_parser.y"
6377      {
6378    ConfigFileEntry.max_nick_time = (yyvsp[(3) - (4)].number);
6379   }
# Line 6562 | Line 6381 | yyreduce:
6381  
6382    case 498:
6383  
6384 < /* Line 1806 of yacc.c  */
6385 < #line 2780 "ircd_parser.y"
6384 > /* Line 1810 of yacc.c  */
6385 > #line 2613 "conf_parser.y"
6386      {
6387    ConfigFileEntry.max_nick_changes = (yyvsp[(3) - (4)].number);
6388   }
# Line 6571 | Line 6390 | yyreduce:
6390  
6391    case 499:
6392  
6393 < /* Line 1806 of yacc.c  */
6394 < #line 2785 "ircd_parser.y"
6393 > /* Line 1810 of yacc.c  */
6394 > #line 2618 "conf_parser.y"
6395      {
6396    ConfigFileEntry.max_accept = (yyvsp[(3) - (4)].number);
6397   }
# Line 6580 | Line 6399 | yyreduce:
6399  
6400    case 500:
6401  
6402 < /* Line 1806 of yacc.c  */
6403 < #line 2790 "ircd_parser.y"
6402 > /* Line 1810 of yacc.c  */
6403 > #line 2623 "conf_parser.y"
6404      {
6405    ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[(3) - (4)].number);
6406   }
# Line 6589 | Line 6408 | yyreduce:
6408  
6409    case 501:
6410  
6411 < /* Line 1806 of yacc.c  */
6412 < #line 2795 "ircd_parser.y"
6411 > /* Line 1810 of yacc.c  */
6412 > #line 2628 "conf_parser.y"
6413      {
6414    ConfigFileEntry.ts_warn_delta = (yyvsp[(3) - (4)].number);
6415   }
# Line 6598 | Line 6417 | yyreduce:
6417  
6418    case 502:
6419  
6420 < /* Line 1806 of yacc.c  */
6421 < #line 2800 "ircd_parser.y"
6420 > /* Line 1810 of yacc.c  */
6421 > #line 2633 "conf_parser.y"
6422      {
6423    if (conf_parser_ctx.pass == 2)
6424      ConfigFileEntry.ts_max_delta = (yyvsp[(3) - (4)].number);
# Line 6608 | Line 6427 | yyreduce:
6427  
6428    case 503:
6429  
6430 < /* Line 1806 of yacc.c  */
6431 < #line 2806 "ircd_parser.y"
6430 > /* Line 1810 of yacc.c  */
6431 > #line 2639 "conf_parser.y"
6432      {
6433    if (((yyvsp[(3) - (4)].number) > 0) && conf_parser_ctx.pass == 1)
6434    {
# Line 6623 | Line 6442 | yyreduce:
6442  
6443    case 504:
6444  
6445 < /* Line 1806 of yacc.c  */
6446 < #line 2817 "ircd_parser.y"
6445 > /* Line 1810 of yacc.c  */
6446 > #line 2650 "conf_parser.y"
6447      {
6448    ConfigFileEntry.kline_with_reason = yylval.number;
6449   }
# Line 6632 | Line 6451 | yyreduce:
6451  
6452    case 505:
6453  
6454 < /* Line 1806 of yacc.c  */
6455 < #line 2822 "ircd_parser.y"
6454 > /* Line 1810 of yacc.c  */
6455 > #line 2655 "conf_parser.y"
6456      {
6457    if (conf_parser_ctx.pass == 2)
6458    {
# Line 6645 | Line 6464 | yyreduce:
6464  
6465    case 506:
6466  
6467 < /* Line 1806 of yacc.c  */
6468 < #line 2831 "ircd_parser.y"
6467 > /* Line 1810 of yacc.c  */
6468 > #line 2664 "conf_parser.y"
6469      {
6470    ConfigFileEntry.invisible_on_connect = yylval.number;
6471   }
# Line 6654 | Line 6473 | yyreduce:
6473  
6474    case 507:
6475  
6476 < /* Line 1806 of yacc.c  */
6477 < #line 2836 "ircd_parser.y"
6476 > /* Line 1810 of yacc.c  */
6477 > #line 2669 "conf_parser.y"
6478      {
6479    ConfigFileEntry.warn_no_nline = yylval.number;
6480   }
# Line 6663 | Line 6482 | yyreduce:
6482  
6483    case 508:
6484  
6485 < /* Line 1806 of yacc.c  */
6486 < #line 2841 "ircd_parser.y"
6485 > /* Line 1810 of yacc.c  */
6486 > #line 2674 "conf_parser.y"
6487      {
6488    ConfigFileEntry.stats_e_disabled = yylval.number;
6489   }
# Line 6672 | Line 6491 | yyreduce:
6491  
6492    case 509:
6493  
6494 < /* Line 1806 of yacc.c  */
6495 < #line 2846 "ircd_parser.y"
6494 > /* Line 1810 of yacc.c  */
6495 > #line 2679 "conf_parser.y"
6496      {
6497    ConfigFileEntry.stats_o_oper_only = yylval.number;
6498   }
# Line 6681 | Line 6500 | yyreduce:
6500  
6501    case 510:
6502  
6503 < /* Line 1806 of yacc.c  */
6504 < #line 2851 "ircd_parser.y"
6503 > /* Line 1810 of yacc.c  */
6504 > #line 2684 "conf_parser.y"
6505      {
6506    ConfigFileEntry.stats_P_oper_only = yylval.number;
6507   }
# Line 6690 | Line 6509 | yyreduce:
6509  
6510    case 511:
6511  
6512 < /* Line 1806 of yacc.c  */
6513 < #line 2856 "ircd_parser.y"
6512 > /* Line 1810 of yacc.c  */
6513 > #line 2689 "conf_parser.y"
6514      {
6515    ConfigFileEntry.stats_k_oper_only = 2 * yylval.number;
6516   }
# Line 6699 | Line 6518 | yyreduce:
6518  
6519    case 512:
6520  
6521 < /* Line 1806 of yacc.c  */
6522 < #line 2859 "ircd_parser.y"
6521 > /* Line 1810 of yacc.c  */
6522 > #line 2692 "conf_parser.y"
6523      {
6524    ConfigFileEntry.stats_k_oper_only = 1;
6525   }
# Line 6708 | Line 6527 | yyreduce:
6527  
6528    case 513:
6529  
6530 < /* Line 1806 of yacc.c  */
6531 < #line 2864 "ircd_parser.y"
6530 > /* Line 1810 of yacc.c  */
6531 > #line 2697 "conf_parser.y"
6532      {
6533    ConfigFileEntry.stats_i_oper_only = 2 * yylval.number;
6534   }
# Line 6717 | Line 6536 | yyreduce:
6536  
6537    case 514:
6538  
6539 < /* Line 1806 of yacc.c  */
6540 < #line 2867 "ircd_parser.y"
6539 > /* Line 1810 of yacc.c  */
6540 > #line 2700 "conf_parser.y"
6541      {
6542    ConfigFileEntry.stats_i_oper_only = 1;
6543   }
# Line 6726 | Line 6545 | yyreduce:
6545  
6546    case 515:
6547  
6548 < /* Line 1806 of yacc.c  */
6549 < #line 2872 "ircd_parser.y"
6548 > /* Line 1810 of yacc.c  */
6549 > #line 2705 "conf_parser.y"
6550      {
6551    ConfigFileEntry.pace_wait = (yyvsp[(3) - (4)].number);
6552   }
# Line 6735 | Line 6554 | yyreduce:
6554  
6555    case 516:
6556  
6557 < /* Line 1806 of yacc.c  */
6558 < #line 2877 "ircd_parser.y"
6557 > /* Line 1810 of yacc.c  */
6558 > #line 2710 "conf_parser.y"
6559      {
6560    ConfigFileEntry.caller_id_wait = (yyvsp[(3) - (4)].number);
6561   }
# Line 6744 | Line 6563 | yyreduce:
6563  
6564    case 517:
6565  
6566 < /* Line 1806 of yacc.c  */
6567 < #line 2882 "ircd_parser.y"
6566 > /* Line 1810 of yacc.c  */
6567 > #line 2715 "conf_parser.y"
6568      {
6569    ConfigFileEntry.opers_bypass_callerid = yylval.number;
6570   }
# Line 6753 | Line 6572 | yyreduce:
6572  
6573    case 518:
6574  
6575 < /* Line 1806 of yacc.c  */
6576 < #line 2887 "ircd_parser.y"
6575 > /* Line 1810 of yacc.c  */
6576 > #line 2720 "conf_parser.y"
6577      {
6578    ConfigFileEntry.pace_wait_simple = (yyvsp[(3) - (4)].number);
6579   }
# Line 6762 | Line 6581 | yyreduce:
6581  
6582    case 519:
6583  
6584 < /* Line 1806 of yacc.c  */
6585 < #line 2892 "ircd_parser.y"
6584 > /* Line 1810 of yacc.c  */
6585 > #line 2725 "conf_parser.y"
6586      {
6587    ConfigFileEntry.short_motd = yylval.number;
6588   }
# Line 6771 | Line 6590 | yyreduce:
6590  
6591    case 520:
6592  
6593 < /* Line 1806 of yacc.c  */
6594 < #line 2897 "ircd_parser.y"
6593 > /* Line 1810 of yacc.c  */
6594 > #line 2730 "conf_parser.y"
6595      {
6596    ConfigFileEntry.no_oper_flood = yylval.number;
6597   }
# Line 6780 | Line 6599 | yyreduce:
6599  
6600    case 521:
6601  
6602 < /* Line 1806 of yacc.c  */
6603 < #line 2902 "ircd_parser.y"
6602 > /* Line 1810 of yacc.c  */
6603 > #line 2735 "conf_parser.y"
6604      {
6605    ConfigFileEntry.true_no_oper_flood = yylval.number;
6606   }
# Line 6789 | Line 6608 | yyreduce:
6608  
6609    case 522:
6610  
6611 < /* Line 1806 of yacc.c  */
6612 < #line 2907 "ircd_parser.y"
6611 > /* Line 1810 of yacc.c  */
6612 > #line 2740 "conf_parser.y"
6613      {
6614    ConfigFileEntry.oper_pass_resv = yylval.number;
6615   }
# Line 6798 | Line 6617 | yyreduce:
6617  
6618    case 523:
6619  
6620 < /* Line 1806 of yacc.c  */
6621 < #line 2912 "ircd_parser.y"
6620 > /* Line 1810 of yacc.c  */
6621 > #line 2745 "conf_parser.y"
6622      {
6623    if (conf_parser_ctx.pass == 2)
6624    {
# Line 6813 | Line 6632 | yyreduce:
6632  
6633    case 524:
6634  
6635 < /* Line 1806 of yacc.c  */
6636 < #line 2923 "ircd_parser.y"
6635 > /* Line 1810 of yacc.c  */
6636 > #line 2756 "conf_parser.y"
6637      {
6638    ConfigFileEntry.dots_in_ident = (yyvsp[(3) - (4)].number);
6639   }
# Line 6822 | Line 6641 | yyreduce:
6641  
6642    case 525:
6643  
6644 < /* Line 1806 of yacc.c  */
6645 < #line 2928 "ircd_parser.y"
6644 > /* Line 1810 of yacc.c  */
6645 > #line 2761 "conf_parser.y"
6646      {
6647    ConfigFileEntry.max_targets = (yyvsp[(3) - (4)].number);
6648   }
# Line 6831 | Line 6650 | yyreduce:
6650  
6651    case 526:
6652  
6653 < /* Line 1806 of yacc.c  */
6654 < #line 2933 "ircd_parser.y"
6653 > /* Line 1810 of yacc.c  */
6654 > #line 2766 "conf_parser.y"
6655      {
6656 <  if (conf_parser_ctx.pass == 2)
6838 <  {
6839 <    MyFree(ConfigFileEntry.servlink_path);
6840 <    DupString(ConfigFileEntry.servlink_path, yylval.string);
6841 <  }
6656 >  ConfigFileEntry.use_egd = yylval.number;
6657   }
6658      break;
6659  
6660    case 527:
6661  
6662 < /* Line 1806 of yacc.c  */
6663 < #line 2942 "ircd_parser.y"
6662 > /* Line 1810 of yacc.c  */
6663 > #line 2771 "conf_parser.y"
6664      {
6850 #ifdef HAVE_LIBCRYPTO
6665    if (conf_parser_ctx.pass == 2)
6666    {
6667 <    struct EncCapability *ecap;
6668 <    const char *cipher_name;
6855 <    int found = 0;
6856 <
6857 <    ConfigFileEntry.default_cipher_preference = NULL;
6858 <    cipher_name = yylval.string;
6859 <
6860 <    for (ecap = CipherTable; ecap->name; ecap++)
6861 <    {
6862 <      if ((irccmp(ecap->name, cipher_name) == 0) &&
6863 <          (ecap->cap & CAP_ENC_MASK))
6864 <      {
6865 <        ConfigFileEntry.default_cipher_preference = ecap;
6866 <        found = 1;
6867 <        break;
6868 <      }
6869 <    }
6870 <
6871 <    if (!found)
6872 <      yyerror("Invalid cipher");
6667 >    MyFree(ConfigFileEntry.egdpool_path);
6668 >    DupString(ConfigFileEntry.egdpool_path, yylval.string);
6669    }
6874 #else
6875  if (conf_parser_ctx.pass == 2)
6876    yyerror("Ignoring default_cipher_preference -- no OpenSSL support");
6877 #endif
6670   }
6671      break;
6672  
6673    case 528:
6674  
6675 < /* Line 1806 of yacc.c  */
6676 < #line 2974 "ircd_parser.y"
6675 > /* Line 1810 of yacc.c  */
6676 > #line 2780 "conf_parser.y"
6677      {
6678 <  if (conf_parser_ctx.pass == 2)
6678 >  if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6679    {
6680 <    ConfigFileEntry.compression_level = (yyvsp[(3) - (4)].number);
6681 < #ifndef HAVE_LIBZ
6890 <    yyerror("Ignoring compression_level -- no zlib support");
6891 < #else
6892 <    if ((ConfigFileEntry.compression_level < 1) ||
6893 <        (ConfigFileEntry.compression_level > 9))
6894 <    {
6895 <      yyerror("Ignoring invalid compression_level, using default");
6896 <      ConfigFileEntry.compression_level = 0;
6897 <    }
6898 < #endif
6680 >    MyFree(ConfigFileEntry.service_name);
6681 >    DupString(ConfigFileEntry.service_name, yylval.string);
6682    }
6683   }
6684      break;
6685  
6686    case 529:
6687  
6688 < /* Line 1806 of yacc.c  */
6689 < #line 2992 "ircd_parser.y"
6688 > /* Line 1810 of yacc.c  */
6689 > #line 2789 "conf_parser.y"
6690      {
6691 <  ConfigFileEntry.use_egd = yylval.number;
6691 >  ConfigFileEntry.ping_cookie = yylval.number;
6692   }
6693      break;
6694  
6695    case 530:
6696  
6697 < /* Line 1806 of yacc.c  */
6698 < #line 2997 "ircd_parser.y"
6697 > /* Line 1810 of yacc.c  */
6698 > #line 2794 "conf_parser.y"
6699      {
6700 <  if (conf_parser_ctx.pass == 2)
6918 <  {
6919 <    MyFree(ConfigFileEntry.egdpool_path);
6920 <    DupString(ConfigFileEntry.egdpool_path, yylval.string);
6921 <  }
6700 >  ConfigFileEntry.disable_auth = yylval.number;
6701   }
6702      break;
6703  
6704    case 531:
6705  
6706 < /* Line 1806 of yacc.c  */
6707 < #line 3006 "ircd_parser.y"
6706 > /* Line 1810 of yacc.c  */
6707 > #line 2799 "conf_parser.y"
6708      {
6709 <  if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6931 <  {
6932 <    MyFree(ConfigFileEntry.service_name);
6933 <    DupString(ConfigFileEntry.service_name, yylval.string);
6934 <  }
6709 >  ConfigFileEntry.throttle_time = yylval.number;
6710   }
6711      break;
6712  
6713    case 532:
6714  
6715 < /* Line 1806 of yacc.c  */
6716 < #line 3015 "ircd_parser.y"
6715 > /* Line 1810 of yacc.c  */
6716 > #line 2804 "conf_parser.y"
6717      {
6718 <  ConfigFileEntry.ping_cookie = yylval.number;
6718 >  ConfigFileEntry.oper_umodes = 0;
6719   }
6720      break;
6721  
6722 <  case 533:
6722 >  case 536:
6723  
6724 < /* Line 1806 of yacc.c  */
6725 < #line 3020 "ircd_parser.y"
6724 > /* Line 1810 of yacc.c  */
6725 > #line 2810 "conf_parser.y"
6726      {
6727 <  ConfigFileEntry.disable_auth = yylval.number;
6727 >  ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6728   }
6729      break;
6730  
6731 <  case 534:
6731 >  case 537:
6732  
6733 < /* Line 1806 of yacc.c  */
6734 < #line 3025 "ircd_parser.y"
6733 > /* Line 1810 of yacc.c  */
6734 > #line 2813 "conf_parser.y"
6735      {
6736 <  ConfigFileEntry.throttle_time = yylval.number;
6736 >  ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6737   }
6738      break;
6739  
6740 <  case 535:
6740 >  case 538:
6741  
6742 < /* Line 1806 of yacc.c  */
6743 < #line 3030 "ircd_parser.y"
6742 > /* Line 1810 of yacc.c  */
6743 > #line 2816 "conf_parser.y"
6744      {
6745 <  ConfigFileEntry.oper_umodes = 0;
6745 >  ConfigFileEntry.oper_umodes |= UMODE_CCONN_FULL;
6746   }
6747      break;
6748  
6749    case 539:
6750  
6751 < /* Line 1806 of yacc.c  */
6752 < #line 3036 "ircd_parser.y"
6751 > /* Line 1810 of yacc.c  */
6752 > #line 2819 "conf_parser.y"
6753      {
6754 <  ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6754 >  ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6755   }
6756      break;
6757  
6758    case 540:
6759  
6760 < /* Line 1806 of yacc.c  */
6761 < #line 3039 "ircd_parser.y"
6760 > /* Line 1810 of yacc.c  */
6761 > #line 2822 "conf_parser.y"
6762      {
6763 <  ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6763 >  ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6764   }
6765      break;
6766  
6767    case 541:
6768  
6769 < /* Line 1806 of yacc.c  */
6770 < #line 3042 "ircd_parser.y"
6769 > /* Line 1810 of yacc.c  */
6770 > #line 2825 "conf_parser.y"
6771      {
6772 <  ConfigFileEntry.oper_umodes |= UMODE_CCONN_FULL;
6772 >  ConfigFileEntry.oper_umodes |= UMODE_FULL;
6773   }
6774      break;
6775  
6776    case 542:
6777  
6778 < /* Line 1806 of yacc.c  */
6779 < #line 3045 "ircd_parser.y"
6778 > /* Line 1810 of yacc.c  */
6779 > #line 2828 "conf_parser.y"
6780      {
6781 <  ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6781 >  ConfigFileEntry.oper_umodes |= UMODE_HIDDEN;
6782   }
6783      break;
6784  
6785    case 543:
6786  
6787 < /* Line 1806 of yacc.c  */
6788 < #line 3048 "ircd_parser.y"
6787 > /* Line 1810 of yacc.c  */
6788 > #line 2831 "conf_parser.y"
6789      {
6790 <  ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6790 >  ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6791   }
6792      break;
6793  
6794    case 544:
6795  
6796 < /* Line 1806 of yacc.c  */
6797 < #line 3051 "ircd_parser.y"
6796 > /* Line 1810 of yacc.c  */
6797 > #line 2834 "conf_parser.y"
6798      {
6799 <  ConfigFileEntry.oper_umodes |= UMODE_FULL;
6799 >  ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6800   }
6801      break;
6802  
6803    case 545:
6804  
6805 < /* Line 1806 of yacc.c  */
6806 < #line 3054 "ircd_parser.y"
6805 > /* Line 1810 of yacc.c  */
6806 > #line 2837 "conf_parser.y"
6807      {
6808 <  ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6808 >  ConfigFileEntry.oper_umodes |= UMODE_REJ;
6809   }
6810      break;
6811  
6812    case 546:
6813  
6814 < /* Line 1806 of yacc.c  */
6815 < #line 3057 "ircd_parser.y"
6814 > /* Line 1810 of yacc.c  */
6815 > #line 2840 "conf_parser.y"
6816      {
6817 <  ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6817 >  ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6818   }
6819      break;
6820  
6821    case 547:
6822  
6823 < /* Line 1806 of yacc.c  */
6824 < #line 3060 "ircd_parser.y"
6823 > /* Line 1810 of yacc.c  */
6824 > #line 2843 "conf_parser.y"
6825      {
6826 <  ConfigFileEntry.oper_umodes |= UMODE_REJ;
6826 >  ConfigFileEntry.oper_umodes |= UMODE_SPY;
6827   }
6828      break;
6829  
6830    case 548:
6831  
6832 < /* Line 1806 of yacc.c  */
6833 < #line 3063 "ircd_parser.y"
6832 > /* Line 1810 of yacc.c  */
6833 > #line 2846 "conf_parser.y"
6834      {
6835 <  ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6835 >  ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6836   }
6837      break;
6838  
6839    case 549:
6840  
6841 < /* Line 1806 of yacc.c  */
6842 < #line 3066 "ircd_parser.y"
6841 > /* Line 1810 of yacc.c  */
6842 > #line 2849 "conf_parser.y"
6843      {
6844 <  ConfigFileEntry.oper_umodes |= UMODE_SPY;
6844 >  ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6845   }
6846      break;
6847  
6848    case 550:
6849  
6850 < /* Line 1806 of yacc.c  */
6851 < #line 3069 "ircd_parser.y"
6850 > /* Line 1810 of yacc.c  */
6851 > #line 2852 "conf_parser.y"
6852      {
6853 <  ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6853 >  ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6854   }
6855      break;
6856  
6857    case 551:
6858  
6859 < /* Line 1806 of yacc.c  */
6860 < #line 3072 "ircd_parser.y"
6859 > /* Line 1810 of yacc.c  */
6860 > #line 2855 "conf_parser.y"
6861      {
6862 <  ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6862 >  ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6863   }
6864      break;
6865  
6866    case 552:
6867  
6868 < /* Line 1806 of yacc.c  */
6869 < #line 3075 "ircd_parser.y"
6868 > /* Line 1810 of yacc.c  */
6869 > #line 2858 "conf_parser.y"
6870      {
6871 <  ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6871 >  ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6872   }
6873      break;
6874  
6875    case 553:
6876  
6877 < /* Line 1806 of yacc.c  */
6878 < #line 3078 "ircd_parser.y"
6877 > /* Line 1810 of yacc.c  */
6878 > #line 2861 "conf_parser.y"
6879      {
6880 <  ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6880 >  ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6881   }
6882      break;
6883  
6884    case 554:
6885  
6886 < /* Line 1806 of yacc.c  */
6887 < #line 3081 "ircd_parser.y"
6886 > /* Line 1810 of yacc.c  */
6887 > #line 2864 "conf_parser.y"
6888      {
6889 <  ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6889 >  ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6890   }
6891      break;
6892  
6893    case 555:
6894  
6895 < /* Line 1806 of yacc.c  */
6896 < #line 3084 "ircd_parser.y"
6895 > /* Line 1810 of yacc.c  */
6896 > #line 2867 "conf_parser.y"
6897      {
6898 <  ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6898 >  ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
6899   }
6900      break;
6901  
6902    case 556:
6903  
6904 < /* Line 1806 of yacc.c  */
6905 < #line 3087 "ircd_parser.y"
6904 > /* Line 1810 of yacc.c  */
6905 > #line 2872 "conf_parser.y"
6906      {
6907 <  ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6907 >  ConfigFileEntry.oper_only_umodes = 0;
6908   }
6909      break;
6910  
6911 <  case 557:
6911 >  case 560:
6912  
6913 < /* Line 1806 of yacc.c  */
6914 < #line 3090 "ircd_parser.y"
6913 > /* Line 1810 of yacc.c  */
6914 > #line 2878 "conf_parser.y"
6915      {
6916 <  ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
6916 >  ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
6917   }
6918      break;
6919  
6920 <  case 558:
6920 >  case 561:
6921  
6922 < /* Line 1806 of yacc.c  */
6923 < #line 3095 "ircd_parser.y"
6922 > /* Line 1810 of yacc.c  */
6923 > #line 2881 "conf_parser.y"
6924      {
6925 <  ConfigFileEntry.oper_only_umodes = 0;
6925 >  ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
6926   }
6927      break;
6928  
6929    case 562:
6930  
6931 < /* Line 1806 of yacc.c  */
6932 < #line 3101 "ircd_parser.y"
6931 > /* Line 1810 of yacc.c  */
6932 > #line 2884 "conf_parser.y"
6933      {
6934 <  ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
6934 >  ConfigFileEntry.oper_only_umodes |= UMODE_CCONN_FULL;
6935   }
6936      break;
6937  
6938    case 563:
6939  
6940 < /* Line 1806 of yacc.c  */
6941 < #line 3104 "ircd_parser.y"
6940 > /* Line 1810 of yacc.c  */
6941 > #line 2887 "conf_parser.y"
6942      {
6943 <  ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
6943 >  ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
6944   }
6945      break;
6946  
6947    case 564:
6948  
6949 < /* Line 1806 of yacc.c  */
6950 < #line 3107 "ircd_parser.y"
6949 > /* Line 1810 of yacc.c  */
6950 > #line 2890 "conf_parser.y"
6951      {
6952 <  ConfigFileEntry.oper_only_umodes |= UMODE_CCONN_FULL;
6952 >  ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
6953   }
6954      break;
6955  
6956    case 565:
6957  
6958 < /* Line 1806 of yacc.c  */
6959 < #line 3110 "ircd_parser.y"
6960 <    {
6961 <  ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
6958 > /* Line 1810 of yacc.c  */
6959 > #line 2893 "conf_parser.y"
6960 >    {
6961 >  ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
6962   }
6963      break;
6964  
6965    case 566:
6966  
6967 < /* Line 1806 of yacc.c  */
6968 < #line 3113 "ircd_parser.y"
6967 > /* Line 1810 of yacc.c  */
6968 > #line 2896 "conf_parser.y"
6969      {
6970 <  ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
6970 >  ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
6971   }
6972      break;
6973  
6974    case 567:
6975  
6976 < /* Line 1806 of yacc.c  */
6977 < #line 3116 "ircd_parser.y"
7203 <    {
7204 <  ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
7205 < }
7206 <    break;
7207 <
7208 <  case 568:
7209 <
7210 < /* Line 1806 of yacc.c  */
7211 < #line 3119 "ircd_parser.y"
6976 > /* Line 1810 of yacc.c  */
6977 > #line 2899 "conf_parser.y"
6978      {
6979 <  ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
6979 >  ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN;
6980   }
6981      break;
6982  
6983 <  case 569:
6983 >  case 568:
6984  
6985 < /* Line 1806 of yacc.c  */
6986 < #line 3122 "ircd_parser.y"
6985 > /* Line 1810 of yacc.c  */
6986 > #line 2902 "conf_parser.y"
6987      {
6988    ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE;
6989   }
6990      break;
6991  
6992 <  case 570:
6992 >  case 569:
6993  
6994 < /* Line 1806 of yacc.c  */
6995 < #line 3125 "ircd_parser.y"
6994 > /* Line 1810 of yacc.c  */
6995 > #line 2905 "conf_parser.y"
6996      {
6997    ConfigFileEntry.oper_only_umodes |= UMODE_REJ;
6998   }
6999      break;
7000  
7001 <  case 571:
7001 >  case 570:
7002  
7003 < /* Line 1806 of yacc.c  */
7004 < #line 3128 "ircd_parser.y"
7003 > /* Line 1810 of yacc.c  */
7004 > #line 2908 "conf_parser.y"
7005      {
7006    ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH;
7007   }
7008      break;
7009  
7010 <  case 572:
7010 >  case 571:
7011  
7012 < /* Line 1806 of yacc.c  */
7013 < #line 3131 "ircd_parser.y"
7012 > /* Line 1810 of yacc.c  */
7013 > #line 2911 "conf_parser.y"
7014      {
7015    ConfigFileEntry.oper_only_umodes |= UMODE_SPY;
7016   }
7017      break;
7018  
7019 <  case 573:
7019 >  case 572:
7020  
7021 < /* Line 1806 of yacc.c  */
7022 < #line 3134 "ircd_parser.y"
7021 > /* Line 1810 of yacc.c  */
7022 > #line 2914 "conf_parser.y"
7023      {
7024    ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL;
7025   }
7026      break;
7027  
7028 <  case 574:
7028 >  case 573:
7029  
7030 < /* Line 1806 of yacc.c  */
7031 < #line 3137 "ircd_parser.y"
7030 > /* Line 1810 of yacc.c  */
7031 > #line 2917 "conf_parser.y"
7032      {
7033    ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL;
7034   }
7035      break;
7036  
7037 <  case 575:
7037 >  case 574:
7038  
7039 < /* Line 1806 of yacc.c  */
7040 < #line 3140 "ircd_parser.y"
7039 > /* Line 1810 of yacc.c  */
7040 > #line 2920 "conf_parser.y"
7041      {
7042    ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE;
7043   }
7044      break;
7045  
7046 <  case 576:
7046 >  case 575:
7047  
7048 < /* Line 1806 of yacc.c  */
7049 < #line 3143 "ircd_parser.y"
7048 > /* Line 1810 of yacc.c  */
7049 > #line 2923 "conf_parser.y"
7050      {
7051    ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE;
7052   }
7053      break;
7054  
7055 <  case 577:
7055 >  case 576:
7056  
7057 < /* Line 1806 of yacc.c  */
7058 < #line 3146 "ircd_parser.y"
7057 > /* Line 1810 of yacc.c  */
7058 > #line 2926 "conf_parser.y"
7059      {
7060    ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP;
7061   }
7062      break;
7063  
7064 <  case 578:
7064 >  case 577:
7065  
7066 < /* Line 1806 of yacc.c  */
7067 < #line 3149 "ircd_parser.y"
7066 > /* Line 1810 of yacc.c  */
7067 > #line 2929 "conf_parser.y"
7068      {
7069    ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID;
7070   }
7071      break;
7072  
7073 <  case 579:
7073 >  case 578:
7074  
7075 < /* Line 1806 of yacc.c  */
7076 < #line 3152 "ircd_parser.y"
7075 > /* Line 1810 of yacc.c  */
7076 > #line 2932 "conf_parser.y"
7077      {
7078    ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID;
7079   }
7080      break;
7081  
7082 <  case 580:
7082 >  case 579:
7083  
7084 < /* Line 1806 of yacc.c  */
7085 < #line 3155 "ircd_parser.y"
7084 > /* Line 1810 of yacc.c  */
7085 > #line 2935 "conf_parser.y"
7086      {
7087    ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS;
7088   }
7089      break;
7090  
7091 <  case 581:
7091 >  case 580:
7092  
7093 < /* Line 1806 of yacc.c  */
7094 < #line 3160 "ircd_parser.y"
7093 > /* Line 1810 of yacc.c  */
7094 > #line 2940 "conf_parser.y"
7095      {
7096    ConfigFileEntry.min_nonwildcard = (yyvsp[(3) - (4)].number);
7097   }
7098      break;
7099  
7100 <  case 582:
7100 >  case 581:
7101  
7102 < /* Line 1806 of yacc.c  */
7103 < #line 3165 "ircd_parser.y"
7102 > /* Line 1810 of yacc.c  */
7103 > #line 2945 "conf_parser.y"
7104      {
7105    ConfigFileEntry.min_nonwildcard_simple = (yyvsp[(3) - (4)].number);
7106   }
7107      break;
7108  
7109 <  case 583:
7109 >  case 582:
7110  
7111 < /* Line 1806 of yacc.c  */
7112 < #line 3170 "ircd_parser.y"
7111 > /* Line 1810 of yacc.c  */
7112 > #line 2950 "conf_parser.y"
7113      {
7114    ConfigFileEntry.default_floodcount = (yyvsp[(3) - (4)].number);
7115   }
7116      break;
7117  
7118 <  case 584:
7118 >  case 583:
7119  
7120 < /* Line 1806 of yacc.c  */
7121 < #line 3175 "ircd_parser.y"
7120 > /* Line 1810 of yacc.c  */
7121 > #line 2955 "conf_parser.y"
7122      {
7123    ConfigFileEntry.client_flood = (yyvsp[(3) - (4)].number);
7124   }
7125      break;
7126  
7127 <  case 585:
7127 >  case 584:
7128  
7129 < /* Line 1806 of yacc.c  */
7130 < #line 3184 "ircd_parser.y"
7129 > /* Line 1810 of yacc.c  */
7130 > #line 2964 "conf_parser.y"
7131      {
7132    if (conf_parser_ctx.pass == 2)
7133    {
# Line 7371 | Line 7137 | yyreduce:
7137   }
7138      break;
7139  
7140 <  case 586:
7140 >  case 585:
7141  
7142 < /* Line 1806 of yacc.c  */
7143 < #line 3191 "ircd_parser.y"
7142 > /* Line 1810 of yacc.c  */
7143 > #line 2971 "conf_parser.y"
7144      {
7145    if (conf_parser_ctx.pass == 2)
7146    {
# Line 7392 | Line 7158 | yyreduce:
7158   }
7159      break;
7160  
7161 <  case 596:
7161 >  case 595:
7162  
7163 < /* Line 1806 of yacc.c  */
7164 < #line 3217 "ircd_parser.y"
7163 > /* Line 1810 of yacc.c  */
7164 > #line 2997 "conf_parser.y"
7165      {
7166    if (conf_parser_ctx.pass == 2)
7167      ConfigFileEntry.glines = yylval.number;
7168   }
7169      break;
7170  
7171 <  case 597:
7171 >  case 596:
7172  
7173 < /* Line 1806 of yacc.c  */
7174 < #line 3223 "ircd_parser.y"
7173 > /* Line 1810 of yacc.c  */
7174 > #line 3003 "conf_parser.y"
7175      {
7176    if (conf_parser_ctx.pass == 2)
7177      ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
7178   }
7179      break;
7180  
7181 <  case 598:
7181 >  case 597:
7182  
7183 < /* Line 1806 of yacc.c  */
7184 < #line 3229 "ircd_parser.y"
7183 > /* Line 1810 of yacc.c  */
7184 > #line 3009 "conf_parser.y"
7185      {
7186    if (conf_parser_ctx.pass == 2)
7187      ConfigFileEntry.gline_logging = 0;
7188   }
7189      break;
7190  
7191 <  case 602:
7191 >  case 601:
7192  
7193 < /* Line 1806 of yacc.c  */
7194 < #line 3235 "ircd_parser.y"
7193 > /* Line 1810 of yacc.c  */
7194 > #line 3015 "conf_parser.y"
7195      {
7196    if (conf_parser_ctx.pass == 2)
7197      ConfigFileEntry.gline_logging |= GDENY_REJECT;
7198   }
7199      break;
7200  
7201 <  case 603:
7201 >  case 602:
7202  
7203 < /* Line 1806 of yacc.c  */
7204 < #line 3239 "ircd_parser.y"
7203 > /* Line 1810 of yacc.c  */
7204 > #line 3019 "conf_parser.y"
7205      {
7206    if (conf_parser_ctx.pass == 2)
7207      ConfigFileEntry.gline_logging |= GDENY_BLOCK;
7208   }
7209      break;
7210  
7211 <  case 604:
7211 >  case 603:
7212  
7213 < /* Line 1806 of yacc.c  */
7214 < #line 3245 "ircd_parser.y"
7213 > /* Line 1810 of yacc.c  */
7214 > #line 3025 "conf_parser.y"
7215      {
7216    if (conf_parser_ctx.pass == 2)
7217    {
# Line 7480 | Line 7246 | yyreduce:
7246   }
7247      break;
7248  
7249 <  case 605:
7249 >  case 604:
7250  
7251 < /* Line 1806 of yacc.c  */
7252 < #line 3279 "ircd_parser.y"
7251 > /* Line 1810 of yacc.c  */
7252 > #line 3059 "conf_parser.y"
7253      {
7254    if (conf_parser_ctx.pass == 2)  
7255    {
# Line 7493 | Line 7259 | yyreduce:
7259   }
7260      break;
7261  
7262 <  case 606:
7262 >  case 605:
7263  
7264 < /* Line 1806 of yacc.c  */
7265 < #line 3288 "ircd_parser.y"
7264 > /* Line 1810 of yacc.c  */
7265 > #line 3068 "conf_parser.y"
7266      {
7267    if (conf_parser_ctx.pass == 2)
7268      yy_aconf->flags = 0;
7269   }
7270      break;
7271  
7272 <  case 607:
7272 >  case 606:
7273  
7274 < /* Line 1806 of yacc.c  */
7275 < #line 3292 "ircd_parser.y"
7274 > /* Line 1810 of yacc.c  */
7275 > #line 3072 "conf_parser.y"
7276      {
7277    if (conf_parser_ctx.pass == 2)
7278    {
# Line 7553 | Line 7319 | yyreduce:
7319   }
7320      break;
7321  
7322 <  case 610:
7322 >  case 609:
7323  
7324 < /* Line 1806 of yacc.c  */
7325 < #line 3339 "ircd_parser.y"
7324 > /* Line 1810 of yacc.c  */
7325 > #line 3119 "conf_parser.y"
7326      {
7327    if (conf_parser_ctx.pass == 2)
7328      yy_aconf->flags |= GDENY_REJECT;
7329   }
7330      break;
7331  
7332 <  case 611:
7332 >  case 610:
7333  
7334 < /* Line 1806 of yacc.c  */
7335 < #line 3343 "ircd_parser.y"
7334 > /* Line 1810 of yacc.c  */
7335 > #line 3123 "conf_parser.y"
7336      {
7337    if (conf_parser_ctx.pass == 2)
7338      yy_aconf->flags |= GDENY_BLOCK;
7339   }
7340      break;
7341  
7342 <  case 634:
7342 >  case 633:
7343  
7344 < /* Line 1806 of yacc.c  */
7345 < #line 3367 "ircd_parser.y"
7344 > /* Line 1810 of yacc.c  */
7345 > #line 3147 "conf_parser.y"
7346      {
7347    ConfigChannel.disable_fake_channels = yylval.number;
7348   }
7349      break;
7350  
7351 <  case 635:
7351 >  case 634:
7352  
7353 < /* Line 1806 of yacc.c  */
7354 < #line 3372 "ircd_parser.y"
7353 > /* Line 1810 of yacc.c  */
7354 > #line 3152 "conf_parser.y"
7355      {
7356    ConfigChannel.restrict_channels = yylval.number;
7357   }
7358      break;
7359  
7360 <  case 636:
7360 >  case 635:
7361  
7362 < /* Line 1806 of yacc.c  */
7363 < #line 3377 "ircd_parser.y"
7362 > /* Line 1810 of yacc.c  */
7363 > #line 3157 "conf_parser.y"
7364      {
7365    ConfigChannel.disable_local_channels = yylval.number;
7366   }
7367      break;
7368  
7369 <  case 637:
7369 >  case 636:
7370  
7371 < /* Line 1806 of yacc.c  */
7372 < #line 3382 "ircd_parser.y"
7371 > /* Line 1810 of yacc.c  */
7372 > #line 3162 "conf_parser.y"
7373      {
7374    ConfigChannel.use_except = yylval.number;
7375   }
7376      break;
7377  
7378 <  case 638:
7378 >  case 637:
7379  
7380 < /* Line 1806 of yacc.c  */
7381 < #line 3387 "ircd_parser.y"
7380 > /* Line 1810 of yacc.c  */
7381 > #line 3167 "conf_parser.y"
7382      {
7383    ConfigChannel.use_invex = yylval.number;
7384   }
7385      break;
7386  
7387 <  case 639:
7387 >  case 638:
7388  
7389 < /* Line 1806 of yacc.c  */
7390 < #line 3392 "ircd_parser.y"
7389 > /* Line 1810 of yacc.c  */
7390 > #line 3172 "conf_parser.y"
7391      {
7392    ConfigChannel.use_knock = yylval.number;
7393   }
7394      break;
7395  
7396 <  case 640:
7396 >  case 639:
7397  
7398 < /* Line 1806 of yacc.c  */
7399 < #line 3397 "ircd_parser.y"
7398 > /* Line 1810 of yacc.c  */
7399 > #line 3177 "conf_parser.y"
7400      {
7401    ConfigChannel.knock_delay = (yyvsp[(3) - (4)].number);
7402   }
7403      break;
7404  
7405 <  case 641:
7405 >  case 640:
7406  
7407 < /* Line 1806 of yacc.c  */
7408 < #line 3402 "ircd_parser.y"
7407 > /* Line 1810 of yacc.c  */
7408 > #line 3182 "conf_parser.y"
7409      {
7410    ConfigChannel.knock_delay_channel = (yyvsp[(3) - (4)].number);
7411   }
7412      break;
7413  
7414 <  case 642:
7414 >  case 641:
7415  
7416 < /* Line 1806 of yacc.c  */
7417 < #line 3407 "ircd_parser.y"
7416 > /* Line 1810 of yacc.c  */
7417 > #line 3187 "conf_parser.y"
7418      {
7419    ConfigChannel.max_chans_per_user = (yyvsp[(3) - (4)].number);
7420   }
7421      break;
7422  
7423 +  case 642:
7424 +
7425 + /* Line 1810 of yacc.c  */
7426 + #line 3192 "conf_parser.y"
7427 +    {
7428 +  ConfigChannel.max_chans_per_oper = (yyvsp[(3) - (4)].number);
7429 + }
7430 +    break;
7431 +
7432    case 643:
7433  
7434 < /* Line 1806 of yacc.c  */
7435 < #line 3412 "ircd_parser.y"
7434 > /* Line 1810 of yacc.c  */
7435 > #line 3197 "conf_parser.y"
7436      {
7437    ConfigChannel.quiet_on_ban = yylval.number;
7438   }
# Line 7665 | Line 7440 | yyreduce:
7440  
7441    case 644:
7442  
7443 < /* Line 1806 of yacc.c  */
7444 < #line 3417 "ircd_parser.y"
7443 > /* Line 1810 of yacc.c  */
7444 > #line 3202 "conf_parser.y"
7445      {
7446    ConfigChannel.max_bans = (yyvsp[(3) - (4)].number);
7447   }
# Line 7674 | Line 7449 | yyreduce:
7449  
7450    case 645:
7451  
7452 < /* Line 1806 of yacc.c  */
7453 < #line 3422 "ircd_parser.y"
7452 > /* Line 1810 of yacc.c  */
7453 > #line 3207 "conf_parser.y"
7454      {
7455    ConfigChannel.default_split_user_count = (yyvsp[(3) - (4)].number);
7456   }
# Line 7683 | Line 7458 | yyreduce:
7458  
7459    case 646:
7460  
7461 < /* Line 1806 of yacc.c  */
7462 < #line 3427 "ircd_parser.y"
7461 > /* Line 1810 of yacc.c  */
7462 > #line 3212 "conf_parser.y"
7463      {
7464    ConfigChannel.default_split_server_count = (yyvsp[(3) - (4)].number);
7465   }
# Line 7692 | Line 7467 | yyreduce:
7467  
7468    case 647:
7469  
7470 < /* Line 1806 of yacc.c  */
7471 < #line 3432 "ircd_parser.y"
7470 > /* Line 1810 of yacc.c  */
7471 > #line 3217 "conf_parser.y"
7472      {
7473    ConfigChannel.no_create_on_split = yylval.number;
7474   }
# Line 7701 | Line 7476 | yyreduce:
7476  
7477    case 648:
7478  
7479 < /* Line 1806 of yacc.c  */
7480 < #line 3437 "ircd_parser.y"
7479 > /* Line 1810 of yacc.c  */
7480 > #line 3222 "conf_parser.y"
7481      {
7482    ConfigChannel.no_join_on_split = yylval.number;
7483   }
# Line 7710 | Line 7485 | yyreduce:
7485  
7486    case 649:
7487  
7488 < /* Line 1806 of yacc.c  */
7489 < #line 3442 "ircd_parser.y"
7715 <    {
7716 <  ConfigChannel.burst_topicwho = yylval.number;
7717 < }
7718 <    break;
7719 <
7720 <  case 650:
7721 <
7722 < /* Line 1806 of yacc.c  */
7723 < #line 3447 "ircd_parser.y"
7488 > /* Line 1810 of yacc.c  */
7489 > #line 3227 "conf_parser.y"
7490      {
7491    GlobalSetOptions.joinfloodcount = yylval.number;
7492   }
7493      break;
7494  
7495 <  case 651:
7495 >  case 650:
7496  
7497 < /* Line 1806 of yacc.c  */
7498 < #line 3452 "ircd_parser.y"
7497 > /* Line 1810 of yacc.c  */
7498 > #line 3232 "conf_parser.y"
7499      {
7500    GlobalSetOptions.joinfloodtime = yylval.number;
7501   }
7502      break;
7503  
7504 <  case 663:
7504 >  case 662:
7505  
7506 < /* Line 1806 of yacc.c  */
7507 < #line 3471 "ircd_parser.y"
7506 > /* Line 1810 of yacc.c  */
7507 > #line 3251 "conf_parser.y"
7508      {
7509    if (conf_parser_ctx.pass == 2)
7510      ConfigServerHide.flatten_links = yylval.number;
7511   }
7512      break;
7513  
7514 <  case 664:
7514 >  case 663:
7515  
7516 < /* Line 1806 of yacc.c  */
7517 < #line 3477 "ircd_parser.y"
7516 > /* Line 1810 of yacc.c  */
7517 > #line 3257 "conf_parser.y"
7518      {
7519    if (conf_parser_ctx.pass == 2)
7520      ConfigServerHide.hide_servers = yylval.number;
7521   }
7522      break;
7523  
7524 <  case 665:
7524 >  case 664:
7525  
7526 < /* Line 1806 of yacc.c  */
7527 < #line 3483 "ircd_parser.y"
7526 > /* Line 1810 of yacc.c  */
7527 > #line 3263 "conf_parser.y"
7528      {
7529    if (conf_parser_ctx.pass == 2)
7530    {
# Line 7768 | Line 7534 | yyreduce:
7534   }
7535      break;
7536  
7537 <  case 666:
7537 >  case 665:
7538  
7539 < /* Line 1806 of yacc.c  */
7540 < #line 3492 "ircd_parser.y"
7539 > /* Line 1810 of yacc.c  */
7540 > #line 3272 "conf_parser.y"
7541      {
7542    if (conf_parser_ctx.pass == 2)
7543    {
# Line 7786 | Line 7552 | yyreduce:
7552   }
7553      break;
7554  
7555 <  case 667:
7555 >  case 666:
7556  
7557 < /* Line 1806 of yacc.c  */
7558 < #line 3506 "ircd_parser.y"
7557 > /* Line 1810 of yacc.c  */
7558 > #line 3286 "conf_parser.y"
7559      {
7560    if (conf_parser_ctx.pass == 2)
7561      ConfigServerHide.hidden = yylval.number;
7562   }
7563      break;
7564  
7565 <  case 668:
7565 >  case 667:
7566  
7567 < /* Line 1806 of yacc.c  */
7568 < #line 3512 "ircd_parser.y"
7567 > /* Line 1810 of yacc.c  */
7568 > #line 3292 "conf_parser.y"
7569      {
7570    if (conf_parser_ctx.pass == 2)
7571      ConfigServerHide.disable_hidden = yylval.number;
7572   }
7573      break;
7574  
7575 <  case 669:
7575 >  case 668:
7576  
7577 < /* Line 1806 of yacc.c  */
7578 < #line 3518 "ircd_parser.y"
7577 > /* Line 1810 of yacc.c  */
7578 > #line 3298 "conf_parser.y"
7579      {
7580    if (conf_parser_ctx.pass == 2)
7581      ConfigServerHide.hide_server_ips = yylval.number;
# Line 7818 | Line 7584 | yyreduce:
7584  
7585  
7586  
7587 < /* Line 1806 of yacc.c  */
7588 < #line 7823 "ircd_parser.c"
7587 > /* Line 1810 of yacc.c  */
7588 > #line 7589 "conf_parser.c"
7589        default: break;
7590      }
7591    /* User semantic actions sometimes alter yychar, and that requires
# Line 8006 | Line 7772 | yyabortlab:
7772    yyresult = 1;
7773    goto yyreturn;
7774  
7775 < #if !defined(yyoverflow) || YYERROR_VERBOSE
7775 > #if !defined yyoverflow || YYERROR_VERBOSE
7776   /*-------------------------------------------------.
7777   | yyexhaustedlab -- memory exhaustion comes here.  |
7778   `-------------------------------------------------*/

Diff Legend

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