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

Comparing:
ircd-hybrid-8/src/ircd_parser.c (file contents), Revision 1302 by michael, Wed Mar 21 17:48:54 2012 UTC vs.
ircd-hybrid-8/src/conf_parser.c (file contents), Revision 1498 by michael, Sun Aug 12 17:30:53 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.6.2.  */
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.6.2"
48  
49   /* Skeleton name.  */
50   #define YYSKELETON_NAME "yacc.c"
# Line 58 | Line 58
58   /* Pull parsers.  */
59   #define YYPULL 1
60  
61 /* Using locations.  */
62 #define YYLSP_NEEDED 0
61  
62  
63  
64   /* Copy the first part of user declarations.  */
65 <
66 < /* Line 268 of yacc.c  */
69 < #line 25 "ircd_parser.y"
65 > /* Line 336 of yacc.c  */
66 > #line 25 "conf_parser.y"
67  
68  
69   #define YY_NO_UNPUT
# Line 77 | Line 74
74   #include "stdinc.h"
75   #include "ircd.h"
76   #include "list.h"
77 < #include "s_conf.h"
77 > #include "conf.h"
78   #include "event.h"
79 < #include "s_log.h"
79 > #include "log.h"
80   #include "client.h"     /* for UMODE_ALL only */
81   #include "irc_string.h"
82   #include "sprintf_irc.h"
# Line 97 | Line 94
94   #include <openssl/rsa.h>
95   #include <openssl/bio.h>
96   #include <openssl/pem.h>
97 + #include <openssl/dh.h>
98   #endif
99  
100 + int yylex(void);
101 +
102   static char *class_name = NULL;
103   static struct ConfItem *yy_conf = NULL;
104   static struct AccessItem *yy_aconf = NULL;
# Line 107 | Line 107 | static struct ClassItem *yy_class = NULL
107   static char *yy_class_name = NULL;
108  
109   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 };
110   static unsigned int listener_flags = 0;
111   static unsigned int regex_ban = 0;
112   static char userbuf[IRCD_BUFSIZE];
# Line 149 | Line 147 | free_collect_item(struct CollectItem *it
147    MyFree(item);
148   }
149  
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
150  
151 + /* Line 336 of yacc.c  */
152 + #line 153 "conf_parser.c"
153  
154 < /* Line 268 of yacc.c  */
155 < #line 179 "ircd_parser.c"
156 <
157 < /* Enabling traces.  */
158 < #ifndef YYDEBUG
159 < # define YYDEBUG 0
160 < #endif
154 > # ifndef YY_NULL
155 > #  if defined __cplusplus && 201103L <= __cplusplus
156 > #   define YY_NULL nullptr
157 > #  else
158 > #   define YY_NULL 0
159 > #  endif
160 > # endif
161  
162   /* Enabling verbose error messages.  */
163   #ifdef YYERROR_VERBOSE
# Line 190 | Line 167 | unhook_hub_leaf_confs(void)
167   # define YYERROR_VERBOSE 0
168   #endif
169  
170 < /* Enabling the token table.  */
171 < #ifndef YYTOKEN_TABLE
172 < # define YYTOKEN_TABLE 0
170 > /* In a future release of Bison, this section will be replaced
171 >   by #include "y.tab.h".  */
172 > #ifndef YY_Y_TAB_H
173 > # define YY_Y_TAB_H
174 > /* Enabling traces.  */
175 > #ifndef YYDEBUG
176 > # define YYDEBUG 0
177 > #endif
178 > #if YYDEBUG
179 > extern int yydebug;
180   #endif
197
181  
182   /* Tokens.  */
183   #ifndef YYTOKENTYPE
# Line 212 | Line 195 | unhook_hub_leaf_confs(void)
195       AUTOCONN = 265,
196       T_BLOCK = 266,
197       BURST_AWAY = 267,
198 <     BURST_TOPICWHO = 268,
199 <     BYTES = 269,
200 <     KBYTES = 270,
201 <     MBYTES = 271,
202 <     GBYTES = 272,
203 <     TBYTES = 273,
204 <     CALLER_ID_WAIT = 274,
205 <     CAN_FLOOD = 275,
206 <     CHANNEL = 276,
207 <     CIDR_BITLEN_IPV4 = 277,
208 <     CIDR_BITLEN_IPV6 = 278,
209 <     CLASS = 279,
210 <     CONNECT = 280,
211 <     CONNECTFREQ = 281,
212 <     DEFAULT_FLOODCOUNT = 282,
213 <     DEFAULT_SPLIT_SERVER_COUNT = 283,
214 <     DEFAULT_SPLIT_USER_COUNT = 284,
215 <     DENY = 285,
216 <     DESCRIPTION = 286,
217 <     DIE = 287,
218 <     DISABLE_AUTH = 288,
219 <     DISABLE_FAKE_CHANNELS = 289,
220 <     DISABLE_HIDDEN = 290,
221 <     DISABLE_LOCAL_CHANNELS = 291,
222 <     DISABLE_REMOTE_COMMANDS = 292,
223 <     DOTS_IN_IDENT = 293,
224 <     DURATION = 294,
225 <     EGDPOOL_PATH = 295,
226 <     EMAIL = 296,
227 <     ENABLE = 297,
228 <     ENCRYPTED = 298,
229 <     EXCEED_LIMIT = 299,
230 <     EXEMPT = 300,
231 <     FAILED_OPER_NOTICE = 301,
232 <     IRCD_FLAGS = 302,
233 <     FLATTEN_LINKS = 303,
234 <     GECOS = 304,
235 <     GENERAL = 305,
236 <     GLINE = 306,
237 <     GLINES = 307,
238 <     GLINE_EXEMPT = 308,
239 <     GLINE_TIME = 309,
240 <     GLINE_MIN_CIDR = 310,
241 <     GLINE_MIN_CIDR6 = 311,
242 <     GLOBAL_KILL = 312,
243 <     IRCD_AUTH = 313,
244 <     NEED_IDENT = 314,
245 <     HAVENT_READ_CONF = 315,
246 <     HIDDEN = 316,
247 <     HIDDEN_NAME = 317,
248 <     HIDE_SERVER_IPS = 318,
249 <     HIDE_SERVERS = 319,
250 <     HIDE_SPOOF_IPS = 320,
251 <     HOST = 321,
252 <     HUB = 322,
253 <     HUB_MASK = 323,
254 <     IGNORE_BOGUS_TS = 324,
255 <     INVISIBLE_ON_CONNECT = 325,
256 <     IP = 326,
257 <     KILL = 327,
258 <     KILL_CHASE_TIME_LIMIT = 328,
259 <     KLINE = 329,
260 <     KLINE_EXEMPT = 330,
261 <     KLINE_REASON = 331,
262 <     KLINE_WITH_REASON = 332,
263 <     KNOCK_DELAY = 333,
264 <     KNOCK_DELAY_CHANNEL = 334,
265 <     LEAF_MASK = 335,
266 <     LINKS_DELAY = 336,
267 <     LISTEN = 337,
268 <     T_LOG = 338,
269 <     MAX_ACCEPT = 339,
270 <     MAX_BANS = 340,
198 >     BYTES = 268,
199 >     KBYTES = 269,
200 >     MBYTES = 270,
201 >     GBYTES = 271,
202 >     TBYTES = 272,
203 >     CALLER_ID_WAIT = 273,
204 >     CAN_FLOOD = 274,
205 >     CHANNEL = 275,
206 >     CIDR_BITLEN_IPV4 = 276,
207 >     CIDR_BITLEN_IPV6 = 277,
208 >     CLASS = 278,
209 >     CONNECT = 279,
210 >     CONNECTFREQ = 280,
211 >     DEFAULT_FLOODCOUNT = 281,
212 >     DEFAULT_SPLIT_SERVER_COUNT = 282,
213 >     DEFAULT_SPLIT_USER_COUNT = 283,
214 >     DENY = 284,
215 >     DESCRIPTION = 285,
216 >     DIE = 286,
217 >     DISABLE_AUTH = 287,
218 >     DISABLE_FAKE_CHANNELS = 288,
219 >     DISABLE_REMOTE_COMMANDS = 289,
220 >     DOTS_IN_IDENT = 290,
221 >     DURATION = 291,
222 >     EGDPOOL_PATH = 292,
223 >     EMAIL = 293,
224 >     ENABLE = 294,
225 >     ENCRYPTED = 295,
226 >     EXCEED_LIMIT = 296,
227 >     EXEMPT = 297,
228 >     FAILED_OPER_NOTICE = 298,
229 >     IRCD_FLAGS = 299,
230 >     FLATTEN_LINKS = 300,
231 >     GECOS = 301,
232 >     GENERAL = 302,
233 >     GLINE = 303,
234 >     GLINE_DURATION = 304,
235 >     GLINE_ENABLE = 305,
236 >     GLINE_EXEMPT = 306,
237 >     GLINE_TIME = 307,
238 >     GLINE_REQUEST_DURATION = 308,
239 >     GLINE_MIN_CIDR = 309,
240 >     GLINE_MIN_CIDR6 = 310,
241 >     GLOBAL_KILL = 311,
242 >     IRCD_AUTH = 312,
243 >     NEED_IDENT = 313,
244 >     HAVENT_READ_CONF = 314,
245 >     HIDDEN = 315,
246 >     HIDDEN_NAME = 316,
247 >     HIDE_SERVER_IPS = 317,
248 >     HIDE_SERVERS = 318,
249 >     HIDE_SPOOF_IPS = 319,
250 >     HOST = 320,
251 >     HUB = 321,
252 >     HUB_MASK = 322,
253 >     IGNORE_BOGUS_TS = 323,
254 >     INVISIBLE_ON_CONNECT = 324,
255 >     IP = 325,
256 >     KILL = 326,
257 >     KILL_CHASE_TIME_LIMIT = 327,
258 >     KLINE = 328,
259 >     KLINE_EXEMPT = 329,
260 >     KLINE_REASON = 330,
261 >     KLINE_WITH_REASON = 331,
262 >     KNOCK_DELAY = 332,
263 >     KNOCK_DELAY_CHANNEL = 333,
264 >     LEAF_MASK = 334,
265 >     LINKS_DELAY = 335,
266 >     LISTEN = 336,
267 >     T_LOG = 337,
268 >     MAX_ACCEPT = 338,
269 >     MAX_BANS = 339,
270 >     MAX_CHANS_PER_OPER = 340,
271       MAX_CHANS_PER_USER = 341,
272       MAX_GLOBAL = 342,
273       MAX_IDENT = 343,
# Line 345 | Line 328 | unhook_hub_leaf_confs(void)
328       RSA_PRIVATE_KEY_FILE = 398,
329       RSA_PUBLIC_KEY_FILE = 399,
330       SSL_CERTIFICATE_FILE = 400,
331 <     T_SSL_CONNECTION_METHOD = 401,
332 <     T_SSLV3 = 402,
333 <     T_TLSV1 = 403,
334 <     RESV = 404,
335 <     RESV_EXEMPT = 405,
336 <     SECONDS = 406,
337 <     MINUTES = 407,
338 <     HOURS = 408,
339 <     DAYS = 409,
340 <     WEEKS = 410,
341 <     SENDQ = 411,
342 <     SEND_PASSWORD = 412,
343 <     SERVERHIDE = 413,
344 <     SERVERINFO = 414,
345 <     IRCD_SID = 415,
346 <     TKLINE_EXPIRE_NOTICES = 416,
347 <     T_SHARED = 417,
348 <     T_CLUSTER = 418,
349 <     TYPE = 419,
350 <     SHORT_MOTD = 420,
351 <     SILENT = 421,
352 <     SPOOF = 422,
353 <     SPOOF_NOTICE = 423,
354 <     STATS_E_DISABLED = 424,
355 <     STATS_I_OPER_ONLY = 425,
356 <     STATS_K_OPER_ONLY = 426,
357 <     STATS_O_OPER_ONLY = 427,
358 <     STATS_P_OPER_ONLY = 428,
359 <     TBOOL = 429,
360 <     TMASKED = 430,
361 <     T_REJECT = 431,
362 <     TS_MAX_DELTA = 432,
363 <     TS_WARN_DELTA = 433,
364 <     TWODOTS = 434,
365 <     T_ALL = 435,
366 <     T_BOTS = 436,
367 <     T_SOFTCALLERID = 437,
368 <     T_CALLERID = 438,
369 <     T_CCONN = 439,
370 <     T_CCONN_FULL = 440,
371 <     T_CLIENT_FLOOD = 441,
372 <     T_DEAF = 442,
373 <     T_DEBUG = 443,
374 <     T_DLINE = 444,
375 <     T_DRONE = 445,
376 <     T_EXTERNAL = 446,
377 <     T_FULL = 447,
378 <     T_INVISIBLE = 448,
379 <     T_IPV4 = 449,
380 <     T_IPV6 = 450,
381 <     T_LOCOPS = 451,
382 <     T_MAX_CLIENTS = 452,
383 <     T_NCHANGE = 453,
384 <     T_OPERWALL = 454,
385 <     T_REJ = 455,
386 <     T_SERVER = 456,
387 <     T_SERVNOTICE = 457,
388 <     T_SKILL = 458,
389 <     T_SPY = 459,
390 <     T_SSL = 460,
391 <     T_UMODES = 461,
392 <     T_UNAUTH = 462,
393 <     T_UNDLINE = 463,
394 <     T_UNLIMITED = 464,
395 <     T_UNRESV = 465,
396 <     T_UNXLINE = 466,
397 <     T_GLOBOPS = 467,
398 <     T_WALLOP = 468,
399 <     T_RESTART = 469,
400 <     T_SERVICE = 470,
401 <     T_SERVICES_NAME = 471,
402 <     T_TIMESTAMP = 472,
403 <     THROTTLE_TIME = 473,
404 <     TOPICBURST = 474,
405 <     TRUE_NO_OPER_FLOOD = 475,
406 <     TKLINE = 476,
407 <     TXLINE = 477,
408 <     TRESV = 478,
409 <     UNKLINE = 479,
410 <     USER = 480,
411 <     USE_EGD = 481,
412 <     USE_EXCEPT = 482,
413 <     USE_INVEX = 483,
414 <     USE_KNOCK = 484,
331 >     SSL_DH_PARAM_FILE = 401,
332 >     T_SSL_CLIENT_METHOD = 402,
333 >     T_SSL_SERVER_METHOD = 403,
334 >     T_SSLV3 = 404,
335 >     T_TLSV1 = 405,
336 >     RESV = 406,
337 >     RESV_EXEMPT = 407,
338 >     SECONDS = 408,
339 >     MINUTES = 409,
340 >     HOURS = 410,
341 >     DAYS = 411,
342 >     WEEKS = 412,
343 >     SENDQ = 413,
344 >     SEND_PASSWORD = 414,
345 >     SERVERHIDE = 415,
346 >     SERVERINFO = 416,
347 >     IRCD_SID = 417,
348 >     TKLINE_EXPIRE_NOTICES = 418,
349 >     T_SHARED = 419,
350 >     T_CLUSTER = 420,
351 >     TYPE = 421,
352 >     SHORT_MOTD = 422,
353 >     SILENT = 423,
354 >     SPOOF = 424,
355 >     SPOOF_NOTICE = 425,
356 >     STATS_E_DISABLED = 426,
357 >     STATS_I_OPER_ONLY = 427,
358 >     STATS_K_OPER_ONLY = 428,
359 >     STATS_O_OPER_ONLY = 429,
360 >     STATS_P_OPER_ONLY = 430,
361 >     TBOOL = 431,
362 >     TMASKED = 432,
363 >     T_REJECT = 433,
364 >     TS_MAX_DELTA = 434,
365 >     TS_WARN_DELTA = 435,
366 >     TWODOTS = 436,
367 >     T_ALL = 437,
368 >     T_BOTS = 438,
369 >     T_SOFTCALLERID = 439,
370 >     T_CALLERID = 440,
371 >     T_CCONN = 441,
372 >     T_CCONN_FULL = 442,
373 >     T_SSL_CIPHER_LIST = 443,
374 >     T_CLIENT_FLOOD = 444,
375 >     T_DEAF = 445,
376 >     T_DEBUG = 446,
377 >     T_DLINE = 447,
378 >     T_DRONE = 448,
379 >     T_EXTERNAL = 449,
380 >     T_FULL = 450,
381 >     T_INVISIBLE = 451,
382 >     T_IPV4 = 452,
383 >     T_IPV6 = 453,
384 >     T_LOCOPS = 454,
385 >     T_MAX_CLIENTS = 455,
386 >     T_NCHANGE = 456,
387 >     T_OPERWALL = 457,
388 >     T_REJ = 458,
389 >     T_SERVER = 459,
390 >     T_SERVNOTICE = 460,
391 >     T_SET = 461,
392 >     T_SKILL = 462,
393 >     T_SPY = 463,
394 >     T_SSL = 464,
395 >     T_UMODES = 465,
396 >     T_UNAUTH = 466,
397 >     T_UNDLINE = 467,
398 >     T_UNLIMITED = 468,
399 >     T_UNRESV = 469,
400 >     T_UNXLINE = 470,
401 >     T_GLOBOPS = 471,
402 >     T_WALLOP = 472,
403 >     T_RESTART = 473,
404 >     T_SERVICE = 474,
405 >     T_SERVICES_NAME = 475,
406 >     THROTTLE_TIME = 476,
407 >     TOPICBURST = 477,
408 >     TRUE_NO_OPER_FLOOD = 478,
409 >     TKLINE = 479,
410 >     TXLINE = 480,
411 >     TRESV = 481,
412 >     UNKLINE = 482,
413 >     USER = 483,
414 >     USE_EGD = 484,
415       USE_LOGGING = 485,
416       USE_WHOIS_ACTUALLY = 486,
417       VHOST = 487,
# Line 451 | Line 434 | unhook_hub_leaf_confs(void)
434   #define AUTOCONN 265
435   #define T_BLOCK 266
436   #define BURST_AWAY 267
437 < #define BURST_TOPICWHO 268
438 < #define BYTES 269
439 < #define KBYTES 270
440 < #define MBYTES 271
441 < #define GBYTES 272
442 < #define TBYTES 273
443 < #define CALLER_ID_WAIT 274
444 < #define CAN_FLOOD 275
445 < #define CHANNEL 276
446 < #define CIDR_BITLEN_IPV4 277
447 < #define CIDR_BITLEN_IPV6 278
448 < #define CLASS 279
449 < #define CONNECT 280
450 < #define CONNECTFREQ 281
451 < #define DEFAULT_FLOODCOUNT 282
452 < #define DEFAULT_SPLIT_SERVER_COUNT 283
453 < #define DEFAULT_SPLIT_USER_COUNT 284
454 < #define DENY 285
455 < #define DESCRIPTION 286
456 < #define DIE 287
457 < #define DISABLE_AUTH 288
458 < #define DISABLE_FAKE_CHANNELS 289
459 < #define DISABLE_HIDDEN 290
460 < #define DISABLE_LOCAL_CHANNELS 291
461 < #define DISABLE_REMOTE_COMMANDS 292
462 < #define DOTS_IN_IDENT 293
463 < #define DURATION 294
464 < #define EGDPOOL_PATH 295
465 < #define EMAIL 296
466 < #define ENABLE 297
467 < #define ENCRYPTED 298
468 < #define EXCEED_LIMIT 299
469 < #define EXEMPT 300
470 < #define FAILED_OPER_NOTICE 301
471 < #define IRCD_FLAGS 302
472 < #define FLATTEN_LINKS 303
473 < #define GECOS 304
474 < #define GENERAL 305
475 < #define GLINE 306
476 < #define GLINES 307
477 < #define GLINE_EXEMPT 308
478 < #define GLINE_TIME 309
479 < #define GLINE_MIN_CIDR 310
480 < #define GLINE_MIN_CIDR6 311
481 < #define GLOBAL_KILL 312
482 < #define IRCD_AUTH 313
483 < #define NEED_IDENT 314
484 < #define HAVENT_READ_CONF 315
485 < #define HIDDEN 316
486 < #define HIDDEN_NAME 317
487 < #define HIDE_SERVER_IPS 318
488 < #define HIDE_SERVERS 319
489 < #define HIDE_SPOOF_IPS 320
490 < #define HOST 321
491 < #define HUB 322
492 < #define HUB_MASK 323
493 < #define IGNORE_BOGUS_TS 324
494 < #define INVISIBLE_ON_CONNECT 325
495 < #define IP 326
496 < #define KILL 327
497 < #define KILL_CHASE_TIME_LIMIT 328
498 < #define KLINE 329
499 < #define KLINE_EXEMPT 330
500 < #define KLINE_REASON 331
501 < #define KLINE_WITH_REASON 332
502 < #define KNOCK_DELAY 333
503 < #define KNOCK_DELAY_CHANNEL 334
504 < #define LEAF_MASK 335
505 < #define LINKS_DELAY 336
506 < #define LISTEN 337
507 < #define T_LOG 338
508 < #define MAX_ACCEPT 339
509 < #define MAX_BANS 340
437 > #define BYTES 268
438 > #define KBYTES 269
439 > #define MBYTES 270
440 > #define GBYTES 271
441 > #define TBYTES 272
442 > #define CALLER_ID_WAIT 273
443 > #define CAN_FLOOD 274
444 > #define CHANNEL 275
445 > #define CIDR_BITLEN_IPV4 276
446 > #define CIDR_BITLEN_IPV6 277
447 > #define CLASS 278
448 > #define CONNECT 279
449 > #define CONNECTFREQ 280
450 > #define DEFAULT_FLOODCOUNT 281
451 > #define DEFAULT_SPLIT_SERVER_COUNT 282
452 > #define DEFAULT_SPLIT_USER_COUNT 283
453 > #define DENY 284
454 > #define DESCRIPTION 285
455 > #define DIE 286
456 > #define DISABLE_AUTH 287
457 > #define DISABLE_FAKE_CHANNELS 288
458 > #define DISABLE_REMOTE_COMMANDS 289
459 > #define DOTS_IN_IDENT 290
460 > #define DURATION 291
461 > #define EGDPOOL_PATH 292
462 > #define EMAIL 293
463 > #define ENABLE 294
464 > #define ENCRYPTED 295
465 > #define EXCEED_LIMIT 296
466 > #define EXEMPT 297
467 > #define FAILED_OPER_NOTICE 298
468 > #define IRCD_FLAGS 299
469 > #define FLATTEN_LINKS 300
470 > #define GECOS 301
471 > #define GENERAL 302
472 > #define GLINE 303
473 > #define GLINE_DURATION 304
474 > #define GLINE_ENABLE 305
475 > #define GLINE_EXEMPT 306
476 > #define GLINE_TIME 307
477 > #define GLINE_REQUEST_DURATION 308
478 > #define GLINE_MIN_CIDR 309
479 > #define GLINE_MIN_CIDR6 310
480 > #define GLOBAL_KILL 311
481 > #define IRCD_AUTH 312
482 > #define NEED_IDENT 313
483 > #define HAVENT_READ_CONF 314
484 > #define HIDDEN 315
485 > #define HIDDEN_NAME 316
486 > #define HIDE_SERVER_IPS 317
487 > #define HIDE_SERVERS 318
488 > #define HIDE_SPOOF_IPS 319
489 > #define HOST 320
490 > #define HUB 321
491 > #define HUB_MASK 322
492 > #define IGNORE_BOGUS_TS 323
493 > #define INVISIBLE_ON_CONNECT 324
494 > #define IP 325
495 > #define KILL 326
496 > #define KILL_CHASE_TIME_LIMIT 327
497 > #define KLINE 328
498 > #define KLINE_EXEMPT 329
499 > #define KLINE_REASON 330
500 > #define KLINE_WITH_REASON 331
501 > #define KNOCK_DELAY 332
502 > #define KNOCK_DELAY_CHANNEL 333
503 > #define LEAF_MASK 334
504 > #define LINKS_DELAY 335
505 > #define LISTEN 336
506 > #define T_LOG 337
507 > #define MAX_ACCEPT 338
508 > #define MAX_BANS 339
509 > #define MAX_CHANS_PER_OPER 340
510   #define MAX_CHANS_PER_USER 341
511   #define MAX_GLOBAL 342
512   #define MAX_IDENT 343
# Line 584 | Line 567 | unhook_hub_leaf_confs(void)
567   #define RSA_PRIVATE_KEY_FILE 398
568   #define RSA_PUBLIC_KEY_FILE 399
569   #define SSL_CERTIFICATE_FILE 400
570 < #define T_SSL_CONNECTION_METHOD 401
571 < #define T_SSLV3 402
572 < #define T_TLSV1 403
573 < #define RESV 404
574 < #define RESV_EXEMPT 405
575 < #define SECONDS 406
576 < #define MINUTES 407
577 < #define HOURS 408
578 < #define DAYS 409
579 < #define WEEKS 410
580 < #define SENDQ 411
581 < #define SEND_PASSWORD 412
582 < #define SERVERHIDE 413
583 < #define SERVERINFO 414
584 < #define IRCD_SID 415
585 < #define TKLINE_EXPIRE_NOTICES 416
586 < #define T_SHARED 417
587 < #define T_CLUSTER 418
588 < #define TYPE 419
589 < #define SHORT_MOTD 420
590 < #define SILENT 421
591 < #define SPOOF 422
592 < #define SPOOF_NOTICE 423
593 < #define STATS_E_DISABLED 424
594 < #define STATS_I_OPER_ONLY 425
595 < #define STATS_K_OPER_ONLY 426
596 < #define STATS_O_OPER_ONLY 427
597 < #define STATS_P_OPER_ONLY 428
598 < #define TBOOL 429
599 < #define TMASKED 430
600 < #define T_REJECT 431
601 < #define TS_MAX_DELTA 432
602 < #define TS_WARN_DELTA 433
603 < #define TWODOTS 434
604 < #define T_ALL 435
605 < #define T_BOTS 436
606 < #define T_SOFTCALLERID 437
607 < #define T_CALLERID 438
608 < #define T_CCONN 439
609 < #define T_CCONN_FULL 440
610 < #define T_CLIENT_FLOOD 441
611 < #define T_DEAF 442
612 < #define T_DEBUG 443
613 < #define T_DLINE 444
614 < #define T_DRONE 445
615 < #define T_EXTERNAL 446
616 < #define T_FULL 447
617 < #define T_INVISIBLE 448
618 < #define T_IPV4 449
619 < #define T_IPV6 450
620 < #define T_LOCOPS 451
621 < #define T_MAX_CLIENTS 452
622 < #define T_NCHANGE 453
623 < #define T_OPERWALL 454
624 < #define T_REJ 455
625 < #define T_SERVER 456
626 < #define T_SERVNOTICE 457
627 < #define T_SKILL 458
628 < #define T_SPY 459
629 < #define T_SSL 460
630 < #define T_UMODES 461
631 < #define T_UNAUTH 462
632 < #define T_UNDLINE 463
633 < #define T_UNLIMITED 464
634 < #define T_UNRESV 465
635 < #define T_UNXLINE 466
636 < #define T_GLOBOPS 467
637 < #define T_WALLOP 468
638 < #define T_RESTART 469
639 < #define T_SERVICE 470
640 < #define T_SERVICES_NAME 471
641 < #define T_TIMESTAMP 472
642 < #define THROTTLE_TIME 473
643 < #define TOPICBURST 474
644 < #define TRUE_NO_OPER_FLOOD 475
645 < #define TKLINE 476
646 < #define TXLINE 477
647 < #define TRESV 478
648 < #define UNKLINE 479
649 < #define USER 480
650 < #define USE_EGD 481
651 < #define USE_EXCEPT 482
652 < #define USE_INVEX 483
653 < #define USE_KNOCK 484
570 > #define SSL_DH_PARAM_FILE 401
571 > #define T_SSL_CLIENT_METHOD 402
572 > #define T_SSL_SERVER_METHOD 403
573 > #define T_SSLV3 404
574 > #define T_TLSV1 405
575 > #define RESV 406
576 > #define RESV_EXEMPT 407
577 > #define SECONDS 408
578 > #define MINUTES 409
579 > #define HOURS 410
580 > #define DAYS 411
581 > #define WEEKS 412
582 > #define SENDQ 413
583 > #define SEND_PASSWORD 414
584 > #define SERVERHIDE 415
585 > #define SERVERINFO 416
586 > #define IRCD_SID 417
587 > #define TKLINE_EXPIRE_NOTICES 418
588 > #define T_SHARED 419
589 > #define T_CLUSTER 420
590 > #define TYPE 421
591 > #define SHORT_MOTD 422
592 > #define SILENT 423
593 > #define SPOOF 424
594 > #define SPOOF_NOTICE 425
595 > #define STATS_E_DISABLED 426
596 > #define STATS_I_OPER_ONLY 427
597 > #define STATS_K_OPER_ONLY 428
598 > #define STATS_O_OPER_ONLY 429
599 > #define STATS_P_OPER_ONLY 430
600 > #define TBOOL 431
601 > #define TMASKED 432
602 > #define T_REJECT 433
603 > #define TS_MAX_DELTA 434
604 > #define TS_WARN_DELTA 435
605 > #define TWODOTS 436
606 > #define T_ALL 437
607 > #define T_BOTS 438
608 > #define T_SOFTCALLERID 439
609 > #define T_CALLERID 440
610 > #define T_CCONN 441
611 > #define T_CCONN_FULL 442
612 > #define T_SSL_CIPHER_LIST 443
613 > #define T_CLIENT_FLOOD 444
614 > #define T_DEAF 445
615 > #define T_DEBUG 446
616 > #define T_DLINE 447
617 > #define T_DRONE 448
618 > #define T_EXTERNAL 449
619 > #define T_FULL 450
620 > #define T_INVISIBLE 451
621 > #define T_IPV4 452
622 > #define T_IPV6 453
623 > #define T_LOCOPS 454
624 > #define T_MAX_CLIENTS 455
625 > #define T_NCHANGE 456
626 > #define T_OPERWALL 457
627 > #define T_REJ 458
628 > #define T_SERVER 459
629 > #define T_SERVNOTICE 460
630 > #define T_SET 461
631 > #define T_SKILL 462
632 > #define T_SPY 463
633 > #define T_SSL 464
634 > #define T_UMODES 465
635 > #define T_UNAUTH 466
636 > #define T_UNDLINE 467
637 > #define T_UNLIMITED 468
638 > #define T_UNRESV 469
639 > #define T_UNXLINE 470
640 > #define T_GLOBOPS 471
641 > #define T_WALLOP 472
642 > #define T_RESTART 473
643 > #define T_SERVICE 474
644 > #define T_SERVICES_NAME 475
645 > #define THROTTLE_TIME 476
646 > #define TOPICBURST 477
647 > #define TRUE_NO_OPER_FLOOD 478
648 > #define TKLINE 479
649 > #define TXLINE 480
650 > #define TRESV 481
651 > #define UNKLINE 482
652 > #define USER 483
653 > #define USE_EGD 484
654   #define USE_LOGGING 485
655   #define USE_WHOIS_ACTUALLY 486
656   #define VHOST 487
# Line 680 | Line 663 | unhook_hub_leaf_confs(void)
663  
664  
665  
683
666   #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
667   typedef union YYSTYPE
668   {
669 <
670 < /* Line 293 of yacc.c  */
689 < #line 132 "ircd_parser.y"
669 > /* Line 350 of yacc.c  */
670 > #line 110 "conf_parser.y"
671  
672    int number;
673    char *string;
674  
675  
676 <
677 < /* Line 293 of yacc.c  */
697 < #line 698 "ircd_parser.c"
676 > /* Line 350 of yacc.c  */
677 > #line 678 "conf_parser.c"
678   } YYSTYPE;
679   # define YYSTYPE_IS_TRIVIAL 1
680   # define yystype YYSTYPE /* obsolescent; will be withdrawn */
681   # define YYSTYPE_IS_DECLARED 1
682   #endif
683  
684 + extern YYSTYPE yylval;
685  
686 < /* Copy the second part of user declarations.  */
686 > #ifdef YYPARSE_PARAM
687 > #if defined __STDC__ || defined __cplusplus
688 > int yyparse (void *YYPARSE_PARAM);
689 > #else
690 > int yyparse ();
691 > #endif
692 > #else /* ! YYPARSE_PARAM */
693 > #if defined __STDC__ || defined __cplusplus
694 > int yyparse (void);
695 > #else
696 > int yyparse ();
697 > #endif
698 > #endif /* ! YYPARSE_PARAM */
699  
700 + #endif /* !YY_Y_TAB_H  */
701  
702 < /* Line 343 of yacc.c  */
703 < #line 710 "ircd_parser.c"
702 > /* Copy the second part of user declarations.  */
703 >
704 > /* Line 353 of yacc.c  */
705 > #line 706 "conf_parser.c"
706  
707   #ifdef short
708   # undef short
# Line 812 | Line 808 | YYID (yyi)
808   #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
809       || defined __cplusplus || defined _MSC_VER)
810   #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
811 +      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
812   #     ifndef EXIT_SUCCESS
813   #      define EXIT_SUCCESS 0
814   #     endif
# Line 903 | Line 900 | union yyalloc
900   #endif
901  
902   #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
903 < /* Copy COUNT objects from FROM to TO.  The source and destination do
903 > /* Copy COUNT objects from SRC to DST.  The source and destination do
904     not overlap.  */
905   # ifndef YYCOPY
906   #  if defined __GNUC__ && 1 < __GNUC__
907 < #   define YYCOPY(To, From, Count) \
908 <      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
907 > #   define YYCOPY(Dst, Src, Count) \
908 >      __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
909   #  else
910 < #   define YYCOPY(To, From, Count)              \
911 <      do                                        \
912 <        {                                       \
913 <          YYSIZE_T yyi;                         \
914 <          for (yyi = 0; yyi < (Count); yyi++)   \
915 <            (To)[yyi] = (From)[yyi];            \
916 <        }                                       \
910 > #   define YYCOPY(Dst, Src, Count)              \
911 >      do                                        \
912 >        {                                       \
913 >          YYSIZE_T yyi;                         \
914 >          for (yyi = 0; yyi < (Count); yyi++)   \
915 >            (Dst)[yyi] = (Src)[yyi];            \
916 >        }                                       \
917        while (YYID (0))
918   #  endif
919   # endif
# Line 925 | Line 922 | union yyalloc
922   /* YYFINAL -- State number of the termination state.  */
923   #define YYFINAL  2
924   /* YYLAST -- Last index in YYTABLE.  */
925 < #define YYLAST   1207
925 > #define YYLAST   1203
926  
927   /* YYNTOKENS -- Number of terminals.  */
928   #define YYNTOKENS  244
929   /* YYNNTS -- Number of nonterminals.  */
930 < #define YYNNTS  301
930 > #define YYNNTS  287
931   /* YYNRULES -- Number of rules.  */
932 < #define YYNRULES  658
932 > #define YYNRULES  637
933   /* YYNRULES -- Number of states.  */
934 < #define YYNSTATES  1291
934 > #define YYNSTATES  1250
935  
936   /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
937   #define YYUNDEFTOK  2
# Line 1005 | Line 1002 | static const yytype_uint16 yyprhs[] =
1002   {
1003         0,     0,     3,     4,     7,     9,    11,    13,    15,    17,
1004        19,    21,    23,    25,    27,    29,    31,    33,    35,    37,
1005 <      39,    41,    43,    45,    47,    49,    52,    55,    56,    58,
1006 <      61,    65,    69,    73,    77,    81,    82,    84,    87,    91,
1007 <      95,    99,   105,   108,   110,   112,   114,   117,   122,   127,
1008 <     133,   136,   138,   140,   142,   144,   146,   148,   150,   152,
1009 <     154,   156,   158,   160,   162,   165,   166,   172,   176,   178,
1010 <     180,   182,   187,   192,   197,   202,   207,   212,   217,   222,
1011 <     227,   232,   237,   243,   246,   248,   250,   252,   254,   257,
1012 <     262,   267,   272,   278,   281,   283,   285,   287,   289,   292,
1013 <     297,   302,   303,   310,   313,   315,   317,   319,   321,   324,
1014 <     329,   334,   339,   340,   346,   350,   352,   354,   356,   358,
1015 <     360,   362,   364,   366,   367,   374,   377,   379,   381,   383,
1016 <     385,   387,   389,   391,   393,   395,   398,   403,   408,   413,
1017 <     418,   423,   428,   429,   435,   439,   441,   443,   445,   447,
1018 <     449,   451,   453,   455,   457,   459,   461,   463,   465,   467,
1019 <     469,   471,   473,   475,   477,   479,   481,   482,   488,   492,
1020 <     494,   496,   498,   500,   502,   504,   506,   508,   510,   512,
1021 <     514,   516,   518,   520,   522,   524,   526,   528,   530,   531,
1022 <     538,   541,   543,   545,   547,   549,   551,   553,   555,   557,
1023 <     559,   561,   563,   565,   567,   569,   572,   577,   582,   587,
1024 <     592,   597,   602,   607,   612,   617,   622,   627,   632,   637,
1025 <     638,   645,   646,   652,   656,   658,   660,   662,   664,   667,
1026 <     669,   671,   673,   675,   677,   680,   681,   687,   691,   693,
1027 <     695,   699,   704,   709,   710,   717,   720,   722,   724,   726,
1028 <     728,   730,   732,   734,   736,   738,   741,   746,   751,   756,
1029 <     761,   762,   768,   772,   774,   776,   778,   780,   782,   784,
1030 <     786,   788,   790,   792,   797,   802,   807,   808,   815,   818,
1031 <     820,   822,   824,   826,   829,   834,   839,   844,   850,   853,
1032 <     855,   857,   859,   864,   865,   872,   875,   877,   879,   881,
1033 <     883,   886,   891,   896,   897,   903,   907,   909,   911,   913,
1034 <     915,   917,   919,   921,   923,   925,   927,   929,   930,   937,
1035 <     940,   942,   944,   946,   949,   954,   955,   961,   965,   967,
1036 <     969,   971,   973,   975,   977,   979,   981,   983,   985,   987,
1037 <     988,   995,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,
1038 <    1014,  1016,  1018,  1020,  1022,  1024,  1027,  1032,  1037,  1042,
1039 <    1047,  1052,  1057,  1062,  1067,  1068,  1074,  1078,  1080,  1082,
1040 <    1084,  1086,  1091,  1096,  1101,  1106,  1107,  1114,  1115,  1121,
1041 <    1125,  1127,  1129,  1132,  1134,  1136,  1138,  1140,  1142,  1147,
1042 <    1152,  1153,  1160,  1163,  1165,  1167,  1169,  1171,  1176,  1181,
1043 <    1187,  1190,  1192,  1194,  1196,  1201,  1202,  1209,  1210,  1216,
1044 <    1220,  1222,  1224,  1227,  1229,  1231,  1233,  1235,  1237,  1242,
1045 <    1247,  1253,  1256,  1258,  1260,  1262,  1264,  1266,  1268,  1270,
1046 <    1272,  1274,  1276,  1278,  1280,  1282,  1284,  1286,  1288,  1290,
1047 <    1292,  1294,  1296,  1298,  1300,  1302,  1304,  1306,  1308,  1310,
1048 <    1312,  1314,  1316,  1318,  1320,  1322,  1324,  1326,  1328,  1330,
1049 <    1332,  1334,  1336,  1338,  1340,  1342,  1344,  1346,  1348,  1350,
1050 <    1352,  1354,  1356,  1358,  1360,  1362,  1367,  1372,  1377,  1382,
1051 <    1387,  1392,  1397,  1402,  1407,  1412,  1417,  1422,  1427,  1432,
1052 <    1437,  1442,  1447,  1452,  1457,  1462,  1467,  1472,  1477,  1482,
1053 <    1487,  1492,  1497,  1502,  1507,  1512,  1517,  1522,  1527,  1532,
1054 <    1537,  1542,  1547,  1552,  1557,  1562,  1567,  1572,  1577,  1582,
1055 <    1587,  1592,  1597,  1598,  1604,  1608,  1610,  1612,  1614,  1616,
1056 <    1618,  1620,  1622,  1624,  1626,  1628,  1630,  1632,  1634,  1636,
1057 <    1638,  1640,  1642,  1644,  1646,  1648,  1650,  1651,  1657,  1661,
1058 <    1663,  1665,  1667,  1669,  1671,  1673,  1675,  1677,  1679,  1681,
1059 <    1683,  1685,  1687,  1689,  1691,  1693,  1695,  1697,  1699,  1701,
1060 <    1703,  1708,  1713,  1718,  1723,  1724,  1731,  1734,  1736,  1738,
1061 <    1740,  1742,  1744,  1746,  1748,  1750,  1755,  1760,  1761,  1767,
1062 <    1771,  1773,  1775,  1777,  1782,  1787,  1788,  1794,  1798,  1800,
1063 <    1802,  1804,  1810,  1813,  1815,  1817,  1819,  1821,  1823,  1825,
1064 <    1827,  1829,  1831,  1833,  1835,  1837,  1839,  1841,  1843,  1845,
1065 <    1847,  1849,  1851,  1853,  1858,  1863,  1868,  1873,  1878,  1883,
1066 <    1888,  1893,  1898,  1903,  1908,  1913,  1918,  1923,  1928,  1933,
1070 <    1938,  1943,  1949,  1952,  1954,  1956,  1958,  1960,  1962,  1964,
1071 <    1966,  1968,  1970,  1975,  1980,  1985,  1990,  1995,  2000
1005 >      39,    41,    43,    45,    47,    50,    53,    54,    56,    59,
1006 >      63,    67,    71,    75,    79,    80,    82,    85,    89,    93,
1007 >      97,   103,   106,   108,   110,   112,   115,   120,   125,   131,
1008 >     134,   136,   138,   140,   142,   144,   146,   148,   150,   152,
1009 >     154,   156,   158,   160,   162,   164,   166,   169,   174,   179,
1010 >     183,   185,   187,   189,   193,   195,   197,   199,   204,   209,
1011 >     214,   219,   224,   229,   234,   239,   244,   249,   254,   259,
1012 >     264,   270,   273,   275,   277,   279,   281,   284,   289,   294,
1013 >     299,   305,   308,   310,   312,   314,   317,   322,   323,   330,
1014 >     333,   335,   337,   339,   341,   344,   349,   354,   359,   360,
1015 >     366,   370,   372,   374,   376,   378,   380,   382,   384,   386,
1016 >     387,   394,   397,   399,   401,   403,   405,   407,   409,   411,
1017 >     413,   415,   418,   423,   428,   433,   438,   443,   448,   449,
1018 >     455,   459,   461,   463,   465,   467,   469,   471,   473,   475,
1019 >     477,   479,   481,   483,   485,   487,   489,   491,   493,   495,
1020 >     497,   499,   501,   502,   508,   512,   514,   516,   518,   520,
1021 >     522,   524,   526,   528,   530,   532,   534,   536,   538,   540,
1022 >     542,   544,   546,   548,   550,   552,   553,   560,   563,   565,
1023 >     567,   569,   571,   573,   575,   577,   579,   581,   583,   585,
1024 >     587,   589,   591,   594,   599,   604,   609,   614,   619,   624,
1025 >     629,   634,   639,   644,   649,   654,   659,   660,   667,   668,
1026 >     674,   678,   680,   682,   684,   686,   689,   691,   693,   695,
1027 >     697,   699,   702,   703,   709,   713,   715,   717,   721,   726,
1028 >     731,   732,   739,   742,   744,   746,   748,   750,   752,   754,
1029 >     756,   758,   760,   763,   768,   773,   778,   783,   784,   790,
1030 >     794,   796,   798,   800,   802,   804,   806,   808,   810,   812,
1031 >     814,   819,   824,   829,   830,   837,   840,   842,   844,   846,
1032 >     848,   851,   856,   861,   866,   872,   875,   877,   879,   881,
1033 >     886,   887,   894,   897,   899,   901,   903,   905,   908,   913,
1034 >     918,   919,   925,   929,   931,   933,   935,   937,   939,   941,
1035 >     943,   945,   947,   949,   951,   952,   959,   962,   964,   966,
1036 >     968,   971,   976,   977,   983,   987,   989,   991,   993,   995,
1037 >     997,   999,  1001,  1003,  1005,  1007,  1009,  1010,  1017,  1020,
1038 >    1022,  1024,  1026,  1028,  1030,  1032,  1034,  1036,  1038,  1040,
1039 >    1042,  1044,  1046,  1048,  1051,  1056,  1061,  1066,  1071,  1076,
1040 >    1081,  1086,  1091,  1092,  1098,  1102,  1104,  1106,  1108,  1110,
1041 >    1112,  1117,  1122,  1127,  1132,  1137,  1138,  1145,  1146,  1152,
1042 >    1156,  1158,  1160,  1163,  1165,  1167,  1169,  1171,  1173,  1178,
1043 >    1183,  1184,  1191,  1194,  1196,  1198,  1200,  1202,  1207,  1212,
1044 >    1218,  1221,  1223,  1225,  1227,  1232,  1233,  1240,  1241,  1247,
1045 >    1251,  1253,  1255,  1258,  1260,  1262,  1264,  1266,  1268,  1273,
1046 >    1278,  1284,  1287,  1289,  1291,  1293,  1295,  1297,  1299,  1301,
1047 >    1303,  1305,  1307,  1309,  1311,  1313,  1315,  1317,  1319,  1321,
1048 >    1323,  1325,  1327,  1329,  1331,  1333,  1335,  1337,  1339,  1341,
1049 >    1343,  1345,  1347,  1349,  1351,  1353,  1355,  1357,  1359,  1361,
1050 >    1363,  1365,  1367,  1369,  1371,  1373,  1375,  1377,  1379,  1381,
1051 >    1383,  1385,  1387,  1389,  1391,  1393,  1395,  1397,  1399,  1404,
1052 >    1409,  1414,  1419,  1424,  1429,  1434,  1439,  1444,  1449,  1454,
1053 >    1459,  1464,  1469,  1474,  1479,  1484,  1489,  1494,  1499,  1504,
1054 >    1509,  1514,  1519,  1524,  1529,  1534,  1539,  1544,  1549,  1554,
1055 >    1559,  1564,  1569,  1574,  1579,  1584,  1589,  1594,  1599,  1604,
1056 >    1609,  1614,  1619,  1624,  1629,  1634,  1639,  1644,  1649,  1650,
1057 >    1656,  1660,  1662,  1664,  1666,  1668,  1670,  1672,  1674,  1676,
1058 >    1678,  1680,  1682,  1684,  1686,  1688,  1690,  1692,  1694,  1696,
1059 >    1698,  1700,  1702,  1703,  1709,  1713,  1715,  1717,  1719,  1721,
1060 >    1723,  1725,  1727,  1729,  1731,  1733,  1735,  1737,  1739,  1741,
1061 >    1743,  1745,  1747,  1749,  1751,  1753,  1755,  1760,  1765,  1770,
1062 >    1775,  1781,  1784,  1786,  1788,  1790,  1792,  1794,  1796,  1798,
1063 >    1800,  1802,  1804,  1806,  1808,  1810,  1812,  1814,  1816,  1821,
1064 >    1826,  1831,  1836,  1841,  1846,  1851,  1856,  1861,  1866,  1871,
1065 >    1876,  1881,  1886,  1892,  1895,  1897,  1899,  1901,  1903,  1905,
1066 >    1907,  1909,  1911,  1916,  1921,  1926,  1931,  1936
1067   };
1068  
1069   /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1070   static const yytype_int16 yyrhs[] =
1071   {
1072 <     245,     0,    -1,    -1,   245,   246,    -1,   274,    -1,   280,
1073 <      -1,   295,    -1,   514,    -1,   313,    -1,   330,    -1,   344,
1074 <      -1,   256,    -1,   535,    -1,   359,    -1,   366,    -1,   370,
1075 <      -1,   380,    -1,   389,    -1,   408,    -1,   418,    -1,   424,
1076 <      -1,   438,    -1,   498,    -1,   428,    -1,   251,    -1,     1,
1077 <     239,    -1,     1,   240,    -1,    -1,   248,    -1,   110,   247,
1083 <      -1,   110,   151,   247,    -1,   110,   152,   247,    -1,   110,
1072 >     245,     0,    -1,    -1,   245,   246,    -1,   278,    -1,   284,
1073 >      -1,   298,    -1,   505,    -1,   316,    -1,   333,    -1,   347,
1074 >      -1,   256,    -1,   522,    -1,   362,    -1,   369,    -1,   373,
1075 >      -1,   383,    -1,   392,    -1,   412,    -1,   422,    -1,   428,
1076 >      -1,   442,    -1,   432,    -1,   251,    -1,     1,   239,    -1,
1077 >       1,   240,    -1,    -1,   248,    -1,   110,   247,    -1,   110,
1078       153,   247,    -1,   110,   154,   247,    -1,   110,   155,   247,
1079 <      -1,    -1,   250,    -1,   110,   249,    -1,   110,    14,   249,
1080 <      -1,   110,    15,   249,    -1,   110,    16,   249,    -1,    99,
1081 <     241,   252,   240,   239,    -1,   252,   253,    -1,   253,    -1,
1082 <     254,    -1,   255,    -1,     1,   239,    -1,    98,   242,   131,
1083 <     239,    -1,   126,   242,   131,   239,    -1,   159,   241,   257,
1084 <     240,   239,    -1,   257,   258,    -1,   258,    -1,   265,    -1,
1085 <     270,    -1,   273,    -1,   267,    -1,   268,    -1,   269,    -1,
1086 <     272,    -1,   264,    -1,   271,    -1,   266,    -1,   263,    -1,
1087 <     259,    -1,     1,   239,    -1,    -1,   146,   260,   242,   261,
1088 <     239,    -1,   261,   243,   262,    -1,   262,    -1,   147,    -1,
1089 <     148,    -1,   145,   242,   131,   239,    -1,   143,   242,   131,
1090 <     239,    -1,   100,   242,   131,   239,    -1,   160,   242,   131,
1091 <     239,    -1,    31,   242,   131,   239,    -1,   103,   242,   131,
1092 <     239,    -1,   102,   242,   131,   239,    -1,   232,   242,   131,
1093 <     239,    -1,   233,   242,   131,   239,    -1,   197,   242,   110,
1094 <     239,    -1,    67,   242,   174,   239,    -1,     5,   241,   275,
1095 <     240,   239,    -1,   275,   276,    -1,   276,    -1,   277,    -1,
1096 <     279,    -1,   278,    -1,     1,   239,    -1,   100,   242,   131,
1097 <     239,    -1,    41,   242,   131,   239,    -1,    31,   242,   131,
1098 <     239,    -1,    83,   241,   281,   240,   239,    -1,   281,   282,
1099 <      -1,   282,    -1,   283,    -1,   284,    -1,   285,    -1,     1,
1100 <     239,    -1,   230,   242,   174,   239,    -1,   217,   242,   174,
1101 <     239,    -1,    -1,   286,   238,   241,   287,   240,   239,    -1,
1102 <     287,   288,    -1,   288,    -1,   289,    -1,   291,    -1,   290,
1079 >      -1,   110,   156,   247,    -1,   110,   157,   247,    -1,    -1,
1080 >     250,    -1,   110,   249,    -1,   110,    13,   249,    -1,   110,
1081 >      14,   249,    -1,   110,    15,   249,    -1,    99,   241,   252,
1082 >     240,   239,    -1,   252,   253,    -1,   253,    -1,   254,    -1,
1083 >     255,    -1,     1,   239,    -1,    98,   242,   131,   239,    -1,
1084 >     126,   242,   131,   239,    -1,   161,   241,   257,   240,   239,
1085 >      -1,   257,   258,    -1,   258,    -1,   269,    -1,   274,    -1,
1086 >     277,    -1,   271,    -1,   272,    -1,   273,    -1,   276,    -1,
1087 >     267,    -1,   266,    -1,   275,    -1,   270,    -1,   265,    -1,
1088 >     259,    -1,   260,    -1,   268,    -1,     1,   239,    -1,   147,
1089 >     242,   261,   239,    -1,   148,   242,   263,   239,    -1,   261,
1090 >     243,   262,    -1,   262,    -1,   149,    -1,   150,    -1,   263,
1091 >     243,   264,    -1,   264,    -1,   149,    -1,   150,    -1,   145,
1092 >     242,   131,   239,    -1,   143,   242,   131,   239,    -1,   146,
1093 >     242,   131,   239,    -1,   188,   242,   131,   239,    -1,   100,
1094 >     242,   131,   239,    -1,   162,   242,   131,   239,    -1,    30,
1095 >     242,   131,   239,    -1,   103,   242,   131,   239,    -1,   102,
1096 >     242,   131,   239,    -1,   232,   242,   131,   239,    -1,   233,
1097 >     242,   131,   239,    -1,   200,   242,   110,   239,    -1,    66,
1098 >     242,   176,   239,    -1,     5,   241,   279,   240,   239,    -1,
1099 >     279,   280,    -1,   280,    -1,   281,    -1,   283,    -1,   282,
1100 >      -1,     1,   239,    -1,   100,   242,   131,   239,    -1,    38,
1101 >     242,   131,   239,    -1,    30,   242,   131,   239,    -1,    82,
1102 >     241,   285,   240,   239,    -1,   285,   286,    -1,   286,    -1,
1103 >     287,    -1,   288,    -1,     1,   239,    -1,   230,   242,   176,
1104 >     239,    -1,    -1,   289,   238,   241,   290,   240,   239,    -1,
1105 >     290,   291,    -1,   291,    -1,   292,    -1,   294,    -1,   293,
1106        -1,     1,   239,    -1,   100,   242,   131,   239,    -1,   237,
1107 <     242,   250,   239,    -1,   237,   242,   209,   239,    -1,    -1,
1108 <     164,   292,   242,   293,   239,    -1,   293,   243,   294,    -1,
1109 <     294,    -1,   225,    -1,   115,    -1,    51,    -1,   189,    -1,
1110 <      74,    -1,    72,    -1,   188,    -1,    -1,   115,   296,   241,
1111 <     297,   240,   239,    -1,   297,   298,    -1,   298,    -1,   299,
1112 <      -1,   300,    -1,   301,    -1,   305,    -1,   304,    -1,   302,
1113 <      -1,   303,    -1,   309,    -1,     1,   239,    -1,   100,   242,
1114 <     131,   239,    -1,   225,   242,   131,   239,    -1,   125,   242,
1115 <     131,   239,    -1,    43,   242,   174,   239,    -1,   144,   242,
1116 <     131,   239,    -1,    24,   242,   131,   239,    -1,    -1,   206,
1117 <     306,   242,   307,   239,    -1,   307,   243,   308,    -1,   308,
1118 <      -1,   181,    -1,   184,    -1,   185,    -1,   187,    -1,   188,
1119 <      -1,   192,    -1,    61,    -1,   203,    -1,   198,    -1,   200,
1120 <      -1,   207,    -1,   204,    -1,   191,    -1,   199,    -1,   202,
1121 <      -1,   193,    -1,   213,    -1,   182,    -1,   183,    -1,   196,
1122 <      -1,    -1,    47,   310,   242,   311,   239,    -1,   311,   243,
1123 <     312,    -1,   312,    -1,    57,    -1,   139,    -1,    74,    -1,
1124 <     224,    -1,   189,    -1,   208,    -1,   234,    -1,    51,    -1,
1125 <      32,    -1,   214,    -1,   137,    -1,     5,    -1,   105,    -1,
1126 <     199,    -1,   212,    -1,   119,    -1,   140,    -1,    98,    -1,
1127 <      -1,    24,   314,   241,   315,   240,   239,    -1,   315,   316,
1128 <      -1,   316,    -1,   317,    -1,   327,    -1,   328,    -1,   318,
1129 <      -1,   319,    -1,   329,    -1,   320,    -1,   321,    -1,   322,
1130 <      -1,   323,    -1,   324,    -1,   325,    -1,   326,    -1,     1,
1131 <     239,    -1,   100,   242,   131,   239,    -1,   128,   242,   248,
1132 <     239,    -1,   129,   242,   248,   239,    -1,   113,   242,   110,
1133 <     239,    -1,    26,   242,   248,   239,    -1,    92,   242,   110,
1134 <     239,    -1,    87,   242,   110,   239,    -1,    89,   242,   110,
1135 <     239,    -1,    88,   242,   110,   239,    -1,   156,   242,   250,
1136 <     239,    -1,    22,   242,   110,   239,    -1,    23,   242,   110,
1137 <     239,    -1,   112,   242,   110,   239,    -1,    -1,    82,   331,
1138 <     241,   336,   240,   239,    -1,    -1,    47,   333,   242,   334,
1139 <     239,    -1,   334,   243,   335,    -1,   335,    -1,   205,    -1,
1140 <      61,    -1,   201,    -1,   336,   337,    -1,   337,    -1,   338,
1141 <      -1,   332,    -1,   342,    -1,   343,    -1,     1,   239,    -1,
1142 <      -1,   130,   242,   340,   339,   239,    -1,   340,   243,   341,
1143 <      -1,   341,    -1,   110,    -1,   110,   179,   110,    -1,    71,
1144 <     242,   131,   239,    -1,    66,   242,   131,   239,    -1,    -1,
1145 <      58,   345,   241,   346,   240,   239,    -1,   346,   347,    -1,
1146 <     347,    -1,   348,    -1,   349,    -1,   350,    -1,   352,    -1,
1147 <     356,    -1,   357,    -1,   358,    -1,   351,    -1,     1,   239,
1148 <      -1,   225,   242,   131,   239,    -1,   125,   242,   131,   239,
1149 <      -1,    24,   242,   131,   239,    -1,    43,   242,   174,   239,
1150 <      -1,    -1,    47,   353,   242,   354,   239,    -1,   354,   243,
1151 <     355,    -1,   355,    -1,   168,    -1,    44,    -1,    75,    -1,
1152 <      59,    -1,    20,    -1,   109,    -1,    53,    -1,   150,    -1,
1153 <     101,    -1,   167,   242,   131,   239,    -1,   135,   242,   131,
1154 <     239,    -1,   134,   242,   110,   239,    -1,    -1,   149,   360,
1155 <     241,   361,   240,   239,    -1,   361,   362,    -1,   362,    -1,
1156 <     363,    -1,   364,    -1,   365,    -1,     1,   239,    -1,   133,
1157 <     242,   131,   239,    -1,    21,   242,   131,   239,    -1,   104,
1158 <     242,   131,   239,    -1,   215,   241,   367,   240,   239,    -1,
1159 <     367,   368,    -1,   368,    -1,   369,    -1,     1,    -1,   100,
1160 <     242,   131,   239,    -1,    -1,   162,   371,   241,   372,   240,
1161 <     239,    -1,   372,   373,    -1,   373,    -1,   374,    -1,   375,
1162 <      -1,   376,    -1,     1,   239,    -1,   100,   242,   131,   239,
1163 <      -1,   225,   242,   131,   239,    -1,    -1,   164,   377,   242,
1164 <     378,   239,    -1,   378,   243,   379,    -1,   379,    -1,    74,
1165 <      -1,   224,    -1,   189,    -1,   208,    -1,   234,    -1,   211,
1166 <      -1,   149,    -1,   210,    -1,   196,    -1,   180,    -1,    -1,
1167 <     163,   381,   241,   382,   240,   239,    -1,   382,   383,    -1,
1168 <     383,    -1,   384,    -1,   385,    -1,     1,   239,    -1,   100,
1169 <     242,   131,   239,    -1,    -1,   164,   386,   242,   387,   239,
1170 <      -1,   387,   243,   388,    -1,   388,    -1,    74,    -1,   224,
1171 <      -1,   189,    -1,   208,    -1,   234,    -1,   211,    -1,   149,
1172 <      -1,   210,    -1,   196,    -1,   180,    -1,    -1,    25,   390,
1173 <     241,   391,   240,   239,    -1,   391,   392,    -1,   392,    -1,
1174 <     393,    -1,   394,    -1,   395,    -1,   396,    -1,   397,    -1,
1175 <     399,    -1,   398,    -1,   400,    -1,   405,    -1,   406,    -1,
1176 <     407,    -1,   404,    -1,     1,   239,    -1,   100,   242,   131,
1177 <     239,    -1,    66,   242,   131,   239,    -1,   232,   242,   131,
1178 <     239,    -1,   157,   242,   131,   239,    -1,     3,   242,   131,
1179 <     239,    -1,   130,   242,   110,   239,    -1,     6,   242,   194,
1180 <     239,    -1,     6,   242,   195,   239,    -1,    -1,    47,   401,
1181 <     242,   402,   239,    -1,   402,   243,   403,    -1,   403,    -1,
1182 <      10,    -1,    12,    -1,   219,    -1,    43,   242,   174,   239,
1183 <      -1,    68,   242,   131,   239,    -1,    80,   242,   131,   239,
1184 <      -1,    24,   242,   131,   239,    -1,    -1,    72,   409,   241,
1185 <     414,   240,   239,    -1,    -1,   164,   411,   242,   412,   239,
1186 <      -1,   412,   243,   413,    -1,   413,    -1,   136,    -1,   414,
1187 <     415,    -1,   415,    -1,   416,    -1,   417,    -1,   410,    -1,
1188 <       1,    -1,   225,   242,   131,   239,    -1,   133,   242,   131,
1189 <     239,    -1,    -1,    30,   419,   241,   420,   240,   239,    -1,
1190 <     420,   421,    -1,   421,    -1,   422,    -1,   423,    -1,     1,
1191 <      -1,    71,   242,   131,   239,    -1,   133,   242,   131,   239,
1192 <      -1,    45,   241,   425,   240,   239,    -1,   425,   426,    -1,
1193 <     426,    -1,   427,    -1,     1,    -1,    71,   242,   131,   239,
1194 <      -1,    -1,    49,   429,   241,   434,   240,   239,    -1,    -1,
1195 <     164,   431,   242,   432,   239,    -1,   432,   243,   433,    -1,
1196 <     433,    -1,   136,    -1,   434,   435,    -1,   435,    -1,   436,
1197 <      -1,   437,    -1,   430,    -1,     1,    -1,   100,   242,   131,
1198 <     239,    -1,   133,   242,   131,   239,    -1,    50,   241,   439,
1199 <     240,   239,    -1,   439,   440,    -1,   440,    -1,   448,    -1,
1200 <     449,    -1,   451,    -1,   452,    -1,   453,    -1,   454,    -1,
1201 <     455,    -1,   456,    -1,   457,    -1,   458,    -1,   447,    -1,
1202 <     460,    -1,   461,    -1,   462,    -1,   463,    -1,   478,    -1,
1203 <     465,    -1,   467,    -1,   469,    -1,   468,    -1,   472,    -1,
1204 <     466,    -1,   473,    -1,   474,    -1,   475,    -1,   476,    -1,
1205 <     477,    -1,   490,    -1,   479,    -1,   480,    -1,   481,    -1,
1206 <     486,    -1,   470,    -1,   471,    -1,   496,    -1,   494,    -1,
1207 <     495,    -1,   450,    -1,   497,    -1,   485,    -1,   459,    -1,
1208 <     483,    -1,   484,    -1,   446,    -1,   442,    -1,   443,    -1,
1209 <     444,    -1,   445,    -1,   464,    -1,   441,    -1,   482,    -1,
1210 <       1,    -1,    94,   242,   110,   239,    -1,    55,   242,   110,
1211 <     239,    -1,    56,   242,   110,   239,    -1,   231,   242,   174,
1212 <     239,    -1,   138,   242,   248,   239,    -1,   161,   242,   174,
1213 <     239,    -1,    73,   242,   248,   239,    -1,    65,   242,   174,
1214 <     239,    -1,    69,   242,   174,   239,    -1,    37,   242,   174,
1215 <     239,    -1,    46,   242,   174,   239,    -1,     8,   242,   174,
1216 <     239,    -1,    91,   242,   248,   239,    -1,    90,   242,   110,
1217 <     239,    -1,    84,   242,   110,   239,    -1,     9,   242,   248,
1218 <     239,    -1,   178,   242,   248,   239,    -1,   177,   242,   248,
1219 <     239,    -1,    60,   242,   110,   239,    -1,    77,   242,   174,
1220 <     239,    -1,    76,   242,   131,   239,    -1,    70,   242,   174,
1221 <     239,    -1,   236,   242,   174,   239,    -1,   169,   242,   174,
1222 <     239,    -1,   172,   242,   174,   239,    -1,   173,   242,   174,
1223 <     239,    -1,   171,   242,   174,   239,    -1,   171,   242,   175,
1224 <     239,    -1,   170,   242,   174,   239,    -1,   170,   242,   175,
1225 <     239,    -1,   123,   242,   248,   239,    -1,    19,   242,   248,
1226 <     239,    -1,   116,   242,   174,   239,    -1,   124,   242,   248,
1227 <     239,    -1,   165,   242,   174,   239,    -1,   108,   242,   174,
1228 <     239,    -1,   220,   242,   174,   239,    -1,   118,   242,   174,
1229 <     239,    -1,    95,   242,   131,   239,    -1,    38,   242,   110,
1230 <     239,    -1,    93,   242,   110,   239,    -1,   226,   242,   174,
1231 <     239,    -1,    40,   242,   131,   239,    -1,   216,   242,   131,
1232 <     239,    -1,   127,   242,   174,   239,    -1,    33,   242,   174,
1233 <     239,    -1,   218,   242,   248,   239,    -1,    -1,   120,   487,
1234 <     242,   488,   239,    -1,   488,   243,   489,    -1,   489,    -1,
1235 <     181,    -1,   184,    -1,   185,    -1,   187,    -1,   188,    -1,
1236 <     192,    -1,    61,    -1,   203,    -1,   198,    -1,   200,    -1,
1237 <     207,    -1,   204,    -1,   191,    -1,   199,    -1,   202,    -1,
1238 <     193,    -1,   213,    -1,   182,    -1,   183,    -1,   196,    -1,
1239 <      -1,   117,   491,   242,   492,   239,    -1,   492,   243,   493,
1240 <      -1,   493,    -1,   181,    -1,   184,    -1,   185,    -1,   187,
1241 <      -1,   188,    -1,   192,    -1,   203,    -1,    61,    -1,   198,
1242 <      -1,   200,    -1,   207,    -1,   204,    -1,   191,    -1,   199,
1243 <      -1,   202,    -1,   193,    -1,   213,    -1,   182,    -1,   183,
1244 <      -1,   196,    -1,    96,   242,   110,   239,    -1,    97,   242,
1245 <     110,   239,    -1,    27,   242,   110,   239,    -1,   186,   242,
1246 <     250,   239,    -1,    -1,    52,   499,   241,   500,   240,   239,
1247 <      -1,   500,   501,    -1,   501,    -1,   502,    -1,   503,    -1,
1248 <     504,    -1,   508,    -1,   509,    -1,   510,    -1,     1,    -1,
1249 <      42,   242,   174,   239,    -1,    39,   242,   248,   239,    -1,
1250 <      -1,    83,   505,   242,   506,   239,    -1,   506,   243,   507,
1251 <      -1,   507,    -1,   176,    -1,    11,    -1,   225,   242,   131,
1252 <     239,    -1,   100,   242,   131,   239,    -1,    -1,     4,   511,
1253 <     242,   512,   239,    -1,   512,   243,   513,    -1,   513,    -1,
1254 <     176,    -1,    11,    -1,    21,   241,   515,   240,   239,    -1,
1255 <     515,   516,    -1,   516,    -1,   519,    -1,   520,    -1,   521,
1256 <      -1,   522,    -1,   527,    -1,   523,    -1,   524,    -1,   525,
1257 <      -1,   526,    -1,   528,    -1,   529,    -1,   530,    -1,   518,
1258 <      -1,   531,    -1,   532,    -1,   533,    -1,   534,    -1,   517,
1259 <      -1,     1,    -1,    34,   242,   174,   239,    -1,   141,   242,
1260 <     174,   239,    -1,    36,   242,   174,   239,    -1,   227,   242,
1261 <     174,   239,    -1,   228,   242,   174,   239,    -1,   229,   242,
1262 <     174,   239,    -1,    78,   242,   248,   239,    -1,    79,   242,
1263 <     248,   239,    -1,    86,   242,   110,   239,    -1,   132,   242,
1264 <     174,   239,    -1,    85,   242,   110,   239,    -1,    29,   242,
1265 <     110,   239,    -1,    28,   242,   110,   239,    -1,   106,   242,
1266 <     174,   239,    -1,   107,   242,   174,   239,    -1,    13,   242,
1270 <     174,   239,    -1,   121,   242,   110,   239,    -1,   122,   242,
1271 <     248,   239,    -1,   158,   241,   536,   240,   239,    -1,   536,
1272 <     537,    -1,   537,    -1,   538,    -1,   539,    -1,   541,    -1,
1273 <     543,    -1,   542,    -1,   540,    -1,   544,    -1,     1,    -1,
1274 <      48,   242,   174,   239,    -1,    64,   242,   174,   239,    -1,
1275 <      62,   242,   131,   239,    -1,    81,   242,   248,   239,    -1,
1276 <      61,   242,   174,   239,    -1,    35,   242,   174,   239,    -1,
1277 <      63,   242,   174,   239,    -1
1107 >     242,   250,   239,    -1,   237,   242,   213,   239,    -1,    -1,
1108 >     166,   295,   242,   296,   239,    -1,   296,   243,   297,    -1,
1109 >     297,    -1,   228,    -1,   115,    -1,    48,    -1,   192,    -1,
1110 >      73,    -1,    71,    -1,   191,    -1,    -1,   115,   299,   241,
1111 >     300,   240,   239,    -1,   300,   301,    -1,   301,    -1,   302,
1112 >      -1,   303,    -1,   304,    -1,   308,    -1,   307,    -1,   305,
1113 >      -1,   306,    -1,   312,    -1,     1,   239,    -1,   100,   242,
1114 >     131,   239,    -1,   228,   242,   131,   239,    -1,   125,   242,
1115 >     131,   239,    -1,    40,   242,   176,   239,    -1,   144,   242,
1116 >     131,   239,    -1,    23,   242,   131,   239,    -1,    -1,   210,
1117 >     309,   242,   310,   239,    -1,   310,   243,   311,    -1,   311,
1118 >      -1,   183,    -1,   186,    -1,   187,    -1,   190,    -1,   191,
1119 >      -1,   195,    -1,    60,    -1,   207,    -1,   201,    -1,   203,
1120 >      -1,   211,    -1,   208,    -1,   194,    -1,   202,    -1,   205,
1121 >      -1,   196,    -1,   217,    -1,   184,    -1,   185,    -1,   199,
1122 >      -1,    -1,    44,   313,   242,   314,   239,    -1,   314,   243,
1123 >     315,    -1,   315,    -1,    56,    -1,   139,    -1,    73,    -1,
1124 >     227,    -1,   192,    -1,   212,    -1,   234,    -1,    48,    -1,
1125 >      31,    -1,   218,    -1,   137,    -1,     5,    -1,   105,    -1,
1126 >     202,    -1,   216,    -1,   119,    -1,   140,    -1,   206,    -1,
1127 >      98,    -1,    -1,    23,   317,   241,   318,   240,   239,    -1,
1128 >     318,   319,    -1,   319,    -1,   320,    -1,   330,    -1,   331,
1129 >      -1,   321,    -1,   322,    -1,   332,    -1,   323,    -1,   324,
1130 >      -1,   325,    -1,   326,    -1,   327,    -1,   328,    -1,   329,
1131 >      -1,     1,   239,    -1,   100,   242,   131,   239,    -1,   128,
1132 >     242,   248,   239,    -1,   129,   242,   248,   239,    -1,   113,
1133 >     242,   110,   239,    -1,    25,   242,   248,   239,    -1,    92,
1134 >     242,   110,   239,    -1,    87,   242,   110,   239,    -1,    89,
1135 >     242,   110,   239,    -1,    88,   242,   110,   239,    -1,   158,
1136 >     242,   250,   239,    -1,    21,   242,   110,   239,    -1,    22,
1137 >     242,   110,   239,    -1,   112,   242,   110,   239,    -1,    -1,
1138 >      81,   334,   241,   339,   240,   239,    -1,    -1,    44,   336,
1139 >     242,   337,   239,    -1,   337,   243,   338,    -1,   338,    -1,
1140 >     209,    -1,    60,    -1,   204,    -1,   339,   340,    -1,   340,
1141 >      -1,   341,    -1,   335,    -1,   345,    -1,   346,    -1,     1,
1142 >     239,    -1,    -1,   130,   242,   343,   342,   239,    -1,   343,
1143 >     243,   344,    -1,   344,    -1,   110,    -1,   110,   181,   110,
1144 >      -1,    70,   242,   131,   239,    -1,    65,   242,   131,   239,
1145 >      -1,    -1,    57,   348,   241,   349,   240,   239,    -1,   349,
1146 >     350,    -1,   350,    -1,   351,    -1,   352,    -1,   353,    -1,
1147 >     355,    -1,   359,    -1,   360,    -1,   361,    -1,   354,    -1,
1148 >       1,   239,    -1,   228,   242,   131,   239,    -1,   125,   242,
1149 >     131,   239,    -1,    23,   242,   131,   239,    -1,    40,   242,
1150 >     176,   239,    -1,    -1,    44,   356,   242,   357,   239,    -1,
1151 >     357,   243,   358,    -1,   358,    -1,   170,    -1,    41,    -1,
1152 >      74,    -1,    58,    -1,    19,    -1,   109,    -1,    51,    -1,
1153 >     152,    -1,   101,    -1,   169,   242,   131,   239,    -1,   135,
1154 >     242,   131,   239,    -1,   134,   242,   110,   239,    -1,    -1,
1155 >     151,   363,   241,   364,   240,   239,    -1,   364,   365,    -1,
1156 >     365,    -1,   366,    -1,   367,    -1,   368,    -1,     1,   239,
1157 >      -1,   133,   242,   131,   239,    -1,    20,   242,   131,   239,
1158 >      -1,   104,   242,   131,   239,    -1,   219,   241,   370,   240,
1159 >     239,    -1,   370,   371,    -1,   371,    -1,   372,    -1,     1,
1160 >      -1,   100,   242,   131,   239,    -1,    -1,   164,   374,   241,
1161 >     375,   240,   239,    -1,   375,   376,    -1,   376,    -1,   377,
1162 >      -1,   378,    -1,   379,    -1,     1,   239,    -1,   100,   242,
1163 >     131,   239,    -1,   228,   242,   131,   239,    -1,    -1,   166,
1164 >     380,   242,   381,   239,    -1,   381,   243,   382,    -1,   382,
1165 >      -1,    73,    -1,   227,    -1,   192,    -1,   212,    -1,   234,
1166 >      -1,   215,    -1,   151,    -1,   214,    -1,   199,    -1,   182,
1167 >      -1,    -1,   165,   384,   241,   385,   240,   239,    -1,   385,
1168 >     386,    -1,   386,    -1,   387,    -1,   388,    -1,     1,   239,
1169 >      -1,   100,   242,   131,   239,    -1,    -1,   166,   389,   242,
1170 >     390,   239,    -1,   390,   243,   391,    -1,   391,    -1,    73,
1171 >      -1,   227,    -1,   192,    -1,   212,    -1,   234,    -1,   215,
1172 >      -1,   151,    -1,   214,    -1,   199,    -1,   182,    -1,    -1,
1173 >      24,   393,   241,   394,   240,   239,    -1,   394,   395,    -1,
1174 >     395,    -1,   396,    -1,   397,    -1,   398,    -1,   399,    -1,
1175 >     400,    -1,   402,    -1,   401,    -1,   411,    -1,   403,    -1,
1176 >     408,    -1,   409,    -1,   410,    -1,   407,    -1,     1,   239,
1177 >      -1,   100,   242,   131,   239,    -1,    65,   242,   131,   239,
1178 >      -1,   232,   242,   131,   239,    -1,   159,   242,   131,   239,
1179 >      -1,     3,   242,   131,   239,    -1,   130,   242,   110,   239,
1180 >      -1,     6,   242,   197,   239,    -1,     6,   242,   198,   239,
1181 >      -1,    -1,    44,   404,   242,   405,   239,    -1,   405,   243,
1182 >     406,    -1,   406,    -1,    10,    -1,    12,    -1,   222,    -1,
1183 >     209,    -1,    40,   242,   176,   239,    -1,    67,   242,   131,
1184 >     239,    -1,    79,   242,   131,   239,    -1,    23,   242,   131,
1185 >     239,    -1,   188,   242,   131,   239,    -1,    -1,    71,   413,
1186 >     241,   418,   240,   239,    -1,    -1,   166,   415,   242,   416,
1187 >     239,    -1,   416,   243,   417,    -1,   417,    -1,   136,    -1,
1188 >     418,   419,    -1,   419,    -1,   420,    -1,   421,    -1,   414,
1189 >      -1,     1,    -1,   228,   242,   131,   239,    -1,   133,   242,
1190 >     131,   239,    -1,    -1,    29,   423,   241,   424,   240,   239,
1191 >      -1,   424,   425,    -1,   425,    -1,   426,    -1,   427,    -1,
1192 >       1,    -1,    70,   242,   131,   239,    -1,   133,   242,   131,
1193 >     239,    -1,    42,   241,   429,   240,   239,    -1,   429,   430,
1194 >      -1,   430,    -1,   431,    -1,     1,    -1,    70,   242,   131,
1195 >     239,    -1,    -1,    46,   433,   241,   438,   240,   239,    -1,
1196 >      -1,   166,   435,   242,   436,   239,    -1,   436,   243,   437,
1197 >      -1,   437,    -1,   136,    -1,   438,   439,    -1,   439,    -1,
1198 >     440,    -1,   441,    -1,   434,    -1,     1,    -1,   100,   242,
1199 >     131,   239,    -1,   133,   242,   131,   239,    -1,    47,   241,
1200 >     443,   240,   239,    -1,   443,   444,    -1,   444,    -1,   455,
1201 >      -1,   456,    -1,   458,    -1,   459,    -1,   460,    -1,   461,
1202 >      -1,   462,    -1,   463,    -1,   464,    -1,   465,    -1,   454,
1203 >      -1,   467,    -1,   468,    -1,   469,    -1,   470,    -1,   485,
1204 >      -1,   472,    -1,   474,    -1,   476,    -1,   475,    -1,   479,
1205 >      -1,   473,    -1,   480,    -1,   481,    -1,   482,    -1,   483,
1206 >      -1,   484,    -1,   497,    -1,   486,    -1,   487,    -1,   488,
1207 >      -1,   493,    -1,   477,    -1,   478,    -1,   503,    -1,   501,
1208 >      -1,   502,    -1,   457,    -1,   504,    -1,   492,    -1,   466,
1209 >      -1,   490,    -1,   491,    -1,   453,    -1,   446,    -1,   447,
1210 >      -1,   448,    -1,   449,    -1,   450,    -1,   451,    -1,   452,
1211 >      -1,   471,    -1,   445,    -1,   489,    -1,     1,    -1,    94,
1212 >     242,   110,   239,    -1,    50,   242,   176,   239,    -1,    49,
1213 >     242,   248,   239,    -1,    53,   242,   248,   239,    -1,    54,
1214 >     242,   110,   239,    -1,    55,   242,   110,   239,    -1,   231,
1215 >     242,   176,   239,    -1,   138,   242,   248,   239,    -1,   163,
1216 >     242,   176,   239,    -1,    72,   242,   248,   239,    -1,    64,
1217 >     242,   176,   239,    -1,    68,   242,   176,   239,    -1,    34,
1218 >     242,   176,   239,    -1,    43,   242,   176,   239,    -1,     8,
1219 >     242,   176,   239,    -1,    91,   242,   248,   239,    -1,    90,
1220 >     242,   110,   239,    -1,    83,   242,   110,   239,    -1,     9,
1221 >     242,   248,   239,    -1,   180,   242,   248,   239,    -1,   179,
1222 >     242,   248,   239,    -1,    59,   242,   110,   239,    -1,    76,
1223 >     242,   176,   239,    -1,    75,   242,   131,   239,    -1,    69,
1224 >     242,   176,   239,    -1,   236,   242,   176,   239,    -1,   171,
1225 >     242,   176,   239,    -1,   174,   242,   176,   239,    -1,   175,
1226 >     242,   176,   239,    -1,   173,   242,   176,   239,    -1,   173,
1227 >     242,   177,   239,    -1,   172,   242,   176,   239,    -1,   172,
1228 >     242,   177,   239,    -1,   123,   242,   248,   239,    -1,    18,
1229 >     242,   248,   239,    -1,   116,   242,   176,   239,    -1,   124,
1230 >     242,   248,   239,    -1,   167,   242,   176,   239,    -1,   108,
1231 >     242,   176,   239,    -1,   223,   242,   176,   239,    -1,   118,
1232 >     242,   176,   239,    -1,    95,   242,   131,   239,    -1,    35,
1233 >     242,   110,   239,    -1,    93,   242,   110,   239,    -1,   229,
1234 >     242,   176,   239,    -1,    37,   242,   131,   239,    -1,   220,
1235 >     242,   131,   239,    -1,   127,   242,   176,   239,    -1,    32,
1236 >     242,   176,   239,    -1,   221,   242,   248,   239,    -1,    -1,
1237 >     120,   494,   242,   495,   239,    -1,   495,   243,   496,    -1,
1238 >     496,    -1,   183,    -1,   186,    -1,   187,    -1,   190,    -1,
1239 >     191,    -1,   195,    -1,    60,    -1,   207,    -1,   201,    -1,
1240 >     203,    -1,   211,    -1,   208,    -1,   194,    -1,   202,    -1,
1241 >     205,    -1,   196,    -1,   217,    -1,   184,    -1,   185,    -1,
1242 >     199,    -1,    -1,   117,   498,   242,   499,   239,    -1,   499,
1243 >     243,   500,    -1,   500,    -1,   183,    -1,   186,    -1,   187,
1244 >      -1,   190,    -1,   191,    -1,   195,    -1,   207,    -1,    60,
1245 >      -1,   201,    -1,   203,    -1,   211,    -1,   208,    -1,   194,
1246 >      -1,   202,    -1,   205,    -1,   196,    -1,   217,    -1,   184,
1247 >      -1,   185,    -1,   199,    -1,    96,   242,   110,   239,    -1,
1248 >      97,   242,   110,   239,    -1,    26,   242,   110,   239,    -1,
1249 >     189,   242,   250,   239,    -1,    20,   241,   506,   240,   239,
1250 >      -1,   506,   507,    -1,   507,    -1,   515,    -1,   510,    -1,
1251 >     511,    -1,   512,    -1,   513,    -1,   514,    -1,   516,    -1,
1252 >     517,    -1,   518,    -1,   509,    -1,   519,    -1,   520,    -1,
1253 >     521,    -1,   508,    -1,     1,    -1,    33,   242,   176,   239,
1254 >      -1,   141,   242,   176,   239,    -1,    77,   242,   248,   239,
1255 >      -1,    78,   242,   248,   239,    -1,    86,   242,   110,   239,
1256 >      -1,    85,   242,   110,   239,    -1,   132,   242,   176,   239,
1257 >      -1,    84,   242,   110,   239,    -1,    28,   242,   110,   239,
1258 >      -1,    27,   242,   110,   239,    -1,   106,   242,   176,   239,
1259 >      -1,   107,   242,   176,   239,    -1,   121,   242,   110,   239,
1260 >      -1,   122,   242,   248,   239,    -1,   160,   241,   523,   240,
1261 >     239,    -1,   523,   524,    -1,   524,    -1,   525,    -1,   526,
1262 >      -1,   528,    -1,   529,    -1,   527,    -1,   530,    -1,     1,
1263 >      -1,    45,   242,   176,   239,    -1,    63,   242,   176,   239,
1264 >      -1,    61,   242,   131,   239,    -1,    80,   242,   248,   239,
1265 >      -1,    60,   242,   176,   239,    -1,    62,   242,   176,   239,
1266 >      -1
1267   };
1268  
1269   /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
1270   static const yytype_uint16 yyrline[] =
1271   {
1272 <       0,   374,   374,   375,   378,   379,   380,   381,   382,   383,
1273 <     384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
1274 <     394,   395,   396,   397,   398,   399,   400,   404,   404,   405,
1275 <     409,   413,   417,   421,   425,   431,   431,   432,   433,   434,
1276 <     435,   442,   445,   445,   446,   446,   446,   448,   454,   461,
1277 <     463,   463,   464,   464,   465,   465,   466,   466,   467,   468,
1278 <     468,   469,   469,   470,   471,   475,   474,   493,   493,   494,
1279 <     500,   508,   542,   602,   617,   632,   641,   655,   664,   692,
1280 <     722,   745,   754,   756,   756,   757,   757,   758,   758,   760,
1281 <     769,   778,   790,   791,   791,   793,   793,   793,   794,   796,
1282 <     802,   809,   809,   819,   820,   822,   822,   823,   823,   825,
1283 <     830,   833,   839,   838,   844,   844,   845,   849,   853,   857,
1284 <     861,   865,   869,   880,   879,   977,   977,   978,   978,   978,
1285 <     979,   979,   979,   980,   980,   980,   982,   994,  1031,  1043,
1286 <    1054,  1096,  1106,  1105,  1111,  1111,  1112,  1116,  1120,  1124,
1287 <    1128,  1132,  1136,  1140,  1144,  1148,  1152,  1156,  1160,  1164,
1288 <    1168,  1172,  1176,  1180,  1184,  1188,  1195,  1194,  1200,  1200,
1289 <    1201,  1205,  1209,  1213,  1217,  1221,  1225,  1229,  1233,  1237,
1290 <    1241,  1245,  1249,  1253,  1257,  1261,  1265,  1269,  1280,  1279,
1291 <    1329,  1329,  1330,  1331,  1331,  1332,  1333,  1334,  1335,  1336,
1292 <    1337,  1338,  1339,  1340,  1341,  1342,  1344,  1353,  1359,  1365,
1293 <    1371,  1377,  1383,  1389,  1395,  1401,  1407,  1413,  1419,  1429,
1294 <    1428,  1445,  1444,  1449,  1449,  1450,  1454,  1458,  1466,  1466,
1295 <    1467,  1467,  1467,  1467,  1467,  1469,  1469,  1471,  1471,  1473,
1296 <    1487,  1507,  1516,  1529,  1528,  1597,  1597,  1598,  1598,  1598,
1297 <    1598,  1599,  1599,  1599,  1600,  1600,  1602,  1639,  1652,  1661,
1298 <    1673,  1672,  1676,  1676,  1677,  1681,  1685,  1689,  1693,  1697,
1299 <    1701,  1705,  1709,  1716,  1735,  1745,  1759,  1758,  1774,  1774,
1300 <    1775,  1775,  1775,  1775,  1777,  1786,  1801,  1814,  1816,  1816,
1301 <    1817,  1817,  1819,  1835,  1834,  1850,  1850,  1851,  1851,  1851,
1302 <    1851,  1853,  1862,  1885,  1884,  1890,  1890,  1891,  1895,  1899,
1303 <    1903,  1907,  1911,  1915,  1919,  1923,  1927,  1937,  1936,  1953,
1304 <    1953,  1954,  1954,  1954,  1956,  1963,  1962,  1968,  1968,  1969,
1305 <    1973,  1977,  1981,  1985,  1989,  1993,  1997,  2001,  2005,  2015,
1306 <    2014,  2143,  2143,  2144,  2144,  2144,  2145,  2145,  2146,  2146,
1307 <    2147,  2147,  2147,  2148,  2148,  2149,  2151,  2163,  2172,  2198,
1308 <    2216,  2234,  2240,  2244,  2253,  2252,  2256,  2256,  2257,  2261,
1309 <    2265,  2271,  2282,  2295,  2308,  2321,  2320,  2384,  2383,  2387,
1310 <    2387,  2388,  2394,  2394,  2395,  2395,  2395,  2395,  2397,  2416,
1311 <    2426,  2425,  2448,  2448,  2449,  2449,  2449,  2451,  2457,  2466,
1312 <    2468,  2468,  2469,  2469,  2471,  2490,  2489,  2537,  2536,  2540,
1313 <    2540,  2541,  2547,  2547,  2548,  2548,  2548,  2548,  2550,  2556,
1314 <    2565,  2568,  2568,  2569,  2569,  2570,  2570,  2571,  2571,  2572,
1315 <    2572,  2573,  2573,  2574,  2574,  2575,  2575,  2576,  2576,  2577,
1316 <    2577,  2578,  2578,  2579,  2579,  2580,  2580,  2581,  2581,  2582,
1317 <    2583,  2583,  2584,  2584,  2585,  2585,  2586,  2586,  2587,  2587,
1318 <    2588,  2589,  2590,  2590,  2591,  2592,  2593,  2593,  2594,  2594,
1319 <    2595,  2595,  2596,  2596,  2597,  2600,  2605,  2610,  2615,  2620,
1320 <    2625,  2630,  2635,  2640,  2645,  2650,  2655,  2660,  2665,  2670,
1321 <    2675,  2680,  2685,  2691,  2702,  2707,  2716,  2721,  2726,  2731,
1322 <    2736,  2741,  2744,  2749,  2752,  2757,  2762,  2767,  2772,  2777,
1323 <    2782,  2787,  2792,  2797,  2808,  2813,  2818,  2823,  2832,  2841,
1324 <    2846,  2851,  2857,  2856,  2861,  2861,  2862,  2865,  2868,  2871,
1325 <    2874,  2877,  2880,  2883,  2886,  2889,  2892,  2895,  2898,  2901,
1326 <    2904,  2907,  2910,  2913,  2916,  2919,  2925,  2924,  2929,  2929,
1327 <    2930,  2933,  2936,  2939,  2942,  2945,  2948,  2951,  2954,  2957,
1328 <    2960,  2963,  2966,  2969,  2972,  2975,  2978,  2981,  2984,  2987,
1329 <    2992,  2997,  3002,  3007,  3017,  3016,  3040,  3040,  3041,  3042,
1330 <    3043,  3044,  3045,  3046,  3047,  3049,  3055,  3062,  3061,  3066,
1331 <    3066,  3067,  3071,  3077,  3111,  3121,  3120,  3170,  3170,  3171,
1332 <    3175,  3184,  3187,  3187,  3188,  3188,  3189,  3189,  3190,  3190,
1333 <    3191,  3191,  3192,  3192,  3193,  3194,  3194,  3195,  3195,  3196,
1334 <    3196,  3197,  3197,  3199,  3204,  3209,  3214,  3219,  3224,  3229,
1335 <    3234,  3239,  3244,  3249,  3254,  3259,  3264,  3269,  3274,  3279,
1347 <    3284,  3292,  3295,  3295,  3296,  3296,  3297,  3298,  3299,  3299,
1348 <    3300,  3301,  3303,  3309,  3315,  3324,  3338,  3344,  3350
1272 >       0,   352,   352,   353,   356,   357,   358,   359,   360,   361,
1273 >     362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
1274 >     372,   373,   374,   375,   376,   377,   381,   381,   382,   386,
1275 >     390,   394,   398,   402,   408,   408,   409,   410,   411,   412,
1276 >     419,   422,   422,   423,   423,   423,   425,   431,   438,   440,
1277 >     440,   441,   441,   442,   442,   443,   443,   444,   444,   445,
1278 >     445,   446,   446,   447,   447,   448,   449,   452,   453,   455,
1279 >     455,   456,   462,   470,   470,   471,   477,   485,   524,   583,
1280 >     611,   619,   634,   649,   658,   672,   681,   709,   739,   762,
1281 >     771,   773,   773,   774,   774,   775,   775,   777,   786,   795,
1282 >     807,   808,   808,   810,   810,   811,   813,   820,   820,   830,
1283 >     831,   833,   833,   834,   834,   836,   841,   844,   850,   849,
1284 >     855,   855,   856,   860,   864,   868,   872,   876,   880,   891,
1285 >     890,   988,   988,   989,   989,   989,   990,   990,   990,   991,
1286 >     991,   991,   993,  1002,  1039,  1051,  1062,  1104,  1114,  1113,
1287 >    1119,  1119,  1120,  1124,  1128,  1132,  1136,  1140,  1144,  1148,
1288 >    1152,  1156,  1160,  1164,  1168,  1172,  1176,  1180,  1184,  1188,
1289 >    1192,  1196,  1203,  1202,  1208,  1208,  1209,  1213,  1217,  1221,
1290 >    1225,  1229,  1233,  1237,  1241,  1245,  1249,  1253,  1257,  1261,
1291 >    1265,  1269,  1273,  1277,  1281,  1292,  1291,  1341,  1341,  1342,
1292 >    1343,  1343,  1344,  1345,  1346,  1347,  1348,  1349,  1350,  1351,
1293 >    1352,  1353,  1354,  1356,  1365,  1371,  1377,  1383,  1389,  1395,
1294 >    1401,  1407,  1413,  1419,  1425,  1431,  1441,  1440,  1457,  1456,
1295 >    1461,  1461,  1462,  1466,  1470,  1478,  1478,  1479,  1479,  1479,
1296 >    1479,  1479,  1481,  1481,  1483,  1483,  1485,  1499,  1519,  1528,
1297 >    1541,  1540,  1609,  1609,  1610,  1610,  1610,  1610,  1611,  1611,
1298 >    1611,  1612,  1612,  1614,  1649,  1662,  1671,  1683,  1682,  1686,
1299 >    1686,  1687,  1691,  1695,  1699,  1703,  1707,  1711,  1715,  1719,
1300 >    1726,  1745,  1755,  1769,  1768,  1784,  1784,  1785,  1785,  1785,
1301 >    1785,  1787,  1796,  1811,  1824,  1826,  1826,  1827,  1827,  1829,
1302 >    1845,  1844,  1860,  1860,  1861,  1861,  1861,  1861,  1863,  1872,
1303 >    1895,  1894,  1900,  1900,  1901,  1905,  1909,  1913,  1917,  1921,
1304 >    1925,  1929,  1933,  1937,  1947,  1946,  1963,  1963,  1964,  1964,
1305 >    1964,  1966,  1973,  1972,  1978,  1978,  1979,  1983,  1987,  1991,
1306 >    1995,  1999,  2003,  2007,  2011,  2015,  2025,  2024,  2075,  2075,
1307 >    2076,  2076,  2076,  2077,  2077,  2078,  2078,  2078,  2079,  2079,
1308 >    2079,  2080,  2080,  2081,  2083,  2092,  2101,  2127,  2145,  2163,
1309 >    2169,  2173,  2182,  2181,  2185,  2185,  2186,  2190,  2194,  2198,
1310 >    2204,  2215,  2226,  2237,  2246,  2265,  2264,  2330,  2329,  2333,
1311 >    2333,  2334,  2340,  2340,  2341,  2341,  2341,  2341,  2343,  2362,
1312 >    2372,  2371,  2396,  2396,  2397,  2397,  2397,  2399,  2405,  2414,
1313 >    2416,  2416,  2417,  2417,  2419,  2438,  2437,  2485,  2484,  2488,
1314 >    2488,  2489,  2495,  2495,  2496,  2496,  2496,  2496,  2498,  2504,
1315 >    2513,  2516,  2516,  2517,  2517,  2518,  2518,  2519,  2519,  2520,
1316 >    2520,  2521,  2521,  2522,  2522,  2523,  2523,  2524,  2524,  2525,
1317 >    2525,  2526,  2526,  2527,  2527,  2528,  2528,  2529,  2529,  2530,
1318 >    2531,  2531,  2532,  2532,  2533,  2533,  2534,  2534,  2535,  2535,
1319 >    2536,  2537,  2538,  2538,  2539,  2540,  2541,  2541,  2542,  2542,
1320 >    2543,  2544,  2544,  2545,  2545,  2546,  2546,  2547,  2550,  2555,
1321 >    2561,  2567,  2573,  2578,  2583,  2588,  2593,  2598,  2603,  2608,
1322 >    2613,  2618,  2623,  2628,  2633,  2638,  2643,  2648,  2653,  2659,
1323 >    2670,  2675,  2684,  2689,  2694,  2699,  2704,  2709,  2712,  2717,
1324 >    2720,  2725,  2730,  2735,  2740,  2745,  2750,  2755,  2760,  2765,
1325 >    2776,  2781,  2786,  2791,  2800,  2809,  2814,  2819,  2825,  2824,
1326 >    2829,  2829,  2830,  2833,  2836,  2839,  2842,  2845,  2848,  2851,
1327 >    2854,  2857,  2860,  2863,  2866,  2869,  2872,  2875,  2878,  2881,
1328 >    2884,  2887,  2893,  2892,  2897,  2897,  2898,  2901,  2904,  2907,
1329 >    2910,  2913,  2916,  2919,  2922,  2925,  2928,  2931,  2934,  2937,
1330 >    2940,  2943,  2946,  2949,  2952,  2955,  2960,  2965,  2970,  2975,
1331 >    2984,  2987,  2987,  2988,  2989,  2989,  2990,  2990,  2991,  2991,
1332 >    2992,  2993,  2993,  2994,  2995,  2995,  2996,  2996,  2998,  3003,
1333 >    3008,  3013,  3018,  3023,  3028,  3033,  3038,  3043,  3048,  3053,
1334 >    3058,  3063,  3071,  3074,  3074,  3075,  3075,  3076,  3077,  3077,
1335 >    3078,  3079,  3081,  3087,  3093,  3102,  3116,  3122
1336   };
1337   #endif
1338  
1339 < #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
1339 > #if YYDEBUG || YYERROR_VERBOSE || 0
1340   /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1341     First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
1342   static const char *const yytname[] =
1343   {
1344    "$end", "error", "$undefined", "ACCEPT_PASSWORD", "ACTION", "ADMIN",
1345    "AFTYPE", "T_ALLOW", "ANTI_NICK_FLOOD", "ANTI_SPAM_EXIT_MESSAGE_TIME",
1346 <  "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BURST_TOPICWHO", "BYTES", "KBYTES",
1347 <  "MBYTES", "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1346 >  "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BYTES", "KBYTES", "MBYTES",
1347 >  "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1348    "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CLASS", "CONNECT",
1349    "CONNECTFREQ", "DEFAULT_FLOODCOUNT", "DEFAULT_SPLIT_SERVER_COUNT",
1350    "DEFAULT_SPLIT_USER_COUNT", "DENY", "DESCRIPTION", "DIE", "DISABLE_AUTH",
1351 <  "DISABLE_FAKE_CHANNELS", "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS",
1352 <  "DISABLE_REMOTE_COMMANDS", "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH",
1353 <  "EMAIL", "ENABLE", "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT",
1354 <  "FAILED_OPER_NOTICE", "IRCD_FLAGS", "FLATTEN_LINKS", "GECOS", "GENERAL",
1355 <  "GLINE", "GLINES", "GLINE_EXEMPT", "GLINE_TIME", "GLINE_MIN_CIDR",
1356 <  "GLINE_MIN_CIDR6", "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT",
1357 <  "HAVENT_READ_CONF", "HIDDEN", "HIDDEN_NAME", "HIDE_SERVER_IPS",
1358 <  "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK",
1359 <  "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT", "IP", "KILL",
1351 >  "DISABLE_FAKE_CHANNELS", "DISABLE_REMOTE_COMMANDS", "DOTS_IN_IDENT",
1352 >  "DURATION", "EGDPOOL_PATH", "EMAIL", "ENABLE", "ENCRYPTED",
1353 >  "EXCEED_LIMIT", "EXEMPT", "FAILED_OPER_NOTICE", "IRCD_FLAGS",
1354 >  "FLATTEN_LINKS", "GECOS", "GENERAL", "GLINE", "GLINE_DURATION",
1355 >  "GLINE_ENABLE", "GLINE_EXEMPT", "GLINE_TIME", "GLINE_REQUEST_DURATION",
1356 >  "GLINE_MIN_CIDR", "GLINE_MIN_CIDR6", "GLOBAL_KILL", "IRCD_AUTH",
1357 >  "NEED_IDENT", "HAVENT_READ_CONF", "HIDDEN", "HIDDEN_NAME",
1358 >  "HIDE_SERVER_IPS", "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB",
1359 >  "HUB_MASK", "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT", "IP", "KILL",
1360    "KILL_CHASE_TIME_LIMIT", "KLINE", "KLINE_EXEMPT", "KLINE_REASON",
1361    "KLINE_WITH_REASON", "KNOCK_DELAY", "KNOCK_DELAY_CHANNEL", "LEAF_MASK",
1362    "LINKS_DELAY", "LISTEN", "T_LOG", "MAX_ACCEPT", "MAX_BANS",
1363 <  "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1364 <  "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER", "MAX_TARGETS",
1365 <  "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1363 >  "MAX_CHANS_PER_OPER", "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT",
1364 >  "MAX_LOCAL", "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER",
1365 >  "MAX_TARGETS", "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1366    "MIN_NONWILDCARD_SIMPLE", "MODULE", "MODULES", "NAME", "NEED_PASSWORD",
1367    "NETWORK_DESC", "NETWORK_NAME", "NICK", "NICK_CHANGES",
1368    "NO_CREATE_ON_SPLIT", "NO_JOIN_ON_SPLIT", "NO_OPER_FLOOD", "NO_TILDE",
# Line 1387 | Line 1374 | static const char *const yytname[] =
1374    "QSTRING", "QUIET_ON_BAN", "REASON", "REDIRPORT", "REDIRSERV", "REGEX_T",
1375    "REHASH", "TREJECT_HOLD_TIME", "REMOTE", "REMOTEBAN",
1376    "RESTRICT_CHANNELS", "RESTRICTED", "RSA_PRIVATE_KEY_FILE",
1377 <  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "T_SSL_CONNECTION_METHOD",
1378 <  "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES",
1379 <  "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD", "SERVERHIDE",
1380 <  "SERVERINFO", "IRCD_SID", "TKLINE_EXPIRE_NOTICES", "T_SHARED",
1381 <  "T_CLUSTER", "TYPE", "SHORT_MOTD", "SILENT", "SPOOF", "SPOOF_NOTICE",
1382 <  "STATS_E_DISABLED", "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY",
1383 <  "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL", "TMASKED", "T_REJECT",
1384 <  "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS",
1385 <  "T_SOFTCALLERID", "T_CALLERID", "T_CCONN", "T_CCONN_FULL",
1377 >  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "SSL_DH_PARAM_FILE",
1378 >  "T_SSL_CLIENT_METHOD", "T_SSL_SERVER_METHOD", "T_SSLV3", "T_TLSV1",
1379 >  "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS",
1380 >  "SENDQ", "SEND_PASSWORD", "SERVERHIDE", "SERVERINFO", "IRCD_SID",
1381 >  "TKLINE_EXPIRE_NOTICES", "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD",
1382 >  "SILENT", "SPOOF", "SPOOF_NOTICE", "STATS_E_DISABLED",
1383 >  "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY",
1384 >  "STATS_P_OPER_ONLY", "TBOOL", "TMASKED", "T_REJECT", "TS_MAX_DELTA",
1385 >  "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS", "T_SOFTCALLERID",
1386 >  "T_CALLERID", "T_CCONN", "T_CCONN_FULL", "T_SSL_CIPHER_LIST",
1387    "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DLINE", "T_DRONE",
1388    "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS",
1389    "T_MAX_CLIENTS", "T_NCHANGE", "T_OPERWALL", "T_REJ", "T_SERVER",
1390 <  "T_SERVNOTICE", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES", "T_UNAUTH",
1391 <  "T_UNDLINE", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE", "T_GLOBOPS",
1392 <  "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME", "T_TIMESTAMP",
1390 >  "T_SERVNOTICE", "T_SET", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES",
1391 >  "T_UNAUTH", "T_UNDLINE", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE",
1392 >  "T_GLOBOPS", "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME",
1393    "THROTTLE_TIME", "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE",
1394 <  "TRESV", "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX",
1395 <  "USE_KNOCK", "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6",
1396 <  "XLINE", "WARN", "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'",
1397 <  "'{'", "'='", "','", "$accept", "conf", "conf_item", "timespec_",
1398 <  "timespec", "sizespec_", "sizespec", "modules_entry", "modules_items",
1399 <  "modules_item", "modules_module", "modules_path", "serverinfo_entry",
1400 <  "serverinfo_items", "serverinfo_item",
1401 <  "serverinfo_ssl_connection_method", "$@1", "method_types",
1402 <  "method_type_item", "serverinfo_ssl_certificate_file",
1403 <  "serverinfo_rsa_private_key_file", "serverinfo_name", "serverinfo_sid",
1394 >  "TRESV", "UNKLINE", "USER", "USE_EGD", "USE_LOGGING",
1395 >  "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6", "XLINE", "WARN",
1396 >  "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'", "'{'", "'='", "','",
1397 >  "$accept", "conf", "conf_item", "timespec_", "timespec", "sizespec_",
1398 >  "sizespec", "modules_entry", "modules_items", "modules_item",
1399 >  "modules_module", "modules_path", "serverinfo_entry", "serverinfo_items",
1400 >  "serverinfo_item", "serverinfo_ssl_client_method",
1401 >  "serverinfo_ssl_server_method", "client_method_types",
1402 >  "client_method_type_item", "server_method_types",
1403 >  "server_method_type_item", "serverinfo_ssl_certificate_file",
1404 >  "serverinfo_rsa_private_key_file", "serverinfo_ssl_dh_param_file",
1405 >  "serverinfo_ssl_cipher_list", "serverinfo_name", "serverinfo_sid",
1406    "serverinfo_description", "serverinfo_network_name",
1407    "serverinfo_network_desc", "serverinfo_vhost", "serverinfo_vhost6",
1408    "serverinfo_max_clients", "serverinfo_hub", "admin_entry", "admin_items",
1409    "admin_item", "admin_name", "admin_email", "admin_description",
1410    "logging_entry", "logging_items", "logging_item", "logging_use_logging",
1411 <  "logging_timestamp", "logging_file_entry", "$@2", "logging_file_items",
1412 <  "logging_file_item", "logging_file_name", "logging_file_size",
1413 <  "logging_file_type", "$@3", "logging_file_type_items",
1414 <  "logging_file_type_item", "oper_entry", "$@4", "oper_items", "oper_item",
1415 <  "oper_name", "oper_user", "oper_password", "oper_encrypted",
1416 <  "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@5",
1417 <  "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@6",
1418 <  "oper_flags_items", "oper_flags_item", "class_entry", "$@7",
1419 <  "class_items", "class_item", "class_name", "class_ping_time",
1420 <  "class_ping_warning", "class_number_per_ip", "class_connectfreq",
1421 <  "class_max_number", "class_max_global", "class_max_local",
1422 <  "class_max_ident", "class_sendq", "class_cidr_bitlen_ipv4",
1423 <  "class_cidr_bitlen_ipv6", "class_number_per_cidr", "listen_entry", "$@8",
1424 <  "listen_flags", "$@9", "listen_flags_items", "listen_flags_item",
1425 <  "listen_items", "listen_item", "listen_port", "$@10", "port_items",
1426 <  "port_item", "listen_address", "listen_host", "auth_entry", "$@11",
1427 <  "auth_items", "auth_item", "auth_user", "auth_passwd", "auth_class",
1428 <  "auth_encrypted", "auth_flags", "$@12", "auth_flags_items",
1429 <  "auth_flags_item", "auth_spoof", "auth_redir_serv", "auth_redir_port",
1430 <  "resv_entry", "$@13", "resv_items", "resv_item", "resv_creason",
1431 <  "resv_channel", "resv_nick", "service_entry", "service_items",
1432 <  "service_item", "service_name", "shared_entry", "$@14", "shared_items",
1433 <  "shared_item", "shared_name", "shared_user", "shared_type", "$@15",
1434 <  "shared_types", "shared_type_item", "cluster_entry", "$@16",
1435 <  "cluster_items", "cluster_item", "cluster_name", "cluster_type", "$@17",
1436 <  "cluster_types", "cluster_type_item", "connect_entry", "$@18",
1437 <  "connect_items", "connect_item", "connect_name", "connect_host",
1438 <  "connect_vhost", "connect_send_password", "connect_accept_password",
1439 <  "connect_port", "connect_aftype", "connect_flags", "$@19",
1440 <  "connect_flags_items", "connect_flags_item", "connect_encrypted",
1441 <  "connect_hub_mask", "connect_leaf_mask", "connect_class", "kill_entry",
1442 <  "$@20", "kill_type", "$@21", "kill_type_items", "kill_type_item",
1443 <  "kill_items", "kill_item", "kill_user", "kill_reason", "deny_entry",
1444 <  "$@22", "deny_items", "deny_item", "deny_ip", "deny_reason",
1445 <  "exempt_entry", "exempt_items", "exempt_item", "exempt_ip",
1446 <  "gecos_entry", "$@23", "gecos_flags", "$@24", "gecos_flags_items",
1447 <  "gecos_flags_item", "gecos_items", "gecos_item", "gecos_name",
1448 <  "gecos_reason", "general_entry", "general_items", "general_item",
1449 <  "general_max_watch", "general_gline_min_cidr", "general_gline_min_cidr6",
1450 <  "general_use_whois_actually", "general_reject_hold_time",
1451 <  "general_tkline_expire_notices", "general_kill_chase_time_limit",
1452 <  "general_hide_spoof_ips", "general_ignore_bogus_ts",
1453 <  "general_disable_remote_commands", "general_failed_oper_notice",
1454 <  "general_anti_nick_flood", "general_max_nick_time",
1455 <  "general_max_nick_changes", "general_max_accept",
1456 <  "general_anti_spam_exit_message_time", "general_ts_warn_delta",
1457 <  "general_ts_max_delta", "general_havent_read_conf",
1458 <  "general_kline_with_reason", "general_kline_reason",
1459 <  "general_invisible_on_connect", "general_warn_no_nline",
1460 <  "general_stats_e_disabled", "general_stats_o_oper_only",
1461 <  "general_stats_P_oper_only", "general_stats_k_oper_only",
1462 <  "general_stats_i_oper_only", "general_pace_wait",
1463 <  "general_caller_id_wait", "general_opers_bypass_callerid",
1464 <  "general_pace_wait_simple", "general_short_motd",
1465 <  "general_no_oper_flood", "general_true_no_oper_flood",
1466 <  "general_oper_pass_resv", "general_message_locale",
1467 <  "general_dots_in_ident", "general_max_targets", "general_use_egd",
1468 <  "general_egdpool_path", "general_services_name", "general_ping_cookie",
1469 <  "general_disable_auth", "general_throttle_time", "general_oper_umodes",
1470 <  "$@25", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1471 <  "$@26", "umode_items", "umode_item", "general_min_nonwildcard",
1472 <  "general_min_nonwildcard_simple", "general_default_floodcount",
1473 <  "general_client_flood", "gline_entry", "$@27", "gline_items",
1474 <  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@28",
1475 <  "gline_logging_types", "gline_logging_type_item", "gline_user",
1476 <  "gline_server", "gline_action", "$@29", "gdeny_types", "gdeny_type_item",
1487 <  "channel_entry", "channel_items", "channel_item",
1488 <  "channel_disable_fake_channels", "channel_restrict_channels",
1489 <  "channel_disable_local_channels", "channel_use_except",
1490 <  "channel_use_invex", "channel_use_knock", "channel_knock_delay",
1411 >  "logging_file_entry", "$@1", "logging_file_items", "logging_file_item",
1412 >  "logging_file_name", "logging_file_size", "logging_file_type", "$@2",
1413 >  "logging_file_type_items", "logging_file_type_item", "oper_entry", "$@3",
1414 >  "oper_items", "oper_item", "oper_name", "oper_user", "oper_password",
1415 >  "oper_encrypted", "oper_rsa_public_key_file", "oper_class",
1416 >  "oper_umodes", "$@4", "oper_umodes_items", "oper_umodes_item",
1417 >  "oper_flags", "$@5", "oper_flags_items", "oper_flags_item",
1418 >  "class_entry", "$@6", "class_items", "class_item", "class_name",
1419 >  "class_ping_time", "class_ping_warning", "class_number_per_ip",
1420 >  "class_connectfreq", "class_max_number", "class_max_global",
1421 >  "class_max_local", "class_max_ident", "class_sendq",
1422 >  "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1423 >  "class_number_per_cidr", "listen_entry", "$@7", "listen_flags", "$@8",
1424 >  "listen_flags_items", "listen_flags_item", "listen_items", "listen_item",
1425 >  "listen_port", "$@9", "port_items", "port_item", "listen_address",
1426 >  "listen_host", "auth_entry", "$@10", "auth_items", "auth_item",
1427 >  "auth_user", "auth_passwd", "auth_class", "auth_encrypted", "auth_flags",
1428 >  "$@11", "auth_flags_items", "auth_flags_item", "auth_spoof",
1429 >  "auth_redir_serv", "auth_redir_port", "resv_entry", "$@12", "resv_items",
1430 >  "resv_item", "resv_creason", "resv_channel", "resv_nick",
1431 >  "service_entry", "service_items", "service_item", "service_name",
1432 >  "shared_entry", "$@13", "shared_items", "shared_item", "shared_name",
1433 >  "shared_user", "shared_type", "$@14", "shared_types", "shared_type_item",
1434 >  "cluster_entry", "$@15", "cluster_items", "cluster_item", "cluster_name",
1435 >  "cluster_type", "$@16", "cluster_types", "cluster_type_item",
1436 >  "connect_entry", "$@17", "connect_items", "connect_item", "connect_name",
1437 >  "connect_host", "connect_vhost", "connect_send_password",
1438 >  "connect_accept_password", "connect_port", "connect_aftype",
1439 >  "connect_flags", "$@18", "connect_flags_items", "connect_flags_item",
1440 >  "connect_encrypted", "connect_hub_mask", "connect_leaf_mask",
1441 >  "connect_class", "connect_ssl_cipher_list", "kill_entry", "$@19",
1442 >  "kill_type", "$@20", "kill_type_items", "kill_type_item", "kill_items",
1443 >  "kill_item", "kill_user", "kill_reason", "deny_entry", "$@21",
1444 >  "deny_items", "deny_item", "deny_ip", "deny_reason", "exempt_entry",
1445 >  "exempt_items", "exempt_item", "exempt_ip", "gecos_entry", "$@22",
1446 >  "gecos_flags", "$@23", "gecos_flags_items", "gecos_flags_item",
1447 >  "gecos_items", "gecos_item", "gecos_name", "gecos_reason",
1448 >  "general_entry", "general_items", "general_item", "general_max_watch",
1449 >  "general_gline_enable", "general_gline_duration",
1450 >  "general_gline_request_duration", "general_gline_min_cidr",
1451 >  "general_gline_min_cidr6", "general_use_whois_actually",
1452 >  "general_reject_hold_time", "general_tkline_expire_notices",
1453 >  "general_kill_chase_time_limit", "general_hide_spoof_ips",
1454 >  "general_ignore_bogus_ts", "general_disable_remote_commands",
1455 >  "general_failed_oper_notice", "general_anti_nick_flood",
1456 >  "general_max_nick_time", "general_max_nick_changes",
1457 >  "general_max_accept", "general_anti_spam_exit_message_time",
1458 >  "general_ts_warn_delta", "general_ts_max_delta",
1459 >  "general_havent_read_conf", "general_kline_with_reason",
1460 >  "general_kline_reason", "general_invisible_on_connect",
1461 >  "general_warn_no_nline", "general_stats_e_disabled",
1462 >  "general_stats_o_oper_only", "general_stats_P_oper_only",
1463 >  "general_stats_k_oper_only", "general_stats_i_oper_only",
1464 >  "general_pace_wait", "general_caller_id_wait",
1465 >  "general_opers_bypass_callerid", "general_pace_wait_simple",
1466 >  "general_short_motd", "general_no_oper_flood",
1467 >  "general_true_no_oper_flood", "general_oper_pass_resv",
1468 >  "general_message_locale", "general_dots_in_ident", "general_max_targets",
1469 >  "general_use_egd", "general_egdpool_path", "general_services_name",
1470 >  "general_ping_cookie", "general_disable_auth", "general_throttle_time",
1471 >  "general_oper_umodes", "$@24", "umode_oitems", "umode_oitem",
1472 >  "general_oper_only_umodes", "$@25", "umode_items", "umode_item",
1473 >  "general_min_nonwildcard", "general_min_nonwildcard_simple",
1474 >  "general_default_floodcount", "general_client_flood", "channel_entry",
1475 >  "channel_items", "channel_item", "channel_disable_fake_channels",
1476 >  "channel_restrict_channels", "channel_knock_delay",
1477    "channel_knock_delay_channel", "channel_max_chans_per_user",
1478 <  "channel_quiet_on_ban", "channel_max_bans",
1478 >  "channel_max_chans_per_oper", "channel_quiet_on_ban", "channel_max_bans",
1479    "channel_default_split_user_count", "channel_default_split_server_count",
1480    "channel_no_create_on_split", "channel_no_join_on_split",
1481 <  "channel_burst_topicwho", "channel_jflood_count", "channel_jflood_time",
1482 <  "serverhide_entry", "serverhide_items", "serverhide_item",
1483 <  "serverhide_flatten_links", "serverhide_hide_servers",
1484 <  "serverhide_hidden_name", "serverhide_links_delay", "serverhide_hidden",
1485 <  "serverhide_disable_hidden", "serverhide_hide_server_ips", 0
1481 >  "channel_jflood_count", "channel_jflood_time", "serverhide_entry",
1482 >  "serverhide_items", "serverhide_item", "serverhide_flatten_links",
1483 >  "serverhide_hide_servers", "serverhide_hidden_name",
1484 >  "serverhide_links_delay", "serverhide_hidden",
1485 >  "serverhide_hide_server_ips", YY_NULL
1486   };
1487   #endif
1488  
# Line 1538 | Line 1524 | static const yytype_uint16 yyr1[] =
1524   {
1525         0,   244,   245,   245,   246,   246,   246,   246,   246,   246,
1526       246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
1527 <     246,   246,   246,   246,   246,   246,   246,   247,   247,   248,
1528 <     248,   248,   248,   248,   248,   249,   249,   250,   250,   250,
1529 <     250,   251,   252,   252,   253,   253,   253,   254,   255,   256,
1530 <     257,   257,   258,   258,   258,   258,   258,   258,   258,   258,
1531 <     258,   258,   258,   258,   258,   260,   259,   261,   261,   262,
1532 <     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1533 <     272,   273,   274,   275,   275,   276,   276,   276,   276,   277,
1534 <     278,   279,   280,   281,   281,   282,   282,   282,   282,   283,
1535 <     284,   286,   285,   287,   287,   288,   288,   288,   288,   289,
1536 <     290,   290,   292,   291,   293,   293,   294,   294,   294,   294,
1537 <     294,   294,   294,   296,   295,   297,   297,   298,   298,   298,
1538 <     298,   298,   298,   298,   298,   298,   299,   300,   301,   302,
1539 <     303,   304,   306,   305,   307,   307,   308,   308,   308,   308,
1540 <     308,   308,   308,   308,   308,   308,   308,   308,   308,   308,
1541 <     308,   308,   308,   308,   308,   308,   310,   309,   311,   311,
1542 <     312,   312,   312,   312,   312,   312,   312,   312,   312,   312,
1543 <     312,   312,   312,   312,   312,   312,   312,   312,   314,   313,
1544 <     315,   315,   316,   316,   316,   316,   316,   316,   316,   316,
1545 <     316,   316,   316,   316,   316,   316,   317,   318,   319,   320,
1546 <     321,   322,   323,   324,   325,   326,   327,   328,   329,   331,
1547 <     330,   333,   332,   334,   334,   335,   335,   335,   336,   336,
1548 <     337,   337,   337,   337,   337,   339,   338,   340,   340,   341,
1549 <     341,   342,   343,   345,   344,   346,   346,   347,   347,   347,
1550 <     347,   347,   347,   347,   347,   347,   348,   349,   350,   351,
1551 <     353,   352,   354,   354,   355,   355,   355,   355,   355,   355,
1552 <     355,   355,   355,   356,   357,   358,   360,   359,   361,   361,
1553 <     362,   362,   362,   362,   363,   364,   365,   366,   367,   367,
1554 <     368,   368,   369,   371,   370,   372,   372,   373,   373,   373,
1555 <     373,   374,   375,   377,   376,   378,   378,   379,   379,   379,
1556 <     379,   379,   379,   379,   379,   379,   379,   381,   380,   382,
1557 <     382,   383,   383,   383,   384,   386,   385,   387,   387,   388,
1558 <     388,   388,   388,   388,   388,   388,   388,   388,   388,   390,
1559 <     389,   391,   391,   392,   392,   392,   392,   392,   392,   392,
1560 <     392,   392,   392,   392,   392,   392,   393,   394,   395,   396,
1561 <     397,   398,   399,   399,   401,   400,   402,   402,   403,   403,
1562 <     403,   404,   405,   406,   407,   409,   408,   411,   410,   412,
1563 <     412,   413,   414,   414,   415,   415,   415,   415,   416,   417,
1564 <     419,   418,   420,   420,   421,   421,   421,   422,   423,   424,
1565 <     425,   425,   426,   426,   427,   429,   428,   431,   430,   432,
1566 <     432,   433,   434,   434,   435,   435,   435,   435,   436,   437,
1567 <     438,   439,   439,   440,   440,   440,   440,   440,   440,   440,
1568 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1569 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1570 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1571 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1572 <     440,   440,   440,   440,   440,   441,   442,   443,   444,   445,
1573 <     446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
1574 <     456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
1575 <     466,   467,   467,   468,   468,   469,   470,   471,   472,   473,
1576 <     474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
1577 <     484,   485,   487,   486,   488,   488,   489,   489,   489,   489,
1578 <     489,   489,   489,   489,   489,   489,   489,   489,   489,   489,
1579 <     489,   489,   489,   489,   489,   489,   491,   490,   492,   492,
1580 <     493,   493,   493,   493,   493,   493,   493,   493,   493,   493,
1581 <     493,   493,   493,   493,   493,   493,   493,   493,   493,   493,
1582 <     494,   495,   496,   497,   499,   498,   500,   500,   501,   501,
1583 <     501,   501,   501,   501,   501,   502,   503,   505,   504,   506,
1584 <     506,   507,   507,   508,   509,   511,   510,   512,   512,   513,
1585 <     513,   514,   515,   515,   516,   516,   516,   516,   516,   516,
1586 <     516,   516,   516,   516,   516,   516,   516,   516,   516,   516,
1587 <     516,   516,   516,   517,   518,   519,   520,   521,   522,   523,
1588 <     524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
1603 <     534,   535,   536,   536,   537,   537,   537,   537,   537,   537,
1604 <     537,   537,   538,   539,   540,   541,   542,   543,   544
1527 >     246,   246,   246,   246,   246,   246,   247,   247,   248,   248,
1528 >     248,   248,   248,   248,   249,   249,   250,   250,   250,   250,
1529 >     251,   252,   252,   253,   253,   253,   254,   255,   256,   257,
1530 >     257,   258,   258,   258,   258,   258,   258,   258,   258,   258,
1531 >     258,   258,   258,   258,   258,   258,   258,   259,   260,   261,
1532 >     261,   262,   262,   263,   263,   264,   264,   265,   266,   267,
1533 >     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
1534 >     278,   279,   279,   280,   280,   280,   280,   281,   282,   283,
1535 >     284,   285,   285,   286,   286,   286,   287,   289,   288,   290,
1536 >     290,   291,   291,   291,   291,   292,   293,   293,   295,   294,
1537 >     296,   296,   297,   297,   297,   297,   297,   297,   297,   299,
1538 >     298,   300,   300,   301,   301,   301,   301,   301,   301,   301,
1539 >     301,   301,   302,   303,   304,   305,   306,   307,   309,   308,
1540 >     310,   310,   311,   311,   311,   311,   311,   311,   311,   311,
1541 >     311,   311,   311,   311,   311,   311,   311,   311,   311,   311,
1542 >     311,   311,   313,   312,   314,   314,   315,   315,   315,   315,
1543 >     315,   315,   315,   315,   315,   315,   315,   315,   315,   315,
1544 >     315,   315,   315,   315,   315,   317,   316,   318,   318,   319,
1545 >     319,   319,   319,   319,   319,   319,   319,   319,   319,   319,
1546 >     319,   319,   319,   320,   321,   322,   323,   324,   325,   326,
1547 >     327,   328,   329,   330,   331,   332,   334,   333,   336,   335,
1548 >     337,   337,   338,   338,   338,   339,   339,   340,   340,   340,
1549 >     340,   340,   342,   341,   343,   343,   344,   344,   345,   346,
1550 >     348,   347,   349,   349,   350,   350,   350,   350,   350,   350,
1551 >     350,   350,   350,   351,   352,   353,   354,   356,   355,   357,
1552 >     357,   358,   358,   358,   358,   358,   358,   358,   358,   358,
1553 >     359,   360,   361,   363,   362,   364,   364,   365,   365,   365,
1554 >     365,   366,   367,   368,   369,   370,   370,   371,   371,   372,
1555 >     374,   373,   375,   375,   376,   376,   376,   376,   377,   378,
1556 >     380,   379,   381,   381,   382,   382,   382,   382,   382,   382,
1557 >     382,   382,   382,   382,   384,   383,   385,   385,   386,   386,
1558 >     386,   387,   389,   388,   390,   390,   391,   391,   391,   391,
1559 >     391,   391,   391,   391,   391,   391,   393,   392,   394,   394,
1560 >     395,   395,   395,   395,   395,   395,   395,   395,   395,   395,
1561 >     395,   395,   395,   395,   396,   397,   398,   399,   400,   401,
1562 >     402,   402,   404,   403,   405,   405,   406,   406,   406,   406,
1563 >     407,   408,   409,   410,   411,   413,   412,   415,   414,   416,
1564 >     416,   417,   418,   418,   419,   419,   419,   419,   420,   421,
1565 >     423,   422,   424,   424,   425,   425,   425,   426,   427,   428,
1566 >     429,   429,   430,   430,   431,   433,   432,   435,   434,   436,
1567 >     436,   437,   438,   438,   439,   439,   439,   439,   440,   441,
1568 >     442,   443,   443,   444,   444,   444,   444,   444,   444,   444,
1569 >     444,   444,   444,   444,   444,   444,   444,   444,   444,   444,
1570 >     444,   444,   444,   444,   444,   444,   444,   444,   444,   444,
1571 >     444,   444,   444,   444,   444,   444,   444,   444,   444,   444,
1572 >     444,   444,   444,   444,   444,   444,   444,   444,   444,   444,
1573 >     444,   444,   444,   444,   444,   444,   444,   444,   445,   446,
1574 >     447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
1575 >     457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
1576 >     467,   468,   469,   470,   471,   472,   473,   474,   474,   475,
1577 >     475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
1578 >     485,   486,   487,   488,   489,   490,   491,   492,   494,   493,
1579 >     495,   495,   496,   496,   496,   496,   496,   496,   496,   496,
1580 >     496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
1581 >     496,   496,   498,   497,   499,   499,   500,   500,   500,   500,
1582 >     500,   500,   500,   500,   500,   500,   500,   500,   500,   500,
1583 >     500,   500,   500,   500,   500,   500,   501,   502,   503,   504,
1584 >     505,   506,   506,   507,   507,   507,   507,   507,   507,   507,
1585 >     507,   507,   507,   507,   507,   507,   507,   507,   508,   509,
1586 >     510,   511,   512,   513,   514,   515,   516,   517,   518,   519,
1587 >     520,   521,   522,   523,   523,   524,   524,   524,   524,   524,
1588 >     524,   524,   525,   526,   527,   528,   529,   530
1589   };
1590  
1591   /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 1609 | Line 1593 | static const yytype_uint8 yyr2[] =
1593   {
1594         0,     2,     0,     2,     1,     1,     1,     1,     1,     1,
1595         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1596 <       1,     1,     1,     1,     1,     2,     2,     0,     1,     2,
1597 <       3,     3,     3,     3,     3,     0,     1,     2,     3,     3,
1598 <       3,     5,     2,     1,     1,     1,     2,     4,     4,     5,
1599 <       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1600 <       1,     1,     1,     1,     2,     0,     5,     3,     1,     1,
1601 <       1,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1602 <       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1603 <       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1604 <       4,     0,     6,     2,     1,     1,     1,     1,     2,     4,
1605 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1606 <       1,     1,     1,     0,     6,     2,     1,     1,     1,     1,
1607 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1608 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1596 >       1,     1,     1,     1,     2,     2,     0,     1,     2,     3,
1597 >       3,     3,     3,     3,     0,     1,     2,     3,     3,     3,
1598 >       5,     2,     1,     1,     1,     2,     4,     4,     5,     2,
1599 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1600 >       1,     1,     1,     1,     1,     1,     2,     4,     4,     3,
1601 >       1,     1,     1,     3,     1,     1,     1,     4,     4,     4,
1602 >       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1603 >       5,     2,     1,     1,     1,     1,     2,     4,     4,     4,
1604 >       5,     2,     1,     1,     1,     2,     4,     0,     6,     2,
1605 >       1,     1,     1,     1,     2,     4,     4,     4,     0,     5,
1606 >       3,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1607 >       6,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1608 >       1,     2,     4,     4,     4,     4,     4,     4,     0,     5,
1609 >       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1610 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1611 >       1,     1,     0,     5,     3,     1,     1,     1,     1,     1,
1612         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1613 <       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1613 >       1,     1,     1,     1,     1,     0,     6,     2,     1,     1,
1614         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1615 <       1,     1,     1,     1,     1,     1,     1,     1,     0,     6,
1616 <       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1617 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1618 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     0,
1619 <       6,     0,     5,     3,     1,     1,     1,     1,     2,     1,
1620 <       1,     1,     1,     1,     2,     0,     5,     3,     1,     1,
1621 <       3,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1622 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1615 >       1,     1,     2,     4,     4,     4,     4,     4,     4,     4,
1616 >       4,     4,     4,     4,     4,     4,     0,     6,     0,     5,
1617 >       3,     1,     1,     1,     1,     2,     1,     1,     1,     1,
1618 >       1,     2,     0,     5,     3,     1,     1,     3,     4,     4,
1619 >       0,     6,     2,     1,     1,     1,     1,     1,     1,     1,
1620 >       1,     1,     2,     4,     4,     4,     4,     0,     5,     3,
1621 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1622 >       4,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1623 >       2,     4,     4,     4,     5,     2,     1,     1,     1,     4,
1624 >       0,     6,     2,     1,     1,     1,     1,     2,     4,     4,
1625         0,     5,     3,     1,     1,     1,     1,     1,     1,     1,
1626 <       1,     1,     1,     4,     4,     4,     0,     6,     2,     1,
1627 <       1,     1,     1,     2,     4,     4,     4,     5,     2,     1,
1628 <       1,     1,     4,     0,     6,     2,     1,     1,     1,     1,
1629 <       2,     4,     4,     0,     5,     3,     1,     1,     1,     1,
1630 <       1,     1,     1,     1,     1,     1,     1,     0,     6,     2,
1631 <       1,     1,     1,     2,     4,     0,     5,     3,     1,     1,
1632 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1644 <       6,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1645 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1646 <       4,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1647 <       1,     4,     4,     4,     4,     0,     6,     0,     5,     3,
1626 >       1,     1,     1,     1,     0,     6,     2,     1,     1,     1,
1627 >       2,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1628 >       1,     1,     1,     1,     1,     1,     0,     6,     2,     1,
1629 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1630 >       1,     1,     1,     2,     4,     4,     4,     4,     4,     4,
1631 >       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1632 >       4,     4,     4,     4,     4,     0,     6,     0,     5,     3,
1633         1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1634         0,     6,     2,     1,     1,     1,     1,     4,     4,     5,
1635         2,     1,     1,     1,     4,     0,     6,     0,     5,     3,
# Line 1654 | Line 1639 | static const yytype_uint8 yyr2[] =
1639         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1640         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1641         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1642 <       1,     1,     1,     1,     1,     4,     4,     4,     4,     4,
1642 >       1,     1,     1,     1,     1,     1,     1,     1,     4,     4,
1643         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1644         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1645         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1646         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1647 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1647 >       4,     4,     4,     4,     4,     4,     4,     4,     0,     5,
1648 >       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1649         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1650 <       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1650 >       1,     1,     0,     5,     3,     1,     1,     1,     1,     1,
1651         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1652 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1653 <       4,     4,     4,     4,     0,     6,     2,     1,     1,     1,
1654 <       1,     1,     1,     1,     1,     4,     4,     0,     5,     3,
1669 <       1,     1,     1,     4,     4,     0,     5,     3,     1,     1,
1670 <       1,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1671 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1672 <       1,     1,     1,     4,     4,     4,     4,     4,     4,     4,
1652 >       1,     1,     1,     1,     1,     1,     4,     4,     4,     4,
1653 >       5,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1654 >       1,     1,     1,     1,     1,     1,     1,     1,     4,     4,
1655         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1656 <       4,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1657 <       1,     1,     4,     4,     4,     4,     4,     4,     4
1656 >       4,     4,     5,     2,     1,     1,     1,     1,     1,     1,
1657 >       1,     1,     4,     4,     4,     4,     4,     4
1658   };
1659  
1660   /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
# Line 1680 | Line 1662 | static const yytype_uint8 yyr2[] =
1662     means the default is an error.  */
1663   static const yytype_uint16 yydefact[] =
1664   {
1665 <       2,     0,     1,     0,     0,     0,   188,   339,   390,     0,
1666 <     405,     0,   574,   243,   375,   219,     0,     0,   123,   276,
1667 <       0,     0,   293,   317,     0,     3,    24,    11,     4,     5,
1668 <       6,     8,     9,    10,    13,    14,    15,    16,    17,    18,
1669 <      19,    20,    23,    21,    22,     7,    12,    25,    26,     0,
1688 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1665 >       2,     0,     1,     0,     0,     0,   195,   346,   400,     0,
1666 >     415,     0,   250,   385,   226,     0,     0,   129,   283,     0,
1667 >       0,   300,   324,     0,     3,    23,    11,     4,     5,     6,
1668 >       8,     9,    10,    13,    14,    15,    16,    17,    18,    19,
1669 >      20,    22,    21,     7,    12,    24,    25,     0,     0,     0,
1670         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1690       0,     0,     0,     0,     0,    84,    85,    87,    86,   622,
1671         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1672 <       0,     0,     0,     0,     0,     0,     0,     0,     0,   603,
1693 <     621,   616,   604,   605,   606,   607,   609,   610,   611,   612,
1694 <     608,   613,   614,   615,   617,   618,   619,   620,     0,     0,
1695 <       0,   403,     0,     0,   401,   402,     0,   474,     0,     0,
1672 >       0,     0,    92,    93,    95,    94,   607,     0,     0,     0,
1673         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1674 +       0,     0,   592,   606,   602,   594,   595,   596,   597,   598,
1675 +     593,   599,   600,   601,   603,   604,   605,     0,     0,     0,
1676 +     413,     0,     0,   411,   412,     0,   487,     0,     0,     0,
1677         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1698       0,     0,     0,     0,     0,     0,   546,     0,   522,     0,
1678         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1679 +       0,     0,     0,     0,     0,     0,     0,     0,   562,     0,
1680 +     538,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1681         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1682 <     422,   472,   467,   468,   469,   470,   466,   433,   423,   424,
1683 <     460,   425,   426,   427,   428,   429,   430,   431,   432,   463,
1684 <     434,   435,   436,   437,   471,   439,   444,   440,   442,   441,
1685 <     455,   456,   443,   445,   446,   447,   448,   449,   438,   451,
1686 <     452,   453,   473,   464,   465,   462,   454,   450,   458,   459,
1687 <     457,   461,     0,     0,     0,     0,     0,     0,     0,     0,
1688 <      94,    95,    96,    97,     0,     0,     0,     0,     0,    43,
1689 <      44,    45,     0,     0,   651,     0,     0,     0,     0,     0,
1690 <       0,     0,     0,   643,   644,   645,   649,   646,   648,   647,
1691 <     650,     0,     0,     0,     0,     0,     0,     0,     0,    65,
1692 <       0,     0,     0,     0,     0,    51,    63,    62,    59,    52,
1693 <      61,    55,    56,    57,    53,    60,    58,    54,     0,     0,
1694 <     291,     0,     0,   289,   290,    88,     0,     0,     0,     0,
1695 <      83,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1682 >       0,     0,   432,   485,   477,   478,   479,   480,   481,   482,
1683 >     483,   476,   443,   433,   434,   470,   435,   436,   437,   438,
1684 >     439,   440,   441,   442,   473,   444,   445,   446,   447,   484,
1685 >     449,   454,   450,   452,   451,   465,   466,   453,   455,   456,
1686 >     457,   458,   459,   448,   461,   462,   463,   486,   474,   475,
1687 >     472,   464,   460,   468,   469,   467,   471,     0,     0,     0,
1688 >       0,     0,     0,   102,   103,   104,     0,     0,     0,     0,
1689 >       0,    42,    43,    44,     0,     0,   631,     0,     0,     0,
1690 >       0,     0,     0,     0,   624,   625,   626,   629,   627,   628,
1691 >     630,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1692 >       0,     0,     0,     0,     0,     0,     0,     0,    50,    63,
1693 >      64,    62,    59,    58,    65,    51,    61,    54,    55,    56,
1694 >      52,    60,    57,    53,     0,     0,   298,     0,     0,   296,
1695 >     297,    96,     0,     0,     0,     0,    91,     0,     0,     0,
1696         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1697 <     602,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1698 <       0,     0,     0,     0,     0,     0,   191,   192,   195,   196,
1699 <     198,   199,   200,   201,   202,   203,   204,   193,   194,   197,
1700 <       0,     0,     0,     0,     0,   364,     0,     0,     0,     0,
1701 <       0,     0,     0,     0,   342,   343,   344,   345,   346,   347,
1702 <     349,   348,   350,   354,   351,   352,   353,   396,     0,     0,
1703 <       0,   393,   394,   395,     0,     0,   400,   417,     0,     0,
1704 <     407,   416,     0,   413,   414,   415,     0,     0,     0,     0,
1697 >       0,     0,   591,     0,     0,     0,     0,     0,     0,     0,
1698 >       0,     0,     0,     0,     0,     0,     0,     0,   198,   199,
1699 >     202,   203,   205,   206,   207,   208,   209,   210,   211,   200,
1700 >     201,   204,     0,     0,     0,     0,     0,   372,     0,     0,
1701 >       0,     0,     0,     0,     0,     0,     0,   349,   350,   351,
1702 >     352,   353,   354,   356,   355,   358,   362,   359,   360,   361,
1703 >     357,   406,     0,     0,     0,   403,   404,   405,     0,     0,
1704 >     410,   427,     0,     0,   417,   426,     0,   423,   424,   425,
1705         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1706         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1707         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1708         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1728       0,     0,     0,     0,     0,     0,     0,     0,   421,   584,
1729     595,     0,     0,   587,     0,     0,     0,   577,   578,   579,
1730     580,   581,   582,   583,     0,     0,     0,   260,     0,     0,
1731       0,     0,     0,     0,   246,   247,   248,   249,   254,   250,
1732     251,   252,   253,   387,     0,   377,     0,   386,     0,   383,
1733     384,   385,     0,   221,     0,     0,     0,   231,     0,   229,
1734     230,   232,   233,    98,     0,     0,     0,    93,     0,    46,
1735       0,     0,     0,    42,     0,     0,     0,   166,     0,     0,
1736       0,   142,     0,     0,   126,   127,   128,   129,   132,   133,
1737     131,   130,   134,     0,     0,     0,     0,     0,   279,   280,
1738     281,   282,     0,     0,     0,     0,     0,     0,     0,     0,
1739     642,    64,     0,     0,     0,     0,     0,     0,     0,     0,
1740       0,     0,     0,     0,     0,    50,     0,     0,   303,     0,
1741       0,   296,   297,   298,   299,     0,     0,   325,     0,   320,
1742     321,   322,     0,     0,   288,     0,     0,     0,    82,     0,
1743       0,     0,     0,     0,    27,     0,     0,     0,     0,     0,
1744       0,     0,     0,     0,     0,     0,     0,     0,   601,   205,
1709         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1710 <       0,     0,     0,     0,   190,   355,     0,     0,     0,     0,
1711 <       0,     0,     0,     0,     0,     0,     0,     0,     0,   341,
1712 <       0,     0,     0,   392,     0,   399,     0,     0,     0,     0,
1713 <     412,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1710 >       0,     0,     0,     0,     0,   431,     0,     0,     0,   267,
1711 >       0,     0,     0,     0,     0,     0,   253,   254,   255,   256,
1712 >     261,   257,   258,   259,   260,   397,     0,   387,     0,   396,
1713 >       0,   393,   394,   395,     0,   228,     0,     0,     0,   238,
1714 >       0,   236,   237,   239,   240,   105,     0,     0,   101,     0,
1715 >      45,     0,     0,     0,    41,     0,     0,     0,   172,     0,
1716 >       0,     0,   148,     0,     0,   132,   133,   134,   135,   138,
1717 >     139,   137,   136,   140,     0,     0,     0,     0,     0,   286,
1718 >     287,   288,   289,     0,     0,     0,     0,     0,     0,     0,
1719 >     623,    66,     0,     0,     0,     0,     0,     0,     0,     0,
1720 >       0,     0,     0,     0,     0,     0,     0,     0,    49,     0,
1721 >       0,   310,     0,     0,   303,   304,   305,   306,     0,     0,
1722 >     332,     0,   327,   328,   329,     0,     0,   295,     0,     0,
1723 >       0,    90,     0,     0,     0,    26,     0,     0,     0,     0,
1724 >       0,     0,     0,     0,     0,     0,     0,   590,   212,     0,
1725         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1726 +       0,     0,     0,   197,   363,     0,     0,     0,     0,     0,
1727 +       0,     0,     0,     0,     0,     0,     0,     0,     0,   348,
1728 +       0,     0,     0,   402,     0,   409,     0,     0,     0,     0,
1729 +     422,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1730         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1731         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1753       0,     0,     0,     0,     0,     0,     0,    35,     0,     0,
1754       0,     0,     0,     0,     0,   420,     0,     0,     0,     0,
1755       0,     0,     0,   576,   255,     0,     0,     0,     0,     0,
1756       0,     0,     0,     0,   245,     0,     0,     0,     0,   382,
1757     234,     0,     0,     0,     0,     0,   228,     0,     0,    92,
1758       0,     0,     0,    41,   135,     0,     0,     0,     0,     0,
1759       0,     0,     0,     0,   125,   283,     0,     0,     0,     0,
1760     278,     0,     0,     0,     0,     0,     0,     0,   641,     0,
1732         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1762       0,    49,   300,     0,     0,     0,     0,   295,   323,     0,
1763       0,     0,   319,     0,   287,    91,    90,    89,   638,   635,
1764     634,   623,   625,    27,    27,    27,    27,    27,    29,    28,
1765     629,   630,   633,   631,   636,   637,   639,   640,   632,   624,
1766     626,   627,   628,     0,     0,     0,     0,     0,     0,     0,
1767       0,     0,     0,     0,     0,     0,   189,     0,     0,     0,
1733         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1734 <     340,     0,     0,   391,   404,     0,     0,     0,   406,   486,
1735 <     490,   506,   572,   520,   484,   514,   517,   485,   476,   477,
1736 <     493,   482,   483,   496,   481,   495,   494,   489,   488,   487,
1737 <     515,   475,   513,   570,   571,   510,   507,   557,   550,   567,
1738 <     568,   551,   552,   553,   554,   562,   555,   565,   569,   558,
1739 <     563,   559,   564,   556,   561,   560,   566,     0,   549,   512,
1740 <     532,   526,   543,   544,   527,   528,   529,   530,   538,   531,
1741 <     541,   545,   534,   539,   535,   540,   533,   537,   536,   542,
1742 <       0,   525,   505,   508,   519,   479,   480,   509,   498,   503,
1743 <     504,   501,   502,   499,   500,   492,   491,    35,    35,    35,
1744 <      37,    36,   573,   518,   521,   511,   516,   478,   497,     0,
1745 <       0,     0,     0,     0,     0,   575,     0,     0,     0,     0,
1746 <       0,     0,     0,     0,   244,     0,     0,     0,   376,     0,
1747 <       0,     0,   239,   235,   238,   220,   100,    99,     0,     0,
1748 <     112,     0,     0,   104,   105,   107,   106,    47,    48,     0,
1749 <       0,     0,     0,     0,     0,     0,     0,   124,     0,     0,
1750 <       0,   277,   657,   652,   656,   654,   658,   653,   655,    75,
1751 <      81,    73,    77,    76,    72,    71,    69,    70,     0,    68,
1752 <      74,    80,    78,    79,     0,     0,     0,   294,     0,     0,
1753 <     318,   292,    30,    31,    32,    33,    34,   216,   217,   210,
1754 <     212,   214,   213,   211,   206,   218,   209,   207,   208,   215,
1755 <     360,   362,   363,   374,   371,   368,   369,   370,     0,   367,
1756 <     357,   372,   373,   356,   361,   359,   358,   397,   398,   418,
1757 <     419,   411,     0,   410,   547,     0,   523,     0,    38,    39,
1758 <      40,   600,   599,     0,   598,   586,   585,   592,   591,     0,
1759 <     590,   594,   593,   258,   259,   268,   265,   270,   267,   266,
1760 <     272,   269,   271,   264,     0,   263,   257,   275,   274,   273,
1761 <     256,   389,   381,     0,   380,   388,   226,   227,   225,     0,
1762 <     224,   242,   241,     0,     0,     0,   108,     0,     0,     0,
1763 <       0,   103,   141,   139,   181,   178,   177,   170,   172,   187,
1764 <     182,   185,   180,   171,   186,   174,   183,   175,   184,   179,
1765 <     173,   176,     0,   169,   136,   138,   140,   152,   146,   163,
1766 <     164,   147,   148,   149,   150,   158,   151,   161,   165,   154,
1767 <     159,   155,   160,   153,   157,   156,   162,     0,   145,   137,
1768 <     285,   286,   284,    66,     0,   301,   307,   313,   316,   309,
1769 <     315,   310,   314,   312,   308,   311,     0,   306,   302,   324,
1770 <     329,   335,   338,   331,   337,   332,   336,   334,   330,   333,
1771 <       0,   328,   365,     0,   408,     0,   548,   524,   596,     0,
1772 <     588,     0,   261,     0,   378,     0,   222,     0,   240,   237,
1773 <     236,     0,     0,     0,     0,   102,   167,     0,   143,     0,
1774 <      67,   304,     0,   326,     0,   366,   409,   597,   589,   262,
1775 <     379,   223,   109,   118,   121,   120,   117,   122,   119,   116,
1776 <       0,   115,   111,   110,   168,   144,   305,   327,   113,     0,
1777 <     114
1734 >      34,     0,     0,     0,     0,     0,     0,     0,   430,   262,
1735 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   252,
1736 >       0,     0,     0,     0,   392,   241,     0,     0,     0,     0,
1737 >       0,   235,     0,   100,     0,     0,     0,    40,   141,     0,
1738 >       0,     0,     0,     0,     0,     0,     0,     0,   131,   290,
1739 >       0,     0,     0,     0,   285,     0,     0,     0,     0,     0,
1740 >       0,   622,     0,     0,     0,     0,     0,     0,     0,     0,
1741 >      71,    72,     0,    70,    75,    76,     0,    74,     0,     0,
1742 >       0,     0,     0,    48,   307,     0,     0,     0,     0,   302,
1743 >     330,     0,     0,     0,   326,     0,   294,    99,    98,    97,
1744 >     617,   616,   608,    26,    26,    26,    26,    26,    28,    27,
1745 >     610,   611,   615,   613,   612,   618,   619,   620,   621,   614,
1746 >     609,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1747 >       0,     0,     0,     0,   196,     0,     0,     0,     0,     0,
1748 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   347,
1749 >       0,     0,   401,   414,     0,     0,     0,   416,   502,   506,
1750 >     522,   588,   536,   500,   530,   533,   501,   490,   489,   491,
1751 >     492,   493,   509,   498,   499,   512,   497,   511,   510,   505,
1752 >     504,   503,   531,   488,   529,   586,   587,   526,   523,   573,
1753 >     566,   583,   584,   567,   568,   569,   570,   578,   571,   581,
1754 >     585,   574,   579,   575,   580,   572,   577,   576,   582,     0,
1755 >     565,   528,   548,   542,   559,   560,   543,   544,   545,   546,
1756 >     554,   547,   557,   561,   550,   555,   551,   556,   549,   553,
1757 >     552,   558,     0,   541,   521,   524,   535,   495,   496,   525,
1758 >     514,   519,   520,   517,   518,   515,   516,   508,   507,    34,
1759 >      34,    34,    36,    35,   589,   534,   537,   527,   532,   494,
1760 >     513,     0,     0,     0,     0,     0,     0,     0,     0,   251,
1761 >       0,     0,     0,   386,     0,     0,     0,   246,   242,   245,
1762 >     227,   106,     0,     0,   118,     0,     0,   110,   111,   113,
1763 >     112,    46,    47,     0,     0,     0,     0,     0,     0,     0,
1764 >       0,   130,     0,     0,     0,   284,   632,   636,   634,   637,
1765 >     633,   635,    83,    89,    81,    85,    84,    78,    77,    79,
1766 >      67,     0,    68,     0,    82,    80,    88,    86,    87,     0,
1767 >       0,     0,   301,     0,     0,   325,   299,    29,    30,    31,
1768 >      32,    33,   223,   224,   217,   219,   221,   220,   218,   213,
1769 >     225,   216,   214,   215,   222,   368,   370,   371,   383,   380,
1770 >     376,   377,   379,   378,     0,   375,   365,   381,   382,   364,
1771 >     369,   367,   384,   366,   407,   408,   428,   429,   421,     0,
1772 >     420,   563,     0,   539,     0,    37,    38,    39,   265,   266,
1773 >     275,   272,   277,   274,   273,   279,   276,   278,   271,     0,
1774 >     270,   264,   282,   281,   280,   263,   399,   391,     0,   390,
1775 >     398,   233,   234,   232,     0,   231,   249,   248,     0,     0,
1776 >       0,   114,     0,     0,     0,     0,   109,   147,   145,   187,
1777 >     184,   183,   176,   178,   194,   188,   191,   186,   177,   192,
1778 >     180,   189,   193,   181,   190,   185,   179,   182,     0,   175,
1779 >     142,   144,   146,   158,   152,   169,   170,   153,   154,   155,
1780 >     156,   164,   157,   167,   171,   160,   165,   161,   166,   159,
1781 >     163,   162,   168,     0,   151,   143,   292,   293,   291,    69,
1782 >      73,   308,   314,   320,   323,   316,   322,   317,   321,   319,
1783 >     315,   318,     0,   313,   309,   331,   336,   342,   345,   338,
1784 >     344,   339,   343,   341,   337,   340,     0,   335,   373,     0,
1785 >     418,     0,   564,   540,   268,     0,   388,     0,   229,     0,
1786 >     247,   244,   243,     0,     0,     0,     0,   108,   173,     0,
1787 >     149,     0,   311,     0,   333,     0,   374,   419,   269,   389,
1788 >     230,   115,   124,   127,   126,   123,   128,   125,   122,     0,
1789 >     121,   117,   116,   174,   150,   312,   334,   119,     0,   120
1790   };
1791  
1792   /* YYDEFGOTO[NTERM-NUM].  */
1793   static const yytype_int16 yydefgoto[] =
1794   {
1795 <      -1,     1,    25,   818,   819,   960,   961,    26,   248,   249,
1796 <     250,   251,    27,   284,   285,   286,   569,  1038,  1039,   287,
1797 <     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1798 <      28,    74,    75,    76,    77,    78,    29,   239,   240,   241,
1799 <     242,   243,   244,  1002,  1003,  1004,  1005,  1006,  1148,  1280,
1800 <    1281,    30,    63,   533,   534,   535,   536,   537,   538,   539,
1801 <     540,   541,   761,  1197,  1198,   542,   757,  1172,  1173,    31,
1802 <      51,   345,   346,   347,   348,   349,   350,   351,   352,   353,
1803 <     354,   355,   356,   357,   358,   359,    32,    60,   507,   741,
1804 <    1139,  1140,   508,   509,   510,  1145,   993,   994,   511,   512,
1805 <      33,    58,   483,   484,   485,   486,   487,   488,   489,   727,
1806 <    1124,  1125,   490,   491,   492,    34,    64,   547,   548,   549,
1807 <     550,   551,    35,   302,   303,   304,    36,    67,   580,   581,
1808 <     582,   583,   584,   794,  1216,  1217,    37,    68,   588,   589,
1809 <     590,   591,   800,  1230,  1231,    38,    52,   373,   374,   375,
1810 <     376,   377,   378,   379,   380,   381,   382,   640,  1078,  1079,
1811 <     383,   384,   385,   386,    39,    59,   497,   736,  1133,  1134,
1812 <     498,   499,   500,   501,    40,    53,   390,   391,   392,   393,
1813 <      41,   123,   124,   125,    42,    55,   401,   658,  1092,  1093,
1814 <     402,   403,   404,   405,    43,   179,   180,   181,   182,   183,
1815 <     184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1816 <     194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1817 <     204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1818 <     214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
1819 <     224,   225,   226,   436,   940,   941,   227,   434,   917,   918,
1820 <     228,   229,   230,   231,    44,    57,   466,   467,   468,   469,
1821 <     470,   719,  1109,  1110,   471,   472,   473,   716,  1103,  1104,
1822 <      45,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1823 <     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1847 <     117,    46,   262,   263,   264,   265,   266,   267,   268,   269,
1848 <     270
1795 >      -1,     1,    24,   798,   799,   942,   943,    25,   240,   241,
1796 >     242,   243,    26,   277,   278,   279,   280,   762,   763,   766,
1797 >     767,   281,   282,   283,   284,   285,   286,   287,   288,   289,
1798 >     290,   291,   292,   293,    27,    71,    72,    73,    74,    75,
1799 >      28,   232,   233,   234,   235,   236,   976,   977,   978,   979,
1800 >     980,  1113,  1239,  1240,    29,    60,   514,   515,   516,   517,
1801 >     518,   519,   520,   521,   522,   735,  1163,  1164,   523,   731,
1802 >    1138,  1139,    30,    49,   337,   338,   339,   340,   341,   342,
1803 >     343,   344,   345,   346,   347,   348,   349,   350,   351,    31,
1804 >      57,   489,   716,  1104,  1105,   490,   491,   492,  1110,   968,
1805 >     969,   493,   494,    32,    55,   465,   466,   467,   468,   469,
1806 >     470,   471,   702,  1089,  1090,   472,   473,   474,    33,    61,
1807 >     528,   529,   530,   531,   532,    34,   298,   299,   300,    35,
1808 >      64,   563,   564,   565,   566,   567,   776,  1182,  1183,    36,
1809 >      65,   571,   572,   573,   574,   782,  1196,  1197,    37,    50,
1810 >     366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
1811 >     619,  1054,  1055,   376,   377,   378,   379,   380,    38,    56,
1812 >     479,   711,  1098,  1099,   480,   481,   482,   483,    39,    51,
1813 >     384,   385,   386,   387,    40,   112,   113,   114,    41,    53,
1814 >     395,   638,  1069,  1070,   396,   397,   398,   399,    42,   171,
1815 >     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
1816 >     182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
1817 >     192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
1818 >     202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
1819 >     212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
1820 >     433,   922,   923,   222,   431,   899,   900,   223,   224,   225,
1821 >     226,    43,    91,    92,    93,    94,    95,    96,    97,    98,
1822 >      99,   100,   101,   102,   103,   104,   105,   106,    44,   253,
1823 >     254,   255,   256,   257,   258,   259,   260
1824   };
1825  
1826   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1827     STATE-NUM.  */
1828 < #define YYPACT_NINF -772
1828 > #define YYPACT_NINF -599
1829   static const yytype_int16 yypact[] =
1830   {
1831 <    -772,   691,  -772,  -190,  -234,  -231,  -772,  -772,  -772,  -225,
1832 <    -772,  -215,  -772,  -772,  -772,  -772,  -207,  -205,  -772,  -772,
1833 <    -202,  -194,  -772,  -772,  -174,  -772,  -772,  -772,  -772,  -772,
1834 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1835 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   273,
1836 <     541,  -171,  -168,  -155,    14,  -146,   367,  -143,  -141,  -134,
1837 <    -131,     3,    41,  -128,  -112,   499,   326,  -109,   -98,    20,
1838 <    -115,   -90,   -87,   -81,     4,  -772,  -772,  -772,  -772,  -772,
1839 <     -71,   -68,   -48,   -45,   -24,   -15,    21,    23,    49,    54,
1840 <      57,    63,    77,    87,    88,    90,    98,    99,   274,  -772,
1841 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1842 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   696,   449,
1843 <      47,  -772,   109,    32,  -772,  -772,   192,  -772,   112,   119,
1844 <     122,   130,   135,   146,   156,   161,   167,   168,   169,   177,
1845 <     183,   188,   196,   197,   199,   200,   203,   207,   211,   214,
1846 <     225,   232,   234,   236,   237,   238,  -772,   240,  -772,   246,
1847 <     253,   255,   256,   257,   262,   264,   265,   278,   279,   280,
1848 <     283,   284,   288,   289,   293,   301,   306,   309,   310,   108,
1849 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1850 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1851 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1852 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1853 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1854 <    -772,  -772,   316,   299,    58,   388,    45,   313,   314,    71,
1855 <    -772,  -772,  -772,  -772,    75,    82,   315,   322,    53,  -772,
1856 <    -772,  -772,   446,   344,  -772,   323,   324,   325,   330,   331,
1857 <     334,   336,    18,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1858 <    -772,   151,   340,   342,   346,   347,   349,   354,   357,  -772,
1859 <     359,   360,   362,   363,   152,  -772,  -772,  -772,  -772,  -772,
1860 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,    12,    70,
1861 <    -772,   365,    28,  -772,  -772,  -772,   128,   385,   437,   181,
1862 <    -772,    76,   487,   490,   412,   434,   500,   500,   501,   502,
1863 <     435,   440,   507,   500,   444,   447,   448,   450,   454,   384,
1864 <    -772,   390,   389,   391,   393,   394,   395,   396,   397,   398,
1865 <     400,   401,   402,   403,   404,     2,  -772,  -772,  -772,  -772,
1866 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1867 <     410,   409,   415,   416,   417,  -772,   418,   419,   422,   424,
1868 <     426,   428,   430,     8,  -772,  -772,  -772,  -772,  -772,  -772,
1869 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   436,   438,
1870 <      16,  -772,  -772,  -772,   523,   455,  -772,  -772,   443,   451,
1871 <    -772,  -772,    26,  -772,  -772,  -772,   456,   500,   500,   522,
1872 <     503,   512,   566,   556,   521,   591,   592,   593,   530,   532,
1873 <     534,   500,   578,   537,   603,   607,   500,   610,   613,   594,
1874 <     614,   617,   558,   559,   488,   560,   495,   500,   500,   564,
1875 <     500,   570,   571,   572,  -117,   -91,   573,   574,   500,   500,
1876 <     640,   620,   500,   579,   580,   581,   582,   519,  -772,  -772,
1877 <    -772,   515,   517,  -772,   524,   525,    36,  -772,  -772,  -772,
1878 <    -772,  -772,  -772,  -772,   526,   529,   533,  -772,   535,   536,
1879 <     539,   540,   544,    22,  -772,  -772,  -772,  -772,  -772,  -772,
1880 <    -772,  -772,  -772,  -772,   545,  -772,   549,  -772,    11,  -772,
1881 <    -772,  -772,   553,  -772,   551,   552,   555,  -772,    30,  -772,
1882 <    -772,  -772,  -772,  -772,   586,   587,   561,  -772,   531,  -772,
1883 <     633,   645,   562,  -772,   563,   557,   565,  -772,   568,   569,
1884 <     575,  -772,   576,   206,  -772,  -772,  -772,  -772,  -772,  -772,
1885 <    -772,  -772,  -772,   577,   584,   585,   588,    17,  -772,  -772,
1886 <    -772,  -772,   605,   621,   629,   673,   631,   638,   500,   583,
1887 <    -772,  -772,   682,   641,   683,   688,   689,   690,   692,   589,
1888 <     697,   719,   702,   703,   596,  -772,   597,   590,  -772,   595,
1889 <      42,  -772,  -772,  -772,  -772,   599,   600,  -772,     5,  -772,
1890 <    -772,  -772,   708,   602,  -772,   604,   606,   608,  -772,   609,
1891 <     612,   624,   625,   632,   358,   636,   651,   652,   656,   657,
1892 <     659,   663,   668,   678,   679,   684,   686,   694,  -772,  -772,
1893 <     734,   736,   500,   750,   758,   759,   769,   749,   812,   819,
1894 <     500,   500,   640,   695,  -772,  -772,   805,    44,   806,   764,
1895 <     698,   808,   811,   813,   814,   833,   815,   816,   709,  -772,
1896 <     818,   820,   711,  -772,   713,  -772,   822,   823,   714,   716,
1897 <    -772,   718,   720,   721,   722,   723,   724,   725,   726,   727,
1898 <     729,   730,   731,   732,   733,   735,   737,   738,   739,   740,
1899 <     741,   742,   743,   744,   745,   746,   747,   748,   751,   674,
1900 <     752,   701,   753,   754,   755,   756,   757,   760,   761,   762,
1901 <     763,   765,   766,   767,   768,   770,   771,   355,   772,   773,
1902 <     774,   775,   776,   777,   778,  -772,   779,   500,   784,   780,
1903 <     836,   842,   781,  -772,  -772,   844,   824,   782,   857,   879,
1904 <     866,   872,   877,   786,  -772,   887,   785,   888,   787,  -772,
1905 <    -772,   788,   892,   897,   919,   792,  -772,   793,   794,  -772,
1906 <     171,   795,   796,  -772,  -772,   905,   863,   797,   907,   909,
1907 <     910,   800,   912,   807,  -772,  -772,   913,   914,   916,   809,
1908 <    -772,   810,   817,   821,   825,   826,   827,   828,  -772,   829,
1909 <     830,   831,   832,   834,   835,   837,   142,   838,   839,   840,
1910 <     841,  -772,  -772,   920,   843,   921,   845,  -772,  -772,   922,
1911 <     846,   847,  -772,   848,  -772,  -772,  -772,  -772,  -772,  -772,
1912 <    -772,  -772,  -772,   500,   500,   500,   500,   500,  -772,  -772,
1913 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1914 <    -772,  -772,  -772,   850,   851,   852,   853,   854,   855,   856,
1915 <     858,   859,   860,   861,   862,   864,  -772,   865,   867,   868,
1916 <     869,   870,    10,   871,   873,   874,   875,   876,   878,   880,
1917 <    -772,   881,   882,  -772,  -772,   883,   884,   918,  -772,  -772,
1918 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1919 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1920 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1921 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1922 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -187,  -772,  -772,
1923 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1924 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1925 <     -77,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1926 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,   640,   640,   640,
1927 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,    19,
1928 <     885,   886,    33,   889,   890,  -772,   891,   893,   630,   894,
1929 <     895,   896,   898,   899,  -772,   900,   923,   901,  -772,     7,
1930 <     902,   903,   904,   906,  -772,  -772,  -772,  -772,   908,   911,
1931 <    -772,   915,    96,  -772,  -772,  -772,  -772,  -772,  -772,   917,
1932 <     924,   476,   925,   926,   927,   728,   928,  -772,   929,   930,
1933 <     931,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1934 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   -29,  -772,
1935 <    -772,  -772,  -772,  -772,   932,   445,   933,  -772,   934,   518,
1936 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1937 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1938 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   -28,  -772,
1939 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1940 <    -772,  -772,   -26,  -772,  -772,   674,  -772,   701,  -772,  -772,
1941 <    -772,  -772,  -772,    79,  -772,  -772,  -772,  -772,  -772,   104,
1942 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1943 <    -772,  -772,  -772,  -772,   123,  -772,  -772,  -772,  -772,  -772,
1944 <    -772,  -772,  -772,   124,  -772,  -772,  -772,  -772,  -772,   139,
1945 <    -772,  -772,  -772,   940,   919,   935,  -772,   941,   936,   -69,
1946 <     937,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1947 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1948 <    -772,  -772,   140,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1949 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1950 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,   148,  -772,  -772,
1951 <    -772,  -772,  -772,  -772,   142,  -772,  -772,  -772,  -772,  -772,
1952 <    -772,  -772,  -772,  -772,  -772,  -772,   158,  -772,  -772,  -772,
1953 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1954 <     175,  -772,  -772,    10,  -772,   918,  -772,  -772,  -772,    19,
1955 <    -772,    33,  -772,   630,  -772,   923,  -772,     7,  -772,  -772,
1981 <    -772,   938,   149,   942,   943,  -772,  -772,   476,  -772,   728,
1982 <    -772,  -772,   445,  -772,   518,  -772,  -772,  -772,  -772,  -772,
1983 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1984 <     178,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   149,
1985 <    -772
1831 >    -599,   612,  -599,  -201,  -214,  -197,  -599,  -599,  -599,  -177,
1832 >    -599,  -171,  -599,  -599,  -599,  -163,  -160,  -599,  -599,  -158,
1833 >    -152,  -599,  -599,  -150,  -599,  -599,  -599,  -599,  -599,  -599,
1834 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1835 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,    42,   864,  -147,
1836 >    -137,  -130,     7,  -112,   378,  -103,   -76,   -56,    86,   233,
1837 >     -45,   -30,   322,   418,   -14,   -11,    22,  -190,  -186,   -32,
1838 >      -9,    10,  -599,  -599,  -599,  -599,  -599,    -3,    38,    53,
1839 >      57,    60,    62,    78,    91,    93,   102,   107,   108,   109,
1840 >     110,   204,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1841 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,   801,   503,    12,
1842 >    -599,   113,    18,  -599,  -599,    54,  -599,   114,   116,   119,
1843 >     123,   124,   127,   130,   131,   132,   134,   135,   138,   146,
1844 >     147,   149,   152,   156,   157,   159,   161,   163,   166,   167,
1845 >     172,   174,   175,   176,   178,   180,   181,   182,  -599,   184,
1846 >    -599,   187,   188,   192,   193,   194,   196,   199,   201,   203,
1847 >     207,   209,   213,   215,   216,   217,   218,   220,   222,   228,
1848 >     243,    98,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1849 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1850 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1851 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1852 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1853 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,   331,   197,    25,
1854 >      59,   245,    56,  -599,  -599,  -599,     8,   200,   248,   249,
1855 >      45,  -599,  -599,  -599,   367,    11,  -599,   255,   257,   261,
1856 >     265,   266,   268,     5,  -599,  -599,  -599,  -599,  -599,  -599,
1857 >    -599,   273,   271,   275,   280,   281,   282,   283,   285,   286,
1858 >     287,   288,   295,   296,   298,   300,   302,   160,  -599,  -599,
1859 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1860 >    -599,  -599,  -599,  -599,    20,    31,  -599,   304,    34,  -599,
1861 >    -599,  -599,   133,   183,   186,   276,  -599,   438,   444,   384,
1862 >     445,   445,   452,   459,   461,   396,   397,   464,   445,   399,
1863 >     400,   339,  -599,   345,   343,   344,   347,   348,   349,   350,
1864 >     351,   352,   354,   355,   358,   362,   363,   155,  -599,  -599,
1865 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1866 >    -599,  -599,   369,   368,   373,   374,   377,  -599,   382,   383,
1867 >     385,   386,   387,   388,   389,   392,    19,  -599,  -599,  -599,
1868 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1869 >    -599,  -599,   395,   398,    35,  -599,  -599,  -599,   456,   372,
1870 >    -599,  -599,   401,   403,  -599,  -599,    13,  -599,  -599,  -599,
1871 >     450,   445,   445,   511,   462,   463,   532,   515,   471,   445,
1872 >     472,   445,   539,   542,   543,   479,   480,   484,   445,   533,
1873 >     487,   555,   556,   445,   558,   560,   540,   562,   564,   500,
1874 >     501,   436,   504,   437,   445,   445,   505,   445,   508,   514,
1875 >     520,  -115,   -59,   521,   524,   445,   445,   572,   573,   445,
1876 >     527,   530,   531,   537,   447,  -599,   448,   466,   473,  -599,
1877 >     474,   477,   481,   486,   488,   212,  -599,  -599,  -599,  -599,
1878 >    -599,  -599,  -599,  -599,  -599,  -599,   489,  -599,   490,  -599,
1879 >      51,  -599,  -599,  -599,   475,  -599,   492,   494,   496,  -599,
1880 >       9,  -599,  -599,  -599,  -599,  -599,   550,   502,  -599,   498,
1881 >    -599,   598,   611,   507,  -599,   509,   512,   513,  -599,   516,
1882 >     517,   518,  -599,   519,   253,  -599,  -599,  -599,  -599,  -599,
1883 >    -599,  -599,  -599,  -599,   523,   522,   546,   548,    17,  -599,
1884 >    -599,  -599,  -599,   567,   569,   616,   574,   575,   445,   526,
1885 >    -599,  -599,   618,   576,   622,   625,   626,   635,   650,   651,
1886 >     -53,    33,   653,   662,   684,   674,   675,   571,  -599,   578,
1887 >     577,  -599,   583,   100,  -599,  -599,  -599,  -599,   588,   586,
1888 >    -599,    75,  -599,  -599,  -599,   680,   590,  -599,   593,   594,
1889 >     595,  -599,   601,   602,   606,   379,   610,   617,   619,   623,
1890 >     628,   629,   631,   632,   633,   634,   636,  -599,  -599,   703,
1891 >     740,   445,   742,   751,   754,   764,   746,   768,   769,   445,
1892 >     445,   572,   641,  -599,  -599,   750,     4,   753,   706,   643,
1893 >     755,   756,   763,   765,   785,   767,   771,   772,   661,  -599,
1894 >     773,   774,   667,  -599,   668,  -599,   777,   778,   669,   671,
1895 >    -599,   673,   676,   677,   678,   679,   681,   682,   683,   685,
1896 >     686,   688,   689,   692,   693,   694,   696,   697,   698,   699,
1897 >     700,   701,   704,   705,   707,   708,   712,   713,   714,   715,
1898 >     716,   717,   584,   718,   613,   719,   721,   722,   723,   724,
1899 >     725,   726,   727,   728,   729,   730,   733,   734,   735,   736,
1900 >       2,   737,   739,   741,   743,   744,   745,   748,  -599,  -599,
1901 >     788,   747,   749,   814,   869,   850,   857,   858,   758,  -599,
1902 >     859,   752,   861,   759,  -599,  -599,   757,   862,   870,   890,
1903 >     770,  -599,   775,  -599,     3,   776,   779,  -599,  -599,   871,
1904 >     827,   762,   875,   876,   877,   780,   879,   781,  -599,  -599,
1905 >     880,   881,   882,   782,  -599,   784,   786,   787,   789,   790,
1906 >     791,  -599,   792,   793,   794,   795,   796,   797,   798,   799,
1907 >    -599,  -599,  -236,  -599,  -599,  -599,  -215,  -599,   800,   802,
1908 >     803,   804,   805,  -599,  -599,   885,   806,   886,   807,  -599,
1909 >    -599,   888,   808,   810,  -599,   812,  -599,  -599,  -599,  -599,
1910 >    -599,  -599,  -599,   445,   445,   445,   445,   445,  -599,  -599,
1911 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1912 >    -599,   813,   815,   816,   817,   818,   819,   820,   821,   822,
1913 >     823,   824,   826,   828,  -599,   829,   830,   831,   832,   833,
1914 >     148,   834,   835,   836,   837,   838,   839,   840,   841,  -599,
1915 >     842,   843,  -599,  -599,   844,   845,   891,  -599,  -599,  -599,
1916 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1917 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1918 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1919 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1920 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -210,
1921 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1922 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1923 >    -599,  -599,  -209,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1924 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,   572,
1925 >     572,   572,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1926 >    -599,   846,   847,   825,   848,   849,   851,   852,   853,  -599,
1927 >     854,   904,   855,  -599,     0,   856,   860,   866,   863,  -599,
1928 >    -599,  -599,   865,   811,  -599,   867,    72,  -599,  -599,  -599,
1929 >    -599,  -599,  -599,   868,   872,   483,   873,   874,   878,   652,
1930 >     883,  -599,   884,   887,   889,  -599,  -599,  -599,  -599,  -599,
1931 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1932 >    -599,   -53,  -599,    33,  -599,  -599,  -599,  -599,  -599,   892,
1933 >     506,   893,  -599,   894,   510,  -599,  -599,  -599,  -599,  -599,
1934 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1935 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1936 >    -599,  -599,  -599,  -599,  -198,  -599,  -599,  -599,  -599,  -599,
1937 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -192,
1938 >    -599,  -599,   584,  -599,   613,  -599,  -599,  -599,  -599,  -599,
1939 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -185,
1940 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -168,  -599,
1941 >    -599,  -599,  -599,  -599,  -116,  -599,  -599,  -599,   914,   890,
1942 >     895,  -599,   933,   896,  -105,   897,  -599,  -599,  -599,  -599,
1943 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1944 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,   -80,  -599,
1945 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1946 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1947 >    -599,  -599,  -599,   -40,  -599,  -599,  -599,  -599,  -599,  -599,
1948 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1949 >    -599,  -599,   -31,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1950 >    -599,  -599,  -599,  -599,  -599,  -599,   -20,  -599,  -599,   148,
1951 >    -599,   891,  -599,  -599,  -599,   825,  -599,   904,  -599,     0,
1952 >    -599,  -599,  -599,   898,   291,   900,   901,  -599,  -599,   483,
1953 >    -599,   652,  -599,   506,  -599,   510,  -599,  -599,  -599,  -599,
1954 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,   -15,
1955 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,   291,  -599
1956   };
1957  
1958   /* YYPGOTO[NTERM-NUM].  */
1959   static const yytype_int16 yypgoto[] =
1960   {
1961 <    -772,  -772,  -772,  -753,  -315,  -771,  -450,  -772,  -772,   939,
1962 <    -772,  -772,  -772,  -772,   791,  -772,  -772,  -772,  -149,  -772,
1963 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1964 <    -772,  -772,   983,  -772,  -772,  -772,  -772,  -772,   944,  -772,
1965 <    -772,  -772,  -772,  -772,    56,  -772,  -772,  -772,  -772,  -772,
1966 <    -228,  -772,  -772,  -772,   548,  -772,  -772,  -772,  -772,  -772,
1967 <    -772,  -772,  -772,  -772,  -197,  -772,  -772,  -772,  -175,  -772,
1968 <    -772,  -772,   798,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1969 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1970 <    -772,  -184,  -772,   618,  -772,  -772,  -772,   -42,  -772,  -772,
1971 <    -772,  -772,  -772,   622,  -772,  -772,  -772,  -772,  -772,  -772,
1972 <    -772,  -147,  -772,  -772,  -772,  -772,  -772,  -772,   598,  -772,
1973 <    -772,  -772,  -772,  -772,   849,  -772,  -772,  -772,  -772,   538,
1974 <    -772,  -772,  -772,  -772,  -772,  -151,  -772,  -772,  -772,   528,
1975 <    -772,  -772,  -772,  -772,  -137,  -772,  -772,  -772,   789,  -772,
1976 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -102,
1977 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -101,
1978 <    -772,   648,  -772,  -772,  -772,  -772,  -772,   790,  -772,  -772,
1979 <    -772,  -772,  1013,  -772,  -772,  -772,  -772,  -772,  -772,   -85,
1980 <    -772,   783,  -772,  -772,  -772,  -772,   969,  -772,  -772,  -772,
1981 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1982 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1983 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1984 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1985 <    -772,  -772,  -772,  -772,  -772,    55,  -772,  -772,  -772,    59,
1986 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,   693,  -772,  -772,
1987 <    -772,  -772,  -772,   -86,  -772,  -772,  -772,  -772,  -772,   -79,
1988 <    -772,  -772,  1060,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1989 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2020 <    -772,  -772,  -772,   945,  -772,  -772,  -772,  -772,  -772,  -772,
2021 <    -772
1961 >    -599,  -599,  -599,  -317,  -309,  -598,  -447,  -599,  -599,   902,
1962 >    -599,  -599,  -599,  -599,   899,  -599,  -599,  -599,    55,  -599,
1963 >      32,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1964 >    -599,  -599,  -599,  -599,  -599,  -599,  1018,  -599,  -599,  -599,
1965 >    -599,  -599,   903,  -599,  -599,  -599,  -599,   120,  -599,  -599,
1966 >    -599,  -599,  -599,  -151,  -599,  -599,  -599,   587,  -599,  -599,
1967 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -123,  -599,  -599,
1968 >    -599,  -119,  -599,  -599,  -599,   766,  -599,  -599,  -599,  -599,
1969 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1970 >    -599,  -599,  -599,  -599,  -107,  -599,   615,  -599,  -599,  -599,
1971 >      -1,  -599,  -599,  -599,  -599,  -599,   645,  -599,  -599,  -599,
1972 >    -599,  -599,  -599,  -599,   -91,  -599,  -599,  -599,  -599,  -599,
1973 >    -599,   591,  -599,  -599,  -599,  -599,  -599,   905,  -599,  -599,
1974 >    -599,  -599,   552,  -599,  -599,  -599,  -599,  -599,  -102,  -599,
1975 >    -599,  -599,   545,  -599,  -599,  -599,  -599,  -101,  -599,  -599,
1976 >    -599,   761,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1977 >    -599,  -599,   -81,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1978 >    -599,  -599,  -599,   -87,  -599,   649,  -599,  -599,  -599,  -599,
1979 >    -599,   760,  -599,  -599,  -599,  -599,  1013,  -599,  -599,  -599,
1980 >    -599,  -599,  -599,   -71,  -599,   783,  -599,  -599,  -599,  -599,
1981 >     970,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1982 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1983 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1984 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1985 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1986 >    -599,  -599,    69,  -599,  -599,  -599,    73,  -599,  -599,  -599,
1987 >    -599,  -599,  -599,  1055,  -599,  -599,  -599,  -599,  -599,  -599,
1988 >    -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,  -599,
1989 >     906,  -599,  -599,  -599,  -599,  -599,  -599
1990   };
1991  
1992   /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
1993     positive, shift that token.  If negative, reduce the rule which
1994     number is the opposite.  If YYTABLE_NINF, syntax error.  */
1995 < #define YYTABLE_NINF -102
1995 > #define YYTABLE_NINF -108
1996   static const yytype_int16 yytable[] =
1997   {
1998 <     708,   605,   606,   331,   236,    70,   585,    49,   612,   360,
1999 <      50,   361,   493,   576,   362,   121,    54,   387,   543,   254,
2000 <    1075,   300,  1076,   474,   332,   333,    56,   397,   334,   300,
2001 <    1101,   502,   363,   121,    61,    71,    62,   459,   544,    65,
2002 <     460,   707,   245,   576,  1107,    72,   475,    66,   387,    47,
2003 <      48,   364,  1094,   255,   245,   365,  1095,   699,   700,   493,
2004 <    1052,  1053,  1054,  1055,  1056,   476,   256,    69,  1136,   477,
2005 <     118,   585,   236,   119,   366,   461,   367,   503,   462,   257,
2006 <     258,   259,   260,   701,   702,   122,   120,   388,   368,   335,
2007 <     336,   337,   662,   663,   338,   126,   504,   998,   232,   261,
2008 <     233,   505,   339,   122,    73,   586,   676,   234,   369,   127,
2009 <     235,   681,   577,   252,   340,   341,   128,   129,   388,   463,
2010 <     301,   545,   692,   693,   305,   695,   398,   130,   301,   253,
2011 <     342,   343,   298,   705,   706,   131,   464,   710,   370,   246,
2012 <    1253,   132,   577,   299,   494,   133,   134,   478,   135,   389,
2013 <     546,   246,   306,   271,   136,   307,   479,   480,   344,   399,
2014 <     506,   308,  1096,   137,   138,   371,  1097,   247,   139,   587,
2015 <     586,   311,   998,   140,   312,   495,   578,   141,   142,   247,
2016 <     389,   143,   845,   272,   144,   145,  1098,  1099,  1100,   481,
2017 <     400,   494,   146,   397,   313,  1102,   999,   314,   147,   148,
2018 <    1273,   149,   150,   151,   152,   153,   578,   524,  1137,  1108,
2019 <    1203,  1232,  1138,  1234,  1204,  1233,   154,  1235,   315,   273,
2020 <     237,  1274,   495,  1275,   155,   156,   157,   316,   158,  1077,
2021 <     525,   159,   160,   238,   587,   161,   496,   579,   848,   849,
2022 <     372,  -101,   633,   777,   309,   801,   162,   482,   648,   526,
2023 <     599,   738,   274,   527,   275,   276,   652,   769,   559,   595,
2024 <    1000,   465,   733,   317,  1276,   318,   659,   579,   593,   163,
2025 <     745,   999,   395,   164,    70,    79,   722,   165,   166,   167,
2026 <     168,   169,   796,   496,   513,   170,   171,    80,   237,  1036,
2027 <    1037,   319,   398,   522,   172,   277,   320,   278,   279,   321,
2028 <     474,   238,    81,    82,    71,   322,   528,   835,    83,  -101,
2029 <      84,   516,   280,   518,    72,   843,   844,   459,  1238,   323,
2030 <     460,   519,  1239,   475,   173,   399,   174,   271,   175,   324,
2031 <     325,   529,   326,  1001,   176,  1000,  1150,  1277,  1278,   177,
2032 <     327,   328,   476,  1240,   178,   543,   477,  1241,   457,   281,
2033 <     530,   394,    85,    86,   406,   461,   400,   272,   462,    87,
2034 <      88,   407,  1242,  1244,   408,   544,  1243,  1245,   127,   957,
2035 <     958,   959,   409,    73,  1279,   128,   129,   410,  1246,  1256,
2036 <      89,    90,  1247,  1257,   282,   283,   130,  1258,   411,   502,
2037 <     561,  1259,   574,   273,   131,    91,    92,  1261,   412,   463,
2038 <     132,  1262,   970,   413,   133,   134,    93,   135,  1001,   414,
2039 <     415,   416,   531,   136,  1263,    94,   464,  1288,  1264,   417,
2040 <     598,  1289,   137,   138,   478,   418,   274,   139,   275,   276,
2041 <     419,   532,   140,   479,   480,   503,   141,   142,   420,   421,
2042 <     143,   422,   423,   144,   145,   424,   763,   524,   545,   425,
2043 <     360,   146,   361,   426,   504,   362,   427,   147,   148,   505,
2044 <     149,   150,   151,   152,   153,   707,   481,   428,   604,   277,
2045 <     525,   278,   279,   363,   429,   154,   430,   546,   431,   432,
2046 <     433,  1154,   435,   155,   156,   157,   280,   158,   437,   526,
2047 <     159,   160,   364,   527,   161,   438,   365,   439,   440,   441,
2048 <     254,    95,    96,    97,   442,   162,   443,   444,  1155,   813,
2049 <     814,   815,   816,   817,   329,   366,   596,   367,   506,  1206,
2050 <     445,   446,   447,   281,   482,   448,   449,  1156,   163,   368,
2051 <     450,   451,   164,  1157,   255,   452,   165,   166,   167,   168,
2052 <     169,   465,    79,   453,   170,   171,   528,   256,   454,   369,
2053 <    1158,   455,   456,   172,    80,   514,   515,   520,   282,   283,
2054 <     257,   258,   259,   260,   521,   552,   553,   554,   597,    81,
2055 <      82,   529,   555,   556,  1159,    83,   557,    84,   558,   370,
2056 <     261,  1160,   562,   173,   563,   174,   602,   175,   564,   565,
2057 <     530,   566,  1220,   176,  1207,  1161,   567,   600,   177,   568,
2058 <     601,   570,   571,   178,   572,   573,   371,   592,   603,   609,
2059 <     604,   607,   608,  1162,   610,  1163,  1164,   611,   613,    85,
2060 <      86,   614,   615,   618,   616,  1208,    87,    88,   617,   619,
2061 <     661,   620,   664,   621,  1209,   622,   623,   624,   625,   626,
2062 <     627,  1210,   628,   629,   630,   631,   632,    89,    90,   635,
2063 <    1115,   636,   531,  1211,   654,  1212,  1213,   637,   638,   639,
2064 <     641,   642,    91,    92,   643,  1165,   644,  1221,   645,  1214,
2065 <     646,   532,   647,    93,  1116,  1166,   667,   665,   650,  1215,
2066 <     651,   372,    94,  1117,  1167,   656,   666,   668,  1168,  1118,
2067 <    1169,     2,     3,   657,   655,   669,     4,   331,  1222,  1254,
2068 <    1170,   670,   671,   672,   673,  1119,   674,  1223,   675,   677,
2069 <    1171,   678,     5,   679,  1224,     6,     7,   680,   332,   333,
2070 <     682,     8,   334,   683,   685,   684,  1225,   686,  1226,  1227,
2071 <     689,  1120,   687,   688,   690,   897,     9,   691,   694,  1121,
2072 <      10,    11,  1228,    12,   696,   697,   698,   703,   704,    13,
2073 <     707,   709,  1229,   711,   712,   713,   714,   717,   715,   718,
2074 <     747,   748,   920,    14,   751,   724,   720,   721,    95,    96,
2075 <      97,   725,   750,    15,    16,   726,   752,   728,   729,   771,
2076 <    1122,   730,   731,   335,   336,   337,   732,   735,   338,  1177,
2077 <      17,   737,   740,   742,   743,   772,   339,   744,  1123,   755,
2078 <     749,   753,   754,   773,   774,   775,    18,   756,   340,   341,
2079 <     758,   759,   776,   779,   781,   780,   765,   760,   762,   782,
2080 <     783,   784,   778,   785,   342,   343,   766,   767,   787,   788,
2081 <     768,   786,   793,   789,   790,   791,   792,   795,   798,   803,
2082 <      19,   804,   799,   805,   833,   806,   834,   807,   808,    20,
2083 <      21,   809,   344,    22,    23,   898,   899,   900,   901,   902,
2084 <     836,   903,   904,   810,   811,   905,   906,   907,   837,   838,
2085 <     908,   812,   909,   910,   911,   820,   912,   913,   914,   839,
2086 <     840,   915,   921,   922,   923,   924,   925,   916,   926,   927,
2087 <     821,   822,   928,   929,   930,   823,   824,   931,   825,   932,
2088 <     933,   934,   826,   935,   936,   937,    24,   827,   938,  1178,
2089 <    1179,  1180,  1181,  1182,   939,  1183,  1184,   828,   829,  1185,
2090 <    1186,  1187,   841,   830,  1188,   831,  1189,  1190,  1191,   842,
2091 <    1192,  1193,  1194,   832,   846,  1195,   847,   850,   851,   853,
2092 <     852,  1196,   854,   857,   855,   856,   858,   859,   860,   861,
2093 <     863,   862,   864,   865,   866,   868,   867,   869,   971,   870,
2094 <     871,   872,   873,   874,   875,   876,   877,   973,   878,   879,
2095 <     880,   881,   882,   974,   883,   976,   884,   885,   886,   887,
2096 <     888,   889,   890,   891,   892,   893,   894,   895,   979,   980,
2097 <     896,   919,   942,   943,   944,   945,   946,   981,   977,   947,
2098 <     948,   949,   950,   982,   951,   952,   953,   954,   983,   955,
2099 <     956,   962,   963,   964,   965,   966,   967,   968,   985,   987,
2100 <     975,   969,   972,   990,   978,   984,   988,   986,   991,   992,
2101 <     989,   995,   996,   997,  1007,  1008,  1009,  1010,  1012,  1011,
2102 <    1013,  1014,  1015,  1016,  1018,  1019,  1017,  1020,  1021,  1022,
2103 <    1248,  1044,  1046,  1048,  1091,  1260,  1023,   310,  1151,  1132,
2104 <    1024,  1290,  1285,  1271,  1025,  1026,  1027,  1028,  1029,  1030,
2105 <    1031,  1032,  1251,  1033,  1034,   575,  1035,  1040,  1041,  1042,
2106 <    1043,   764,  1284,  1143,  1047,  1045,  1050,  1051,  1049,  1057,
2107 <    1058,  1059,  1060,  1061,  1062,  1063,  1269,  1064,  1065,  1066,
2108 <    1067,  1068,  1249,  1069,  1070,   734,  1071,  1072,  1073,  1074,
2109 <    1080,  1286,  1081,  1082,  1083,  1084,   802,  1085,   797,  1086,
2110 <    1087,  1088,  1089,  1090,  1105,  1106,   746,  1287,  1111,  1112,
2111 <    1113,  1265,  1114,  1126,  1127,  1128,   396,  1129,  1130,  1131,
2112 <    1135,  1141,  1142,   634,  1270,   770,   739,  1146,   458,  1144,
2113 <    1266,   594,  1237,  1147,  1236,  1268,  1152,  1149,   330,   723,
2146 <    1267,     0,   649,  1153,  1174,  1175,  1176,  1199,  1200,  1201,
2147 <    1202,  1205,  1218,  1219,  1250,     0,  1255,  1272,  1252,     0,
2148 <     653,  1282,  1283,   517,     0,   660,     0,   523,     0,     0,
1998 >     691,   586,   587,  1010,   972,   690,   246,  1011,   110,   594,
1999 >     484,    67,   524,   381,   391,   939,   940,   941,   524,   110,
2000 >     352,   559,   353,   296,  1012,   354,   484,    47,  1013,  1071,
2001 >    1073,   525,   568,  1072,  1074,   296,   381,   525,    45,    46,
2002 >      68,  1198,   355,    67,    48,  1199,   237,  1200,    69,   301,
2003 >     247,  1201,   475,   485,  1204,   391,   302,   230,  1205,   356,
2004 >    1101,   682,   683,   357,    52,   248,   249,   250,   251,   485,
2005 >      54,  1206,    68,   972,   486,  1207,   568,   111,    58,   487,
2006 >      69,    59,   382,    62,   358,   252,   359,   230,   111,    63,
2007 >     486,    66,   642,   643,   107,   487,   760,   761,   360,   116,
2008 >     650,   559,   652,   973,   108,   382,   117,   118,  1215,   659,
2009 >      70,   109,   690,   392,   664,   526,   119,   684,   685,   361,
2010 >     560,   526,   297,  1208,   120,   675,   676,  1209,   678,   115,
2011 >     121,   569,   122,   123,   297,   124,   688,   689,   227,   488,
2012 >     693,   125,    70,   238,   527,   383,   393,   126,   127,   362,
2013 >     527,   128,   129,   130,   392,   488,   323,   131,  1050,  1218,
2014 >    1051,   261,   132,  1219,   823,   228,   133,   134,   383,   974,
2015 >     135,   239,   973,   136,   137,   569,   324,   325,   363,   394,
2016 >     326,   138,   764,   765,   476,   229,   561,   393,   139,   140,
2017 >     262,   141,   142,   143,   144,   145,   244,   570,   475,  1220,
2018 >     560,   826,   827,  1221,  1102,    76,   146,   364,  1222,  1103,
2019 >     303,   245,  1223,   456,   147,   148,   149,   477,   150,  1224,
2020 >     394,   151,   152,  1225,  1247,   153,   263,   294,  1248,   750,
2021 >     295,    77,    78,   304,   237,   457,   154,    79,   974,   307,
2022 >     975,   570,   327,   328,   329,   539,   499,   330,   562,   720,
2023 >     305,   365,   458,   639,   505,   331,   459,   743,   389,   628,
2024 >     264,   155,   265,   266,   578,   156,   561,   332,   333,   157,
2025 >     158,   159,   160,   161,   576,   632,   506,   162,   163,   478,
2026 >     308,    80,    81,   334,   335,   503,   231,   164,    82,    83,
2027 >      84,   713,   813,   507,  -107,   309,   497,   508,   495,   310,
2028 >     821,   822,   311,   267,   312,   268,   269,   270,   271,   975,
2029 >      85,    86,  1115,   336,   579,   783,   231,   580,   165,   166,
2030 >     313,   167,   272,   246,  -107,    87,    88,   168,   562,   169,
2031 >     476,   238,   456,   314,   170,   315,    89,   460,   454,  1232,
2032 >     778,  1075,  1076,  1077,   316,    90,   461,   462,   273,   317,
2033 >     318,   319,   320,   509,   457,   388,   400,  1052,   401,   239,
2034 >     274,   402,  1233,   477,  1234,   403,   404,   247,   505,   405,
2035 >    1053,   458,   406,   407,   408,   459,   409,   410,   510,   116,
2036 >     411,   463,   248,   249,   250,   251,   117,   118,   412,   413,
2037 >     506,   414,   275,   276,   415,   612,   119,   511,   416,   417,
2038 >     557,   418,   252,   419,   120,   420,  1235,   507,   421,   422,
2039 >     121,   508,   122,   123,   423,   124,   424,   425,   426,   261,
2040 >     427,   125,   428,   429,   430,   478,   432,   126,   127,   434,
2041 >     435,   128,   129,   130,   436,   437,   438,   131,   439,   500,
2042 >     464,   440,   132,   441,   321,   442,   133,   134,   262,   443,
2043 >     135,   444,   708,   136,   137,   445,   460,   446,   447,   448,
2044 >     449,   138,   450,   512,   451,   461,   462,   509,   139,   140,
2045 >     452,   141,   142,   143,   144,   145,  1027,  1028,  1029,  1030,
2046 >    1031,   513,  1236,  1237,   263,   453,   146,   496,  1119,   585,
2047 >     501,   502,   510,   737,   147,   148,   149,   533,   150,   534,
2048 >     463,   151,   152,   535,   352,   153,   353,   536,   537,   354,
2049 >     538,   511,   541,   542,  1120,   581,   154,   543,   264,  1238,
2050 >     265,   266,   544,   545,   546,   547,   355,   548,   549,   550,
2051 >     551,  1121,   793,   794,   795,   796,   797,   552,   553,  1122,
2052 >     554,   155,   555,   356,   556,   156,   575,   357,   582,   157,
2053 >     158,   159,   160,   161,   583,   585,  1123,   162,   163,   464,
2054 >     584,   267,   588,   268,   269,   270,   271,   164,   358,   589,
2055 >     359,   590,   591,   592,   593,   595,   596,   512,   597,  1172,
2056 >     272,  1124,   360,  1186,   598,   599,   600,   634,  1125,   601,
2057 >     602,   603,   604,   605,   606,   513,   607,   608,   165,   166,
2058 >     609,   167,  1126,   361,   610,   611,   273,   168,   614,   169,
2059 >     615,   635,     2,     3,   170,   616,   617,     4,   274,   618,
2060 >    1127,   644,  1128,  1129,   620,   621,   641,   622,   623,   624,
2061 >     625,   626,     5,   362,   627,     6,     7,   630,   645,   646,
2062 >     631,     8,   647,   636,   879,   637,   648,   649,   651,   653,
2063 >     275,   276,   654,   655,     9,   656,   657,  1173,    10,    11,
2064 >     658,  1187,   363,   661,   660,   662,   663,  1216,   665,    12,
2065 >     666,   667,   668,   902,   669,  1130,   670,   671,   672,   674,
2066 >     673,   677,   690,    13,   679,  1131,   698,   699,  1174,  1132,
2067 >     680,   364,  1188,    14,    15,  1133,   681,   686,  1175,  1134,
2068 >     687,  1135,  1189,   694,   692,  1176,   695,   696,   700,  1190,
2069 >    1136,    16,  1143,   697,   715,   701,   703,  1137,  1177,   704,
2070 >    1178,  1179,  1191,   705,  1192,  1193,   722,    17,   706,   725,
2071 >     707,   710,   712,  1180,   717,   365,   718,  1194,   719,   724,
2072 >    1181,   723,   726,   745,  1195,   746,   727,   747,   728,   752,
2073 >     748,   749,   753,   754,   729,   730,   755,   756,   732,   733,
2074 >     734,   736,   739,    18,   740,   751,   757,   880,   881,   882,
2075 >     883,   884,    19,    20,   885,   886,    21,    22,   887,   888,
2076 >     889,   758,   759,   890,   768,   891,   892,   893,   741,   894,
2077 >     742,   895,   896,   769,   770,   897,   903,   904,   905,   906,
2078 >     907,   898,   323,   908,   909,   771,   772,   910,   911,   912,
2079 >     773,   785,   913,   811,   914,   915,   916,   774,   917,   775,
2080 >     918,   919,   324,   325,   920,   777,   326,   780,   781,   786,
2081 >     921,    23,   787,   788,   789,  1144,  1145,  1146,  1147,  1148,
2082 >     790,   791,  1149,  1150,  1080,   792,  1151,  1152,  1153,   800,
2083 >     812,  1154,   814,  1155,  1156,  1157,   801,  1158,   802,  1159,
2084 >    1160,   815,   803,  1161,   816,    76,  1081,   804,   805,  1162,
2085 >     806,   807,   808,   809,   817,   810,  1082,   818,   819,   820,
2086 >     824,   825,   829,  1083,   828,   830,   831,   832,   327,   328,
2087 >     329,    77,    78,   330,   833,   835,   834,    79,   836,  1084,
2088 >     839,   331,   837,   838,   840,   841,   842,   843,   844,   845,
2089 >     847,   846,   848,   332,   333,   849,   850,   851,   852,   951,
2090 >     853,   854,   855,   952,   856,   857,  1085,   858,   859,   334,
2091 >     335,   860,   861,   862,  1086,   863,   864,   865,   866,   867,
2092 >     868,    80,    81,   869,   870,   954,   871,   872,    82,    83,
2093 >      84,   873,   874,   875,   876,   877,   878,   901,   924,   336,
2094 >     925,   926,   927,   928,   929,   930,   931,   932,   933,   934,
2095 >      85,    86,   935,   936,   937,   938,   944,  1087,   945,   955,
2096 >     946,   956,   947,   948,   949,    87,    88,   950,   957,   958,
2097 >     960,   953,   962,   965,   961,  1088,    89,   959,   963,   964,
2098 >     967,   966,   983,   984,   985,    90,   986,   987,   988,   970,
2099 >     990,   992,   993,   994,   971,   981,  1019,  1021,   982,  1023,
2100 >     991,   995,   989,   996,  1210,   997,   998,  1068,   999,  1000,
2101 >    1001,  1002,  1003,  1004,  1005,  1006,  1007,  1008,  1009,  1014,
2102 >    1097,  1015,  1016,  1017,  1018,  1170,  1022,  1108,  1020,  1025,
2103 >    1024,  1026,  1032,  1112,  1033,  1034,  1035,  1036,  1037,  1038,
2104 >    1039,  1040,  1041,  1042,  1213,  1043,  1169,  1044,  1045,  1046,
2105 >    1047,  1048,  1049,  1056,  1057,  1058,  1059,  1060,  1061,  1062,
2106 >    1063,  1064,  1065,  1066,  1067,  1078,  1079,  1091,  1092,   306,
2107 >    1093,  1094,  1095,  1096,  1100,  1106,  1116,  1249,  1244,  1107,
2108 >    1243,   738,  1230,   613,  1111,   721,  1109,  1117,  1211,  1114,
2109 >     709,  1118,  1140,  1141,  1228,   779,   784,  1142,  1226,   744,
2110 >    1229,  1245,  1165,  1166,  1246,   390,  1167,   629,  1168,   714,
2111 >    1227,  1171,  1184,  1185,  1212,   498,  1217,  1231,  1214,  1241,
2112 >    1242,   455,   504,  1203,   633,  1202,   322,     0,     0,     0,
2113 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   540,
2114         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2115 <       0,     0,     0,     0,     0,     0,     0,   560
2115 >       0,     0,     0,     0,     0,     0,   558,     0,     0,   640,
2116 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2117 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2118 >       0,     0,     0,   577
2119   };
2120  
2121   #define yypact_value_is_default(yystate) \
2122 <  ((yystate) == (-772))
2122 >  ((yystate) == (-599))
2123  
2124   #define yytable_value_is_error(yytable_value) \
2125    YYID (0)
2126  
2127   static const yytype_int16 yycheck[] =
2128   {
2129 <     450,   316,   317,     1,     1,     1,     1,   241,   323,     1,
2130 <     241,     3,     1,     1,     6,     1,   241,     1,     1,     1,
2131 <      10,     1,    12,     1,    22,    23,   241,     1,    26,     1,
2132 <      11,     1,    24,     1,   241,    31,   241,     1,    21,   241,
2133 <       4,   110,     1,     1,    11,    41,    24,   241,     1,   239,
2134 <     240,    43,   239,    35,     1,    47,   243,   174,   175,     1,
2135 <     813,   814,   815,   816,   817,    43,    48,   241,    61,    47,
2136 <     241,     1,     1,   241,    66,    39,    68,    47,    42,    61,
2137 <      62,    63,    64,   174,   175,    71,   241,    71,    80,    87,
2138 <      88,    89,   407,   408,    92,   241,    66,     1,   241,    81,
2139 <     241,    71,   100,    71,   100,   100,   421,   241,   100,     1,
2140 <     241,   426,   100,   241,   112,   113,     8,     9,    71,    83,
2141 <     100,   104,   437,   438,   239,   440,   100,    19,   100,   241,
2142 <     128,   129,   241,   448,   449,    27,   100,   452,   130,    98,
2143 <     209,    33,   100,   241,   133,    37,    38,   125,    40,   133,
2144 <     133,    98,   242,     1,    46,   242,   134,   135,   156,   133,
2145 <     130,   242,   239,    55,    56,   157,   243,   126,    60,   164,
2146 <     100,   242,     1,    65,   242,   164,   164,    69,    70,   126,
2147 <     133,    73,   632,    31,    76,    77,   957,   958,   959,   167,
2148 <     164,   133,    84,     1,   242,   176,   100,   242,    90,    91,
2149 <      51,    93,    94,    95,    96,    97,   164,     1,   201,   176,
2150 <     239,   239,   205,   239,   243,   243,   108,   243,   242,    67,
2151 <     217,    72,   164,    74,   116,   117,   118,   242,   120,   219,
2152 <      24,   123,   124,   230,   164,   127,   225,   225,   194,   195,
2153 <     232,   238,   240,   558,   240,   240,   138,   225,   240,    43,
2154 <     174,   240,   100,    47,   102,   103,   240,   240,   240,   131,
2155 <     164,   225,   240,   242,   115,   242,   240,   225,   240,   161,
2156 <     240,   100,   240,   165,     1,     1,   240,   169,   170,   171,
2157 <     172,   173,   240,   225,   239,   177,   178,    13,   217,   147,
2158 <     148,   242,   100,   240,   186,   143,   242,   145,   146,   242,
2159 <       1,   230,    28,    29,    31,   242,   100,   622,    34,   238,
2160 <      36,   240,   160,   238,    41,   630,   631,     1,   239,   242,
2161 <       4,   239,   243,    24,   216,   133,   218,     1,   220,   242,
2162 <     242,   125,   242,   237,   226,   164,   240,   188,   189,   231,
2163 <     242,   242,    43,   239,   236,     1,    47,   243,   240,   197,
2164 <     144,   242,    78,    79,   242,    39,   164,    31,    42,    85,
2165 <      86,   242,   239,   239,   242,    21,   243,   243,     1,    14,
2166 <      15,    16,   242,   100,   225,     8,     9,   242,   239,   239,
2167 <     106,   107,   243,   243,   232,   233,    19,   239,   242,     1,
2168 <     239,   243,   240,    67,    27,   121,   122,   239,   242,    83,
2169 <      33,   243,   717,   242,    37,    38,   132,    40,   237,   242,
2170 <     242,   242,   206,    46,   239,   141,   100,   239,   243,   242,
2171 <     239,   243,    55,    56,   125,   242,   100,    60,   102,   103,
2172 <     242,   225,    65,   134,   135,    47,    69,    70,   242,   242,
2173 <      73,   242,   242,    76,    77,   242,   240,     1,   104,   242,
2174 <       1,    84,     3,   242,    66,     6,   242,    90,    91,    71,
2175 <      93,    94,    95,    96,    97,   110,   167,   242,   110,   143,
2176 <      24,   145,   146,    24,   242,   108,   242,   133,   242,   242,
2177 <     242,     5,   242,   116,   117,   118,   160,   120,   242,    43,
2178 <     123,   124,    43,    47,   127,   242,    47,   242,   242,   242,
2179 <       1,   227,   228,   229,   242,   138,   242,   242,    32,   151,
2180 <     152,   153,   154,   155,   240,    66,   131,    68,   130,    74,
2181 <     242,   242,   242,   197,   225,   242,   242,    51,   161,    80,
2182 <     242,   242,   165,    57,    35,   242,   169,   170,   171,   172,
2183 <     173,   225,     1,   242,   177,   178,   100,    48,   242,   100,
2184 <      74,   242,   242,   186,    13,   242,   242,   242,   232,   233,
2185 <      61,    62,    63,    64,   242,   242,   242,   242,   131,    28,
2186 <      29,   125,   242,   242,    98,    34,   242,    36,   242,   130,
2187 <      81,   105,   242,   216,   242,   218,   174,   220,   242,   242,
2188 <     144,   242,    74,   226,   149,   119,   242,   110,   231,   242,
2189 <     110,   242,   242,   236,   242,   242,   157,   242,   174,   174,
2190 <     110,   110,   110,   137,   174,   139,   140,   110,   174,    78,
2191 <      79,   174,   174,   239,   174,   180,    85,    86,   174,   239,
2192 <     174,   242,   110,   242,   189,   242,   242,   242,   242,   242,
2193 <     242,   196,   242,   242,   242,   242,   242,   106,   107,   239,
2194 <      20,   242,   206,   208,   131,   210,   211,   242,   242,   242,
2195 <     242,   242,   121,   122,   242,   189,   242,   149,   242,   224,
2196 <     242,   225,   242,   132,    44,   199,   110,   174,   242,   234,
2197 <     242,   232,   141,    53,   208,   242,   174,   131,   212,    59,
2198 <     214,     0,     1,   242,   239,   174,     5,     1,   180,  1149,
2199 <     224,   110,   110,   110,   174,    75,   174,   189,   174,   131,
2200 <     234,   174,    21,   110,   196,    24,    25,   110,    22,    23,
2201 <     110,    30,    26,   110,   110,   131,   208,   110,   210,   211,
2202 <     242,   101,   174,   174,   174,    61,    45,   242,   174,   109,
2203 <      49,    50,   224,    52,   174,   174,   174,   174,   174,    58,
2204 <     110,   131,   234,   174,   174,   174,   174,   242,   239,   242,
2205 <     174,   174,    61,    72,   131,   239,   242,   242,   227,   228,
2206 <     229,   242,   241,    82,    83,   242,   131,   242,   242,   174,
2207 <     150,   242,   242,    87,    88,    89,   242,   242,    92,    61,
2208 <      99,   242,   239,   242,   242,   174,   100,   242,   168,   242,
2209 <     239,   239,   239,   174,   131,   174,   115,   242,   112,   113,
2210 <     242,   242,   174,   131,   131,   174,   239,   242,   242,   131,
2211 <     131,   131,   239,   131,   128,   129,   242,   242,   131,   110,
2212 <     242,   242,   242,   131,   131,   239,   239,   242,   239,   131,
2213 <     149,   239,   242,   239,   110,   239,   110,   239,   239,   158,
2214 <     159,   239,   156,   162,   163,   181,   182,   183,   184,   185,
2215 <     110,   187,   188,   239,   239,   191,   192,   193,   110,   110,
2216 <     196,   239,   198,   199,   200,   239,   202,   203,   204,   110,
2217 <     131,   207,   181,   182,   183,   184,   185,   213,   187,   188,
2218 <     239,   239,   191,   192,   193,   239,   239,   196,   239,   198,
2219 <     199,   200,   239,   202,   203,   204,   215,   239,   207,   181,
2220 <     182,   183,   184,   185,   213,   187,   188,   239,   239,   191,
2221 <     192,   193,   110,   239,   196,   239,   198,   199,   200,   110,
2222 <     202,   203,   204,   239,   239,   207,   131,   131,   174,   131,
2223 <     242,   213,   131,   110,   131,   131,   131,   131,   239,   131,
2224 <     239,   131,   239,   131,   131,   239,   242,   239,   174,   239,
2225 <     239,   239,   239,   239,   239,   239,   239,   131,   239,   239,
2226 <     239,   239,   239,   131,   239,   131,   239,   239,   239,   239,
2227 <     239,   239,   239,   239,   239,   239,   239,   239,   131,   110,
2228 <     239,   239,   239,   239,   239,   239,   239,   131,   174,   239,
2229 <     239,   239,   239,   131,   239,   239,   239,   239,   131,   239,
2230 <     239,   239,   239,   239,   239,   239,   239,   239,   131,   131,
2231 <     239,   242,   242,   131,   242,   239,   239,   242,   131,   110,
2232 <     242,   239,   239,   239,   239,   239,   131,   174,   131,   242,
2233 <     131,   131,   242,   131,   131,   131,   239,   131,   239,   239,
2234 <     110,   131,   131,   131,   136,  1204,   239,    74,  1002,   136,
2235 <     239,  1289,  1259,  1247,   239,   239,   239,   239,   239,   239,
2236 <     239,   239,   131,   239,   239,   284,   239,   239,   239,   239,
2237 <     239,   533,  1257,   179,   239,   242,   239,   239,   242,   239,
2238 <     239,   239,   239,   239,   239,   239,  1243,   239,   239,   239,
2239 <     239,   239,  1144,   239,   239,   483,   239,   239,   239,   239,
2240 <     239,  1262,   239,   239,   239,   239,   588,   239,   580,   239,
2241 <     239,   239,   239,   239,   239,   239,   508,  1264,   239,   239,
2242 <     239,  1233,   239,   239,   239,   239,   123,   239,   239,   239,
2243 <     239,   239,   239,   345,  1245,   547,   498,   239,   179,   243,
2244 <    1235,   302,  1097,   242,  1095,  1241,   239,   242,    98,   466,
2245 <    1239,    -1,   373,   239,   239,   239,   239,   239,   239,   239,
2246 <     239,   239,   239,   239,   239,    -1,   239,   239,   242,    -1,
2279 <     390,   239,   239,   239,    -1,   402,    -1,   248,    -1,    -1,
2129 >     447,   310,   311,   239,     1,   110,     1,   243,     1,   318,
2130 >       1,     1,     1,     1,     1,    13,    14,    15,     1,     1,
2131 >       1,     1,     3,     1,   239,     6,     1,   241,   243,   239,
2132 >     239,    20,     1,   243,   243,     1,     1,    20,   239,   240,
2133 >      30,   239,    23,     1,   241,   243,     1,   239,    38,   239,
2134 >      45,   243,     1,    44,   239,     1,   242,     1,   243,    40,
2135 >      60,   176,   177,    44,   241,    60,    61,    62,    63,    44,
2136 >     241,   239,    30,     1,    65,   243,     1,    70,   241,    70,
2137 >      38,   241,    70,   241,    65,    80,    67,     1,    70,   241,
2138 >      65,   241,   401,   402,   241,    70,   149,   150,    79,     1,
2139 >     409,     1,   411,   100,   241,    70,     8,     9,   213,   418,
2140 >     100,   241,   110,   100,   423,   104,    18,   176,   177,   100,
2141 >     100,   104,   100,   239,    26,   434,   435,   243,   437,   241,
2142 >      32,   100,    34,    35,   100,    37,   445,   446,   241,   130,
2143 >     449,    43,   100,    98,   133,   133,   133,    49,    50,   130,
2144 >     133,    53,    54,    55,   100,   130,     1,    59,    10,   239,
2145 >      12,     1,    64,   243,   611,   241,    68,    69,   133,   166,
2146 >      72,   126,   100,    75,    76,   100,    21,    22,   159,   166,
2147 >      25,    83,   149,   150,   133,   241,   166,   133,    90,    91,
2148 >      30,    93,    94,    95,    96,    97,   241,   166,     1,   239,
2149 >     100,   197,   198,   243,   204,     1,   108,   188,   239,   209,
2150 >     242,   241,   243,     1,   116,   117,   118,   166,   120,   239,
2151 >     166,   123,   124,   243,   239,   127,    66,   241,   243,   538,
2152 >     241,    27,    28,   242,     1,    23,   138,    33,   166,   242,
2153 >     237,   166,    87,    88,    89,   240,   238,    92,   228,   240,
2154 >     240,   232,    40,   240,     1,   100,    44,   240,   240,   240,
2155 >     100,   163,   102,   103,   131,   167,   166,   112,   113,   171,
2156 >     172,   173,   174,   175,   240,   240,    23,   179,   180,   228,
2157 >     242,    77,    78,   128,   129,   240,   230,   189,    84,    85,
2158 >      86,   240,   601,    40,   238,   242,   240,    44,   239,   242,
2159 >     609,   610,   242,   143,   242,   145,   146,   147,   148,   237,
2160 >     106,   107,   240,   158,   131,   240,   230,   131,   220,   221,
2161 >     242,   223,   162,     1,   238,   121,   122,   229,   228,   231,
2162 >     133,    98,     1,   242,   236,   242,   132,   125,   240,    48,
2163 >     240,   939,   940,   941,   242,   141,   134,   135,   188,   242,
2164 >     242,   242,   242,   100,    23,   242,   242,   209,   242,   126,
2165 >     200,   242,    71,   166,    73,   242,   242,    45,     1,   242,
2166 >     222,    40,   242,   242,   242,    44,   242,   242,   125,     1,
2167 >     242,   169,    60,    61,    62,    63,     8,     9,   242,   242,
2168 >      23,   242,   232,   233,   242,   240,    18,   144,   242,   242,
2169 >     240,   242,    80,   242,    26,   242,   115,    40,   242,   242,
2170 >      32,    44,    34,    35,   242,    37,   242,   242,   242,     1,
2171 >     242,    43,   242,   242,   242,   228,   242,    49,    50,   242,
2172 >     242,    53,    54,    55,   242,   242,   242,    59,   242,   239,
2173 >     228,   242,    64,   242,   240,   242,    68,    69,    30,   242,
2174 >      72,   242,   240,    75,    76,   242,   125,   242,   242,   242,
2175 >     242,    83,   242,   210,   242,   134,   135,   100,    90,    91,
2176 >     242,    93,    94,    95,    96,    97,   793,   794,   795,   796,
2177 >     797,   228,   191,   192,    66,   242,   108,   242,     5,   110,
2178 >     242,   242,   125,   240,   116,   117,   118,   242,   120,   242,
2179 >     169,   123,   124,   242,     1,   127,     3,   242,   242,     6,
2180 >     242,   144,   239,   242,    31,   239,   138,   242,   100,   228,
2181 >     102,   103,   242,   242,   242,   242,    23,   242,   242,   242,
2182 >     242,    48,   153,   154,   155,   156,   157,   242,   242,    56,
2183 >     242,   163,   242,    40,   242,   167,   242,    44,   110,   171,
2184 >     172,   173,   174,   175,   110,   110,    73,   179,   180,   228,
2185 >     176,   143,   110,   145,   146,   147,   148,   189,    65,   110,
2186 >      67,   110,   176,   176,   110,   176,   176,   210,   239,    73,
2187 >     162,    98,    79,    73,   239,   242,   242,   131,   105,   242,
2188 >     242,   242,   242,   242,   242,   228,   242,   242,   220,   221,
2189 >     242,   223,   119,   100,   242,   242,   188,   229,   239,   231,
2190 >     242,   239,     0,     1,   236,   242,   242,     5,   200,   242,
2191 >     137,   110,   139,   140,   242,   242,   176,   242,   242,   242,
2192 >     242,   242,    20,   130,   242,    23,    24,   242,   176,   176,
2193 >     242,    29,   110,   242,    60,   242,   131,   176,   176,   110,
2194 >     232,   233,   110,   110,    42,   176,   176,   151,    46,    47,
2195 >     176,   151,   159,   176,   131,   110,   110,  1114,   110,    57,
2196 >     110,   131,   110,    60,   110,   192,   176,   176,   242,   242,
2197 >     176,   176,   110,    71,   176,   202,   239,   239,   182,   206,
2198 >     176,   188,   182,    81,    82,   212,   176,   176,   192,   216,
2199 >     176,   218,   192,   176,   131,   199,   176,   176,   242,   199,
2200 >     227,    99,    60,   176,   239,   242,   242,   234,   212,   242,
2201 >     214,   215,   212,   242,   214,   215,   176,   115,   242,   131,
2202 >     242,   242,   242,   227,   242,   232,   242,   227,   242,   241,
2203 >     234,   239,   131,   176,   234,   176,   239,   131,   239,   131,
2204 >     176,   176,   176,   131,   242,   242,   131,   131,   242,   242,
2205 >     242,   242,   239,   151,   242,   239,   131,   183,   184,   185,
2206 >     186,   187,   160,   161,   190,   191,   164,   165,   194,   195,
2207 >     196,   131,   131,   199,   131,   201,   202,   203,   242,   205,
2208 >     242,   207,   208,   131,   110,   211,   183,   184,   185,   186,
2209 >     187,   217,     1,   190,   191,   131,   131,   194,   195,   196,
2210 >     239,   131,   199,   110,   201,   202,   203,   239,   205,   242,
2211 >     207,   208,    21,    22,   211,   242,    25,   239,   242,   239,
2212 >     217,   219,   239,   239,   239,   183,   184,   185,   186,   187,
2213 >     239,   239,   190,   191,    19,   239,   194,   195,   196,   239,
2214 >     110,   199,   110,   201,   202,   203,   239,   205,   239,   207,
2215 >     208,   110,   239,   211,   110,     1,    41,   239,   239,   217,
2216 >     239,   239,   239,   239,   110,   239,    51,   131,   110,   110,
2217 >     239,   131,   176,    58,   131,   242,   131,   131,    87,    88,
2218 >      89,    27,    28,    92,   131,   110,   131,    33,   131,    74,
2219 >     239,   100,   131,   131,   131,   131,   239,   239,   131,   131,
2220 >     239,   242,   239,   112,   113,   239,   239,   239,   239,   131,
2221 >     239,   239,   239,   176,   239,   239,   101,   239,   239,   128,
2222 >     129,   239,   239,   239,   109,   239,   239,   239,   239,   239,
2223 >     239,    77,    78,   239,   239,   131,   239,   239,    84,    85,
2224 >      86,   239,   239,   239,   239,   239,   239,   239,   239,   158,
2225 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2226 >     106,   107,   239,   239,   239,   239,   239,   152,   239,   110,
2227 >     239,   131,   239,   239,   239,   121,   122,   239,   131,   131,
2228 >     131,   242,   131,   131,   242,   170,   132,   239,   239,   242,
2229 >     110,   131,   131,   176,   242,   141,   131,   131,   131,   239,
2230 >     131,   131,   131,   131,   239,   239,   131,   131,   239,   131,
2231 >     239,   239,   242,   239,   110,   239,   239,   136,   239,   239,
2232 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2233 >     136,   239,   239,   239,   239,  1013,   239,   181,   242,   239,
2234 >     242,   239,   239,   242,   239,   239,   239,   239,   239,   239,
2235 >     239,   239,   239,   239,   131,   239,  1011,   239,   239,   239,
2236 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2237 >     239,   239,   239,   239,   239,   239,   239,   239,   239,    71,
2238 >     239,   239,   239,   239,   239,   239,   976,  1248,  1221,   239,
2239 >    1219,   514,  1209,   337,   239,   490,   243,   239,  1109,   242,
2240 >     465,   239,   239,   239,  1205,   563,   571,   239,  1199,   528,
2241 >    1207,  1223,   239,   239,  1225,   112,   239,   366,   239,   480,
2242 >    1201,   239,   239,   239,   239,   232,   239,   239,   242,   239,
2243 >     239,   171,   240,  1074,   384,  1072,    91,    -1,    -1,    -1,
2244 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   253,
2245 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2246 >      -1,    -1,    -1,    -1,    -1,    -1,   277,    -1,    -1,   396,
2247        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2248 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,   262
2248 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2249 >      -1,    -1,    -1,   298
2250   };
2251  
2252   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2253     symbol of state STATE-NUM.  */
2254   static const yytype_uint16 yystos[] =
2255   {
2256 <       0,   245,     0,     1,     5,    21,    24,    25,    30,    45,
2257 <      49,    50,    52,    58,    72,    82,    83,    99,   115,   149,
2258 <     158,   159,   162,   163,   215,   246,   251,   256,   274,   280,
2259 <     295,   313,   330,   344,   359,   366,   370,   380,   389,   408,
2260 <     418,   424,   428,   438,   498,   514,   535,   239,   240,   241,
2261 <     241,   314,   390,   419,   241,   429,   241,   499,   345,   409,
2262 <     331,   241,   241,   296,   360,   241,   241,   371,   381,   241,
2263 <       1,    31,    41,   100,   275,   276,   277,   278,   279,     1,
2264 <      13,    28,    29,    34,    36,    78,    79,    85,    86,   106,
2265 <     107,   121,   122,   132,   141,   227,   228,   229,   515,   516,
2266 <     517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
2267 <     527,   528,   529,   530,   531,   532,   533,   534,   241,   241,
2268 <     241,     1,    71,   425,   426,   427,   241,     1,     8,     9,
2269 <      19,    27,    33,    37,    38,    40,    46,    55,    56,    60,
2270 <      65,    69,    70,    73,    76,    77,    84,    90,    91,    93,
2271 <      94,    95,    96,    97,   108,   116,   117,   118,   120,   123,
2272 <     124,   127,   138,   161,   165,   169,   170,   171,   172,   173,
2273 <     177,   178,   186,   216,   218,   220,   226,   231,   236,   439,
2274 <     440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
2275 <     450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
2276 <     460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
2277 <     470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
2278 <     480,   481,   482,   483,   484,   485,   486,   490,   494,   495,
2279 <     496,   497,   241,   241,   241,   241,     1,   217,   230,   281,
2280 <     282,   283,   284,   285,   286,     1,    98,   126,   252,   253,
2281 <     254,   255,   241,   241,     1,    35,    48,    61,    62,    63,
2282 <      64,    81,   536,   537,   538,   539,   540,   541,   542,   543,
2283 <     544,     1,    31,    67,   100,   102,   103,   143,   145,   146,
2284 <     160,   197,   232,   233,   257,   258,   259,   263,   264,   265,
2285 <     266,   267,   268,   269,   270,   271,   272,   273,   241,   241,
2286 <       1,   100,   367,   368,   369,   239,   242,   242,   242,   240,
2287 <     276,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2288 <     242,   242,   242,   242,   242,   242,   242,   242,   242,   240,
2289 <     516,     1,    22,    23,    26,    87,    88,    89,    92,   100,
2290 <     112,   113,   128,   129,   156,   315,   316,   317,   318,   319,
2291 <     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
2292 <       1,     3,     6,    24,    43,    47,    66,    68,    80,   100,
2293 <     130,   157,   232,   391,   392,   393,   394,   395,   396,   397,
2294 <     398,   399,   400,   404,   405,   406,   407,     1,    71,   133,
2295 <     420,   421,   422,   423,   242,   240,   426,     1,   100,   133,
2328 <     164,   430,   434,   435,   436,   437,   242,   242,   242,   242,
2256 >       0,   245,     0,     1,     5,    20,    23,    24,    29,    42,
2257 >      46,    47,    57,    71,    81,    82,    99,   115,   151,   160,
2258 >     161,   164,   165,   219,   246,   251,   256,   278,   284,   298,
2259 >     316,   333,   347,   362,   369,   373,   383,   392,   412,   422,
2260 >     428,   432,   442,   505,   522,   239,   240,   241,   241,   317,
2261 >     393,   423,   241,   433,   241,   348,   413,   334,   241,   241,
2262 >     299,   363,   241,   241,   374,   384,   241,     1,    30,    38,
2263 >     100,   279,   280,   281,   282,   283,     1,    27,    28,    33,
2264 >      77,    78,    84,    85,    86,   106,   107,   121,   122,   132,
2265 >     141,   506,   507,   508,   509,   510,   511,   512,   513,   514,
2266 >     515,   516,   517,   518,   519,   520,   521,   241,   241,   241,
2267 >       1,    70,   429,   430,   431,   241,     1,     8,     9,    18,
2268 >      26,    32,    34,    35,    37,    43,    49,    50,    53,    54,
2269 >      55,    59,    64,    68,    69,    72,    75,    76,    83,    90,
2270 >      91,    93,    94,    95,    96,    97,   108,   116,   117,   118,
2271 >     120,   123,   124,   127,   138,   163,   167,   171,   172,   173,
2272 >     174,   175,   179,   180,   189,   220,   221,   223,   229,   231,
2273 >     236,   443,   444,   445,   446,   447,   448,   449,   450,   451,
2274 >     452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
2275 >     462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
2276 >     472,   473,   474,   475,   476,   477,   478,   479,   480,   481,
2277 >     482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
2278 >     492,   493,   497,   501,   502,   503,   504,   241,   241,   241,
2279 >       1,   230,   285,   286,   287,   288,   289,     1,    98,   126,
2280 >     252,   253,   254,   255,   241,   241,     1,    45,    60,    61,
2281 >      62,    63,    80,   523,   524,   525,   526,   527,   528,   529,
2282 >     530,     1,    30,    66,   100,   102,   103,   143,   145,   146,
2283 >     147,   148,   162,   188,   200,   232,   233,   257,   258,   259,
2284 >     260,   265,   266,   267,   268,   269,   270,   271,   272,   273,
2285 >     274,   275,   276,   277,   241,   241,     1,   100,   370,   371,
2286 >     372,   239,   242,   242,   242,   240,   280,   242,   242,   242,
2287 >     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2288 >     242,   240,   507,     1,    21,    22,    25,    87,    88,    89,
2289 >      92,   100,   112,   113,   128,   129,   158,   318,   319,   320,
2290 >     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
2291 >     331,   332,     1,     3,     6,    23,    40,    44,    65,    67,
2292 >      79,   100,   130,   159,   188,   232,   394,   395,   396,   397,
2293 >     398,   399,   400,   401,   402,   403,   407,   408,   409,   410,
2294 >     411,     1,    70,   133,   424,   425,   426,   427,   242,   240,
2295 >     430,     1,   100,   133,   166,   434,   438,   439,   440,   441,
2296       242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2297       242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2331     242,   242,   242,   242,   491,   242,   487,   242,   242,   242,
2298       242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2299 <     242,   242,   242,   242,   242,   242,   242,   240,   440,     1,
2334 <       4,    39,    42,    83,   100,   225,   500,   501,   502,   503,
2335 <     504,   508,   509,   510,     1,    24,    43,    47,   125,   134,
2336 <     135,   167,   225,   346,   347,   348,   349,   350,   351,   352,
2337 <     356,   357,   358,     1,   133,   164,   225,   410,   414,   415,
2338 <     416,   417,     1,    47,    66,    71,   130,   332,   336,   337,
2339 <     338,   342,   343,   239,   242,   242,   240,   282,   238,   239,
2340 <     242,   242,   240,   253,     1,    24,    43,    47,   100,   125,
2341 <     144,   206,   225,   297,   298,   299,   300,   301,   302,   303,
2342 <     304,   305,   309,     1,    21,   104,   133,   361,   362,   363,
2343 <     364,   365,   242,   242,   242,   242,   242,   242,   242,   240,
2344 <     537,   239,   242,   242,   242,   242,   242,   242,   242,   260,
2345 <     242,   242,   242,   242,   240,   258,     1,   100,   164,   225,
2346 <     372,   373,   374,   375,   376,     1,   100,   164,   382,   383,
2347 <     384,   385,   242,   240,   368,   131,   131,   131,   239,   174,
2348 <     110,   110,   174,   174,   110,   248,   248,   110,   110,   174,
2349 <     174,   110,   248,   174,   174,   174,   174,   174,   239,   239,
2299 >     242,   498,   242,   494,   242,   242,   242,   242,   242,   242,
2300       242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2301 <     242,   242,   242,   240,   316,   239,   242,   242,   242,   242,
2302 <     401,   242,   242,   242,   242,   242,   242,   242,   240,   392,
2303 <     242,   242,   240,   421,   131,   239,   242,   242,   431,   240,
2304 <     435,   174,   248,   248,   110,   174,   174,   110,   131,   174,
2305 <     110,   110,   110,   174,   174,   174,   248,   131,   174,   110,
2306 <     110,   248,   110,   110,   131,   110,   110,   174,   174,   242,
2307 <     174,   242,   248,   248,   174,   248,   174,   174,   174,   174,
2308 <     175,   174,   175,   174,   174,   248,   248,   110,   250,   131,
2309 <     248,   174,   174,   174,   174,   239,   511,   242,   242,   505,
2310 <     242,   242,   240,   501,   239,   242,   242,   353,   242,   242,
2311 <     242,   242,   242,   240,   347,   242,   411,   242,   240,   415,
2312 <     239,   333,   242,   242,   242,   240,   337,   174,   174,   239,
2313 <     241,   131,   131,   239,   239,   242,   242,   310,   242,   242,
2314 <     242,   306,   242,   240,   298,   239,   242,   242,   242,   240,
2315 <     362,   174,   174,   174,   131,   174,   174,   248,   239,   131,
2316 <     174,   131,   131,   131,   131,   131,   242,   131,   110,   131,
2317 <     131,   239,   239,   242,   377,   242,   240,   373,   239,   242,
2318 <     386,   240,   383,   131,   239,   239,   239,   239,   239,   239,
2319 <     239,   239,   239,   151,   152,   153,   154,   155,   247,   248,
2301 >     242,   242,   242,   242,   240,   444,     1,    23,    40,    44,
2302 >     125,   134,   135,   169,   228,   349,   350,   351,   352,   353,
2303 >     354,   355,   359,   360,   361,     1,   133,   166,   228,   414,
2304 >     418,   419,   420,   421,     1,    44,    65,    70,   130,   335,
2305 >     339,   340,   341,   345,   346,   239,   242,   240,   286,   238,
2306 >     239,   242,   242,   240,   253,     1,    23,    40,    44,   100,
2307 >     125,   144,   210,   228,   300,   301,   302,   303,   304,   305,
2308 >     306,   307,   308,   312,     1,    20,   104,   133,   364,   365,
2309 >     366,   367,   368,   242,   242,   242,   242,   242,   242,   240,
2310 >     524,   239,   242,   242,   242,   242,   242,   242,   242,   242,
2311 >     242,   242,   242,   242,   242,   242,   242,   240,   258,     1,
2312 >     100,   166,   228,   375,   376,   377,   378,   379,     1,   100,
2313 >     166,   385,   386,   387,   388,   242,   240,   371,   131,   131,
2314 >     131,   239,   110,   110,   176,   110,   248,   248,   110,   110,
2315 >     110,   176,   176,   110,   248,   176,   176,   239,   239,   242,
2316 >     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2317 >     242,   242,   240,   319,   239,   242,   242,   242,   242,   404,
2318 >     242,   242,   242,   242,   242,   242,   242,   242,   240,   395,
2319 >     242,   242,   240,   425,   131,   239,   242,   242,   435,   240,
2320 >     439,   176,   248,   248,   110,   176,   176,   110,   131,   176,
2321 >     248,   176,   248,   110,   110,   110,   176,   176,   176,   248,
2322 >     131,   176,   110,   110,   248,   110,   110,   131,   110,   110,
2323 >     176,   176,   242,   176,   242,   248,   248,   176,   248,   176,
2324 >     176,   176,   176,   177,   176,   177,   176,   176,   248,   248,
2325 >     110,   250,   131,   248,   176,   176,   176,   176,   239,   239,
2326 >     242,   242,   356,   242,   242,   242,   242,   242,   240,   350,
2327 >     242,   415,   242,   240,   419,   239,   336,   242,   242,   242,
2328 >     240,   340,   176,   239,   241,   131,   131,   239,   239,   242,
2329 >     242,   313,   242,   242,   242,   309,   242,   240,   301,   239,
2330 >     242,   242,   242,   240,   365,   176,   176,   131,   176,   176,
2331 >     248,   239,   131,   176,   131,   131,   131,   131,   131,   131,
2332 >     149,   150,   261,   262,   149,   150,   263,   264,   131,   131,
2333 >     110,   131,   131,   239,   239,   242,   380,   242,   240,   376,
2334 >     239,   242,   389,   240,   386,   131,   239,   239,   239,   239,
2335 >     239,   239,   239,   153,   154,   155,   156,   157,   247,   248,
2336       239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2337 <     239,   239,   239,   110,   110,   248,   110,   110,   110,   110,
2338 <     131,   110,   110,   248,   248,   250,   239,   131,   194,   195,
2339 <     131,   174,   242,   131,   131,   131,   131,   110,   131,   131,
2340 <     239,   131,   131,   239,   239,   131,   131,   242,   239,   239,
2337 >     239,   110,   110,   248,   110,   110,   110,   110,   131,   110,
2338 >     110,   248,   248,   250,   239,   131,   197,   198,   131,   176,
2339 >     242,   131,   131,   131,   131,   110,   131,   131,   131,   239,
2340 >     131,   131,   239,   239,   131,   131,   242,   239,   239,   239,
2341       239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2342       239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2343 <     239,   239,   239,   239,   239,   239,   239,    61,   181,   182,
2344 <     183,   184,   185,   187,   188,   191,   192,   193,   196,   198,
2345 <     199,   200,   202,   203,   204,   207,   213,   492,   493,   239,
2346 <      61,   181,   182,   183,   184,   185,   187,   188,   191,   192,
2347 <     193,   196,   198,   199,   200,   202,   203,   204,   207,   213,
2348 <     488,   489,   239,   239,   239,   239,   239,   239,   239,   239,
2349 <     239,   239,   239,   239,   239,   239,   239,    14,    15,    16,
2350 <     249,   250,   239,   239,   239,   239,   239,   239,   239,   242,
2351 <     248,   174,   242,   131,   131,   239,   131,   174,   242,   131,
2352 <     110,   131,   131,   131,   239,   131,   242,   131,   239,   242,
2353 <     131,   131,   110,   340,   341,   239,   239,   239,     1,   100,
2354 <     164,   237,   287,   288,   289,   290,   291,   239,   239,   131,
2355 <     174,   242,   131,   131,   131,   242,   131,   239,   131,   131,
2390 <     131,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2391 <     239,   239,   239,   239,   239,   239,   147,   148,   261,   262,
2392 <     239,   239,   239,   239,   131,   242,   131,   239,   131,   242,
2393 <     239,   239,   247,   247,   247,   247,   247,   239,   239,   239,
2343 >     239,   239,   239,   239,   239,   239,   239,   239,   239,    60,
2344 >     183,   184,   185,   186,   187,   190,   191,   194,   195,   196,
2345 >     199,   201,   202,   203,   205,   207,   208,   211,   217,   499,
2346 >     500,   239,    60,   183,   184,   185,   186,   187,   190,   191,
2347 >     194,   195,   196,   199,   201,   202,   203,   205,   207,   208,
2348 >     211,   217,   495,   496,   239,   239,   239,   239,   239,   239,
2349 >     239,   239,   239,   239,   239,   239,   239,   239,   239,    13,
2350 >      14,    15,   249,   250,   239,   239,   239,   239,   239,   239,
2351 >     239,   131,   176,   242,   131,   110,   131,   131,   131,   239,
2352 >     131,   242,   131,   239,   242,   131,   131,   110,   343,   344,
2353 >     239,   239,     1,   100,   166,   237,   290,   291,   292,   293,
2354 >     294,   239,   239,   131,   176,   242,   131,   131,   131,   242,
2355 >     131,   239,   131,   131,   131,   239,   239,   239,   239,   239,
2356       239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2357 <     239,   239,   239,   239,   239,    10,    12,   219,   402,   403,
2357 >     239,   243,   239,   243,   239,   239,   239,   239,   239,   131,
2358 >     242,   131,   239,   131,   242,   239,   239,   247,   247,   247,
2359 >     247,   247,   239,   239,   239,   239,   239,   239,   239,   239,
2360       239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2361 <     239,   136,   432,   433,   239,   243,   239,   243,   249,   249,
2362 <     249,    11,   176,   512,   513,   239,   239,    11,   176,   506,
2363 <     507,   239,   239,   239,   239,    20,    44,    53,    59,    75,
2364 <     101,   109,   150,   168,   354,   355,   239,   239,   239,   239,
2365 <     239,   239,   136,   412,   413,   239,    61,   201,   205,   334,
2366 <     335,   239,   239,   179,   243,   339,   239,   242,   292,   242,
2367 <     240,   288,   239,   239,     5,    32,    51,    57,    74,    98,
2368 <     105,   119,   137,   139,   140,   189,   199,   208,   212,   214,
2369 <     224,   234,   311,   312,   239,   239,   239,    61,   181,   182,
2370 <     183,   184,   185,   187,   188,   191,   192,   193,   196,   198,
2371 <     199,   200,   202,   203,   204,   207,   213,   307,   308,   239,
2372 <     239,   239,   239,   239,   243,   239,    74,   149,   180,   189,
2373 <     196,   208,   210,   211,   224,   234,   378,   379,   239,   239,
2374 <      74,   149,   180,   189,   196,   208,   210,   211,   224,   234,
2375 <     387,   388,   239,   243,   239,   243,   493,   489,   239,   243,
2376 <     239,   243,   239,   243,   239,   243,   239,   243,   110,   341,
2377 <     239,   131,   242,   209,   250,   239,   239,   243,   239,   243,
2378 <     262,   239,   243,   239,   243,   403,   433,   513,   507,   355,
2379 <     413,   335,   239,    51,    72,    74,   115,   188,   189,   225,
2380 <     293,   294,   239,   239,   312,   308,   379,   388,   239,   243,
2417 <     294
2361 >      10,    12,   209,   222,   405,   406,   239,   239,   239,   239,
2362 >     239,   239,   239,   239,   239,   239,   239,   239,   136,   436,
2363 >     437,   239,   243,   239,   243,   249,   249,   249,   239,   239,
2364 >      19,    41,    51,    58,    74,   101,   109,   152,   170,   357,
2365 >     358,   239,   239,   239,   239,   239,   239,   136,   416,   417,
2366 >     239,    60,   204,   209,   337,   338,   239,   239,   181,   243,
2367 >     342,   239,   242,   295,   242,   240,   291,   239,   239,     5,
2368 >      31,    48,    56,    73,    98,   105,   119,   137,   139,   140,
2369 >     192,   202,   206,   212,   216,   218,   227,   234,   314,   315,
2370 >     239,   239,   239,    60,   183,   184,   185,   186,   187,   190,
2371 >     191,   194,   195,   196,   199,   201,   202,   203,   205,   207,
2372 >     208,   211,   217,   310,   311,   239,   239,   239,   239,   262,
2373 >     264,   239,    73,   151,   182,   192,   199,   212,   214,   215,
2374 >     227,   234,   381,   382,   239,   239,    73,   151,   182,   192,
2375 >     199,   212,   214,   215,   227,   234,   390,   391,   239,   243,
2376 >     239,   243,   500,   496,   239,   243,   239,   243,   239,   243,
2377 >     110,   344,   239,   131,   242,   213,   250,   239,   239,   243,
2378 >     239,   243,   239,   243,   239,   243,   406,   437,   358,   417,
2379 >     338,   239,    48,    71,    73,   115,   191,   192,   228,   296,
2380 >     297,   239,   239,   315,   311,   382,   391,   239,   243,   297
2381   };
2382  
2383   #define yyerrok         (yyerrstatus = 0)
# Line 2444 | Line 2407 | static const yytype_uint16 yystos[] =
2407  
2408   #define YYRECOVERING()  (!!yyerrstatus)
2409  
2410 < #define YYBACKUP(Token, Value)                                  \
2411 < do                                                              \
2412 <  if (yychar == YYEMPTY && yylen == 1)                          \
2413 <    {                                                           \
2414 <      yychar = (Token);                                         \
2415 <      yylval = (Value);                                         \
2416 <      YYPOPSTACK (1);                                           \
2417 <      goto yybackup;                                            \
2418 <    }                                                           \
2419 <  else                                                          \
2420 <    {                                                           \
2410 > #define YYBACKUP(Token, Value)                                  \
2411 > do                                                              \
2412 >  if (yychar == YYEMPTY)                                        \
2413 >    {                                                           \
2414 >      yychar = (Token);                                         \
2415 >      yylval = (Value);                                         \
2416 >      YYPOPSTACK (yylen);                                       \
2417 >      yystate = *yyssp;                                         \
2418 >      goto yybackup;                                            \
2419 >    }                                                           \
2420 >  else                                                          \
2421 >    {                                                           \
2422        yyerror (YY_("syntax error: cannot back up")); \
2423        YYERROR;                                                  \
2424      }                                                           \
# Line 2464 | Line 2428 | while (YYID (0))
2428   #define YYTERROR        1
2429   #define YYERRCODE       256
2430  
2467
2431   /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2432     If N is 0, then set CURRENT to the empty location which ends
2433     the previous symbol: RHS[0] (always defined).  */
2434  
2472 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2435   #ifndef YYLLOC_DEFAULT
2436 < # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2437 <    do                                                                  \
2438 <      if (YYID (N))                                                    \
2439 <        {                                                               \
2440 <          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2441 <          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
2442 <          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
2443 <          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
2444 <        }                                                               \
2445 <      else                                                              \
2446 <        {                                                               \
2447 <          (Current).first_line   = (Current).last_line   =              \
2448 <            YYRHSLOC (Rhs, 0).last_line;                                \
2449 <          (Current).first_column = (Current).last_column =              \
2450 <            YYRHSLOC (Rhs, 0).last_column;                              \
2451 <        }                                                               \
2436 > # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2437 >    do                                                                  \
2438 >      if (YYID (N))                                                     \
2439 >        {                                                               \
2440 >          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2441 >          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
2442 >          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
2443 >          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
2444 >        }                                                               \
2445 >      else                                                              \
2446 >        {                                                               \
2447 >          (Current).first_line   = (Current).last_line   =              \
2448 >            YYRHSLOC (Rhs, 0).last_line;                                \
2449 >          (Current).first_column = (Current).last_column =              \
2450 >            YYRHSLOC (Rhs, 0).last_column;                              \
2451 >        }                                                               \
2452      while (YYID (0))
2453   #endif
2454  
2455 + #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2456 +
2457 +
2458  
2459   /* This macro is provided for backward compatibility. */
2460  
# Line 2549 | Line 2514 | yy_symbol_value_print (yyoutput, yytype,
2514      YYSTYPE const * const yyvaluep;
2515   #endif
2516   {
2517 +  FILE *yyo = yyoutput;
2518 +  YYUSE (yyo);
2519    if (!yyvaluep)
2520      return;
2521   # ifdef YYPRINT
# Line 2800 | Line 2767 | static int
2767   yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
2768                  yytype_int16 *yyssp, int yytoken)
2769   {
2770 <  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
2770 >  YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
2771    YYSIZE_T yysize = yysize0;
2772    YYSIZE_T yysize1;
2773    enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2774    /* Internationalized format string. */
2775 <  const char *yyformat = 0;
2775 >  const char *yyformat = YY_NULL;
2776    /* Arguments of yyformat. */
2777    char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2778    /* Number of reported tokens (one for the "unexpected", one per
# Line 2865 | Line 2832 | yysyntax_error (YYSIZE_T *yymsg_alloc, c
2832                      break;
2833                    }
2834                  yyarg[yycount++] = yytname[yyx];
2835 <                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2835 >                yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
2836                  if (! (yysize <= yysize1
2837                         && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
2838                    return 2;
# Line 2957 | Line 2924 | yydestruct (yymsg, yytype, yyvaluep)
2924   }
2925  
2926  
2960 /* Prevent warnings from -Wmissing-prototypes.  */
2961 #ifdef YYPARSE_PARAM
2962 #if defined __STDC__ || defined __cplusplus
2963 int yyparse (void *YYPARSE_PARAM);
2964 #else
2965 int yyparse ();
2966 #endif
2967 #else /* ! YYPARSE_PARAM */
2968 #if defined __STDC__ || defined __cplusplus
2969 int yyparse (void);
2970 #else
2971 int yyparse ();
2972 #endif
2973 #endif /* ! YYPARSE_PARAM */
2927  
2928  
2929   /* The lookahead symbol.  */
# Line 3017 | Line 2970 | yyparse ()
2970         `yyss': related to states.
2971         `yyvs': related to semantic values.
2972  
2973 <       Refer to the stacks thru separate pointers, to allow yyoverflow
2973 >       Refer to the stacks through separate pointers, to allow yyoverflow
2974         to reallocate them elsewhere.  */
2975  
2976      /* The state stack.  */
# Line 3071 | Line 3024 | yyparse ()
3024       The wasted elements are never initialized.  */
3025    yyssp = yyss;
3026    yyvsp = yyvs;
3074
3027    goto yysetstate;
3028  
3029   /*------------------------------------------------------------.
# Line 3248 | Line 3200 | yyreduce:
3200    YY_REDUCE_PRINT (yyn);
3201    switch (yyn)
3202      {
3203 <        case 27:
3204 <
3205 < /* Line 1806 of yacc.c  */
3254 < #line 404 "ircd_parser.y"
3203 >        case 26:
3204 > /* Line 1787 of yacc.c  */
3205 > #line 381 "conf_parser.y"
3206      { (yyval.number) = 0; }
3207      break;
3208  
3209 <  case 29:
3210 <
3211 < /* Line 1806 of yacc.c  */
3261 < #line 406 "ircd_parser.y"
3209 >  case 28:
3210 > /* Line 1787 of yacc.c  */
3211 > #line 383 "conf_parser.y"
3212      {
3213                          (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number);
3214                  }
3215      break;
3216  
3217 <  case 30:
3218 <
3219 < /* Line 1806 of yacc.c  */
3270 < #line 410 "ircd_parser.y"
3217 >  case 29:
3218 > /* Line 1787 of yacc.c  */
3219 > #line 387 "conf_parser.y"
3220      {
3221                          (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number);
3222                  }
3223      break;
3224  
3225 <  case 31:
3226 <
3227 < /* Line 1806 of yacc.c  */
3279 < #line 414 "ircd_parser.y"
3225 >  case 30:
3226 > /* Line 1787 of yacc.c  */
3227 > #line 391 "conf_parser.y"
3228      {
3229                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 + (yyvsp[(3) - (3)].number);
3230                  }
3231      break;
3232  
3233 <  case 32:
3234 <
3235 < /* Line 1806 of yacc.c  */
3288 < #line 418 "ircd_parser.y"
3233 >  case 31:
3234 > /* Line 1787 of yacc.c  */
3235 > #line 395 "conf_parser.y"
3236      {
3237                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 + (yyvsp[(3) - (3)].number);
3238                  }
3239      break;
3240  
3241 <  case 33:
3242 <
3243 < /* Line 1806 of yacc.c  */
3297 < #line 422 "ircd_parser.y"
3241 >  case 32:
3242 > /* Line 1787 of yacc.c  */
3243 > #line 399 "conf_parser.y"
3244      {
3245                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 + (yyvsp[(3) - (3)].number);
3246                  }
3247      break;
3248  
3249 <  case 34:
3250 <
3251 < /* Line 1806 of yacc.c  */
3306 < #line 426 "ircd_parser.y"
3249 >  case 33:
3250 > /* Line 1787 of yacc.c  */
3251 > #line 403 "conf_parser.y"
3252      {
3253                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 + (yyvsp[(3) - (3)].number);
3254                  }
3255      break;
3256  
3257 <  case 35:
3258 <
3259 < /* Line 1806 of yacc.c  */
3315 < #line 431 "ircd_parser.y"
3257 >  case 34:
3258 > /* Line 1787 of yacc.c  */
3259 > #line 408 "conf_parser.y"
3260      { (yyval.number) = 0; }
3261      break;
3262  
3263 <  case 37:
3264 <
3265 < /* Line 1806 of yacc.c  */
3322 < #line 432 "ircd_parser.y"
3263 >  case 36:
3264 > /* Line 1787 of yacc.c  */
3265 > #line 409 "conf_parser.y"
3266      { (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number); }
3267      break;
3268  
3269 <  case 38:
3270 <
3271 < /* Line 1806 of yacc.c  */
3329 < #line 433 "ircd_parser.y"
3269 >  case 37:
3270 > /* Line 1787 of yacc.c  */
3271 > #line 410 "conf_parser.y"
3272      { (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number); }
3273      break;
3274  
3275 <  case 39:
3276 <
3277 < /* Line 1806 of yacc.c  */
3336 < #line 434 "ircd_parser.y"
3275 >  case 38:
3276 > /* Line 1787 of yacc.c  */
3277 > #line 411 "conf_parser.y"
3278      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 + (yyvsp[(3) - (3)].number); }
3279      break;
3280  
3281 <  case 40:
3282 <
3283 < /* Line 1806 of yacc.c  */
3343 < #line 435 "ircd_parser.y"
3281 >  case 39:
3282 > /* Line 1787 of yacc.c  */
3283 > #line 412 "conf_parser.y"
3284      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 * 1024 + (yyvsp[(3) - (3)].number); }
3285      break;
3286  
3287 <  case 47:
3288 <
3289 < /* Line 1806 of yacc.c  */
3350 < #line 449 "ircd_parser.y"
3287 >  case 46:
3288 > /* Line 1787 of yacc.c  */
3289 > #line 426 "conf_parser.y"
3290      {
3291    if (conf_parser_ctx.pass == 2)
3292      add_conf_module(libio_basename(yylval.string));
3293   }
3294      break;
3295  
3296 <  case 48:
3297 <
3298 < /* Line 1806 of yacc.c  */
3360 < #line 455 "ircd_parser.y"
3296 >  case 47:
3297 > /* Line 1787 of yacc.c  */
3298 > #line 432 "conf_parser.y"
3299      {
3300    if (conf_parser_ctx.pass == 2)
3301      mod_add_path(yylval.string);
3302   }
3303      break;
3304  
3305 <  case 65:
3306 <
3307 < /* Line 1806 of yacc.c  */
3370 < #line 475 "ircd_parser.y"
3305 >  case 71:
3306 > /* Line 1787 of yacc.c  */
3307 > #line 457 "conf_parser.y"
3308      {
3309   #ifdef HAVE_LIBCRYPTO
3310 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3311 <    ServerInfo.tls_version = 0;
3310 >  if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
3311 >    SSL_CTX_clear_options(ServerInfo.client_ctx, SSL_OP_NO_SSLv3);
3312   #endif
3313   }
3314      break;
3315  
3316 <  case 66:
3317 <
3318 < /* Line 1806 of yacc.c  */
3382 < #line 481 "ircd_parser.y"
3316 >  case 72:
3317 > /* Line 1787 of yacc.c  */
3318 > #line 463 "conf_parser.y"
3319      {
3320   #ifdef HAVE_LIBCRYPTO
3321 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3322 <  {
3387 <    if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_SSLV3))
3388 <      SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_SSLv3);
3389 <    if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_TLSV1))
3390 <      SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_TLSv1);
3391 <  }
3321 >  if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
3322 >    SSL_CTX_clear_options(ServerInfo.client_ctx, SSL_OP_NO_TLSv1);
3323   #endif
3324   }
3325      break;
3326  
3327 <  case 69:
3328 <
3329 < /* Line 1806 of yacc.c  */
3399 < #line 495 "ircd_parser.y"
3327 >  case 75:
3328 > /* Line 1787 of yacc.c  */
3329 > #line 472 "conf_parser.y"
3330      {
3331   #ifdef HAVE_LIBCRYPTO
3332 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3333 <    ServerInfo.tls_version |= CONF_SERVER_INFO_TLS_VERSION_SSLV3;
3332 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3333 >    SSL_CTX_clear_options(ServerInfo.server_ctx, SSL_OP_NO_SSLv3);
3334   #endif
3335   }
3336      break;
3337  
3338 <  case 70:
3339 <
3340 < /* Line 1806 of yacc.c  */
3411 < #line 501 "ircd_parser.y"
3338 >  case 76:
3339 > /* Line 1787 of yacc.c  */
3340 > #line 478 "conf_parser.y"
3341      {
3342   #ifdef HAVE_LIBCRYPTO
3343 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3344 <    ServerInfo.tls_version |= CONF_SERVER_INFO_TLS_VERSION_TLSV1;
3343 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3344 >    SSL_CTX_clear_options(ServerInfo.server_ctx, SSL_OP_NO_TLSv1);
3345   #endif
3346   }
3347      break;
3348  
3349 <  case 71:
3350 <
3351 < /* Line 1806 of yacc.c  */
3423 < #line 509 "ircd_parser.y"
3349 >  case 77:
3350 > /* Line 1787 of yacc.c  */
3351 > #line 486 "conf_parser.y"
3352      {
3353   #ifdef HAVE_LIBCRYPTO
3354    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3432 | Line 3360 | yyreduce:
3360      }
3361  
3362      if (SSL_CTX_use_certificate_file(ServerInfo.server_ctx, yylval.string,
3363 +                                     SSL_FILETYPE_PEM) <= 0 ||
3364 +        SSL_CTX_use_certificate_file(ServerInfo.client_ctx, yylval.string,
3365                                       SSL_FILETYPE_PEM) <= 0)
3366      {
3367        yyerror(ERR_lib_error_string(ERR_get_error()));
# Line 3439 | Line 3369 | yyreduce:
3369      }
3370  
3371      if (SSL_CTX_use_PrivateKey_file(ServerInfo.server_ctx, ServerInfo.rsa_private_key_file,
3372 +                                    SSL_FILETYPE_PEM) <= 0 ||
3373 +        SSL_CTX_use_PrivateKey_file(ServerInfo.client_ctx, ServerInfo.rsa_private_key_file,
3374                                      SSL_FILETYPE_PEM) <= 0)
3375      {
3376        yyerror(ERR_lib_error_string(ERR_get_error()));
3377        break;
3378      }
3379  
3380 <    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx))
3380 >    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx) ||
3381 >        !SSL_CTX_check_private_key(ServerInfo.client_ctx))
3382      {
3383        yyerror(ERR_lib_error_string(ERR_get_error()));
3384        break;
# Line 3455 | Line 3388 | yyreduce:
3388   }
3389      break;
3390  
3391 <  case 72:
3392 <
3393 < /* Line 1806 of yacc.c  */
3461 < #line 543 "ircd_parser.y"
3391 >  case 78:
3392 > /* Line 1787 of yacc.c  */
3393 > #line 525 "conf_parser.y"
3394      {
3395   #ifdef HAVE_LIBCRYPTO
3396    if (conf_parser_ctx.pass == 1)
# Line 3485 | Line 3417 | yyreduce:
3417        break;
3418      }
3419  
3420 <    ServerInfo.rsa_private_key = (RSA *)PEM_read_bio_RSAPrivateKey(file, NULL,
3489 <      0, NULL);
3420 >    ServerInfo.rsa_private_key = PEM_read_bio_RSAPrivateKey(file, NULL, 0, NULL);
3421  
3422      BIO_set_close(file, BIO_CLOSE);
3423      BIO_free(file);
# Line 3519 | Line 3450 | yyreduce:
3450   }
3451      break;
3452  
3453 <  case 73:
3453 >  case 79:
3454 > /* Line 1787 of yacc.c  */
3455 > #line 584 "conf_parser.y"
3456 >    {
3457 > /* TBD - XXX: error reporting */
3458 > #ifdef HAVE_LIBCRYPTO
3459 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3460 >  {
3461 >    BIO *file = BIO_new_file(yylval.string, "r");
3462  
3463 < /* Line 1806 of yacc.c  */
3464 < #line 603 "ircd_parser.y"
3463 >    if (file)
3464 >    {
3465 >      DH *dh = PEM_read_bio_DHparams(file, NULL, NULL, NULL);
3466 >
3467 >      BIO_free(file);
3468 >
3469 >      if (dh)
3470 >      {
3471 >        if (DH_size(dh) < 128)
3472 >          ilog(LOG_TYPE_IRCD, "Ignoring serverinfo::ssl_dh_param_file -- need at least a 1024 bit DH prime size");
3473 >        else
3474 >          SSL_CTX_set_tmp_dh(ServerInfo.server_ctx, dh);
3475 >
3476 >        DH_free(dh);
3477 >      }
3478 >    }
3479 >  }
3480 > #endif
3481 > }
3482 >    break;
3483 >
3484 >  case 80:
3485 > /* Line 1787 of yacc.c  */
3486 > #line 612 "conf_parser.y"
3487 >    {
3488 > #ifdef HAVE_LIBCRYPTO
3489 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3490 >    SSL_CTX_set_cipher_list(ServerInfo.server_ctx, yylval.string);
3491 > #endif
3492 > }
3493 >    break;
3494 >
3495 >  case 81:
3496 > /* Line 1787 of yacc.c  */
3497 > #line 620 "conf_parser.y"
3498      {
3499    /* this isn't rehashable */
3500    if (conf_parser_ctx.pass == 2 && !ServerInfo.name)
# Line 3538 | Line 3510 | yyreduce:
3510   }
3511      break;
3512  
3513 <  case 74:
3514 <
3515 < /* Line 1806 of yacc.c  */
3544 < #line 618 "ircd_parser.y"
3513 >  case 82:
3514 > /* Line 1787 of yacc.c  */
3515 > #line 635 "conf_parser.y"
3516      {
3517    /* this isn't rehashable */
3518    if (conf_parser_ctx.pass == 2 && !ServerInfo.sid)
# Line 3557 | Line 3528 | yyreduce:
3528   }
3529      break;
3530  
3531 <  case 75:
3532 <
3533 < /* Line 1806 of yacc.c  */
3563 < #line 633 "ircd_parser.y"
3531 >  case 83:
3532 > /* Line 1787 of yacc.c  */
3533 > #line 650 "conf_parser.y"
3534      {
3535    if (conf_parser_ctx.pass == 2)
3536    {
# Line 3570 | Line 3540 | yyreduce:
3540   }
3541      break;
3542  
3543 <  case 76:
3544 <
3545 < /* Line 1806 of yacc.c  */
3576 < #line 642 "ircd_parser.y"
3543 >  case 84:
3544 > /* Line 1787 of yacc.c  */
3545 > #line 659 "conf_parser.y"
3546      {
3547    if (conf_parser_ctx.pass == 2)
3548    {
# Line 3588 | Line 3557 | yyreduce:
3557   }
3558      break;
3559  
3560 <  case 77:
3561 <
3562 < /* Line 1806 of yacc.c  */
3594 < #line 656 "ircd_parser.y"
3560 >  case 85:
3561 > /* Line 1787 of yacc.c  */
3562 > #line 673 "conf_parser.y"
3563      {
3564    if (conf_parser_ctx.pass == 2)
3565    {
# Line 3601 | Line 3569 | yyreduce:
3569   }
3570      break;
3571  
3572 <  case 78:
3573 <
3574 < /* Line 1806 of yacc.c  */
3607 < #line 665 "ircd_parser.y"
3572 >  case 86:
3573 > /* Line 1787 of yacc.c  */
3574 > #line 682 "conf_parser.y"
3575      {
3576    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3577    {
# Line 3633 | Line 3600 | yyreduce:
3600   }
3601      break;
3602  
3603 <  case 79:
3604 <
3605 < /* Line 1806 of yacc.c  */
3639 < #line 693 "ircd_parser.y"
3603 >  case 87:
3604 > /* Line 1787 of yacc.c  */
3605 > #line 710 "conf_parser.y"
3606      {
3607   #ifdef IPV6
3608    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
# Line 3667 | Line 3633 | yyreduce:
3633   }
3634      break;
3635  
3636 <  case 80:
3637 <
3638 < /* Line 1806 of yacc.c  */
3673 < #line 723 "ircd_parser.y"
3636 >  case 88:
3637 > /* Line 1787 of yacc.c  */
3638 > #line 740 "conf_parser.y"
3639      {
3640    if (conf_parser_ctx.pass == 2)
3641    {
# Line 3694 | Line 3659 | yyreduce:
3659   }
3660      break;
3661  
3662 <  case 81:
3663 <
3664 < /* Line 1806 of yacc.c  */
3700 < #line 746 "ircd_parser.y"
3662 >  case 89:
3663 > /* Line 1787 of yacc.c  */
3664 > #line 763 "conf_parser.y"
3665      {
3666    if (conf_parser_ctx.pass == 2)
3667      ServerInfo.hub = yylval.number;
3668   }
3669      break;
3670  
3671 <  case 89:
3672 <
3673 < /* Line 1806 of yacc.c  */
3710 < #line 761 "ircd_parser.y"
3671 >  case 97:
3672 > /* Line 1787 of yacc.c  */
3673 > #line 778 "conf_parser.y"
3674      {
3675    if (conf_parser_ctx.pass == 2)
3676    {
# Line 3717 | Line 3680 | yyreduce:
3680   }
3681      break;
3682  
3683 <  case 90:
3684 <
3685 < /* Line 1806 of yacc.c  */
3723 < #line 770 "ircd_parser.y"
3683 >  case 98:
3684 > /* Line 1787 of yacc.c  */
3685 > #line 787 "conf_parser.y"
3686      {
3687    if (conf_parser_ctx.pass == 2)
3688    {
# Line 3730 | Line 3692 | yyreduce:
3692   }
3693      break;
3694  
3695 <  case 91:
3696 <
3697 < /* Line 1806 of yacc.c  */
3736 < #line 779 "ircd_parser.y"
3695 >  case 99:
3696 > /* Line 1787 of yacc.c  */
3697 > #line 796 "conf_parser.y"
3698      {
3699    if (conf_parser_ctx.pass == 2)
3700    {
# Line 3743 | Line 3704 | yyreduce:
3704   }
3705      break;
3706  
3707 <  case 99:
3708 <
3709 < /* Line 1806 of yacc.c  */
3749 < #line 797 "ircd_parser.y"
3707 >  case 106:
3708 > /* Line 1787 of yacc.c  */
3709 > #line 814 "conf_parser.y"
3710      {
3711    if (conf_parser_ctx.pass == 2)
3712      ConfigLoggingEntry.use_logging = yylval.number;
3713   }
3714      break;
3715  
3716 <  case 100:
3717 <
3718 < /* Line 1806 of yacc.c  */
3759 < #line 803 "ircd_parser.y"
3760 <    {
3761 <  if (conf_parser_ctx.pass == 2)
3762 <    ConfigLoggingEntry.timestamp = yylval.number;
3763 < }
3764 <    break;
3765 <
3766 <  case 101:
3767 <
3768 < /* Line 1806 of yacc.c  */
3769 < #line 809 "ircd_parser.y"
3716 >  case 107:
3717 > /* Line 1787 of yacc.c  */
3718 > #line 820 "conf_parser.y"
3719      {
3720    lfile[0] = '\0';
3721    ltype = 0;
# Line 3774 | Line 3723 | yyreduce:
3723   }
3724      break;
3725  
3726 <  case 102:
3727 <
3728 < /* Line 1806 of yacc.c  */
3780 < #line 814 "ircd_parser.y"
3726 >  case 108:
3727 > /* Line 1787 of yacc.c  */
3728 > #line 825 "conf_parser.y"
3729      {
3730    if (conf_parser_ctx.pass == 2 && ltype > 0)
3731      log_add_file(ltype, lsize, lfile);
3732   }
3733      break;
3734  
3735 <  case 109:
3736 <
3737 < /* Line 1806 of yacc.c  */
3790 < #line 826 "ircd_parser.y"
3735 >  case 115:
3736 > /* Line 1787 of yacc.c  */
3737 > #line 837 "conf_parser.y"
3738      {
3739    strlcpy(lfile, yylval.string, sizeof(lfile));
3740   }
3741      break;
3742  
3743 <  case 110:
3744 <
3745 < /* Line 1806 of yacc.c  */
3799 < #line 831 "ircd_parser.y"
3743 >  case 116:
3744 > /* Line 1787 of yacc.c  */
3745 > #line 842 "conf_parser.y"
3746      {
3747    lsize = (yyvsp[(3) - (4)].number);
3748   }
3749      break;
3750  
3751 <  case 111:
3752 <
3753 < /* Line 1806 of yacc.c  */
3808 < #line 834 "ircd_parser.y"
3751 >  case 117:
3752 > /* Line 1787 of yacc.c  */
3753 > #line 845 "conf_parser.y"
3754      {
3755    lsize = 0;
3756   }
3757      break;
3758  
3759 <  case 112:
3760 <
3761 < /* Line 1806 of yacc.c  */
3817 < #line 839 "ircd_parser.y"
3759 >  case 118:
3760 > /* Line 1787 of yacc.c  */
3761 > #line 850 "conf_parser.y"
3762      {
3763    if (conf_parser_ctx.pass == 2)
3764      ltype = 0;
3765   }
3766      break;
3767  
3768 <  case 116:
3769 <
3770 < /* Line 1806 of yacc.c  */
3827 < #line 846 "ircd_parser.y"
3768 >  case 122:
3769 > /* Line 1787 of yacc.c  */
3770 > #line 857 "conf_parser.y"
3771      {
3772    if (conf_parser_ctx.pass == 2)
3773      ltype = LOG_TYPE_USER;
3774   }
3775      break;
3776  
3777 <  case 117:
3778 <
3779 < /* Line 1806 of yacc.c  */
3837 < #line 850 "ircd_parser.y"
3777 >  case 123:
3778 > /* Line 1787 of yacc.c  */
3779 > #line 861 "conf_parser.y"
3780      {
3781    if (conf_parser_ctx.pass == 2)
3782      ltype = LOG_TYPE_OPER;
3783   }
3784      break;
3785  
3786 <  case 118:
3787 <
3788 < /* Line 1806 of yacc.c  */
3847 < #line 854 "ircd_parser.y"
3786 >  case 124:
3787 > /* Line 1787 of yacc.c  */
3788 > #line 865 "conf_parser.y"
3789      {
3790    if (conf_parser_ctx.pass == 2)
3791      ltype = LOG_TYPE_GLINE;
3792   }
3793      break;
3794  
3795 <  case 119:
3796 <
3797 < /* Line 1806 of yacc.c  */
3857 < #line 858 "ircd_parser.y"
3795 >  case 125:
3796 > /* Line 1787 of yacc.c  */
3797 > #line 869 "conf_parser.y"
3798      {
3799    if (conf_parser_ctx.pass == 2)
3800      ltype = LOG_TYPE_DLINE;
3801   }
3802      break;
3803  
3804 <  case 120:
3805 <
3806 < /* Line 1806 of yacc.c  */
3867 < #line 862 "ircd_parser.y"
3804 >  case 126:
3805 > /* Line 1787 of yacc.c  */
3806 > #line 873 "conf_parser.y"
3807      {
3808    if (conf_parser_ctx.pass == 2)
3809      ltype = LOG_TYPE_KLINE;
3810   }
3811      break;
3812  
3813 <  case 121:
3814 <
3815 < /* Line 1806 of yacc.c  */
3877 < #line 866 "ircd_parser.y"
3813 >  case 127:
3814 > /* Line 1787 of yacc.c  */
3815 > #line 877 "conf_parser.y"
3816      {
3817    if (conf_parser_ctx.pass == 2)
3818      ltype = LOG_TYPE_KILL;
3819   }
3820      break;
3821  
3822 <  case 122:
3823 <
3824 < /* Line 1806 of yacc.c  */
3887 < #line 870 "ircd_parser.y"
3822 >  case 128:
3823 > /* Line 1787 of yacc.c  */
3824 > #line 881 "conf_parser.y"
3825      {
3826    if (conf_parser_ctx.pass == 2)
3827      ltype = LOG_TYPE_DEBUG;
3828   }
3829      break;
3830  
3831 <  case 123:
3832 <
3833 < /* Line 1806 of yacc.c  */
3897 < #line 880 "ircd_parser.y"
3831 >  case 129:
3832 > /* Line 1787 of yacc.c  */
3833 > #line 891 "conf_parser.y"
3834      {
3835    if (conf_parser_ctx.pass == 2)
3836    {
# Line 3910 | Line 3846 | yyreduce:
3846   }
3847      break;
3848  
3849 <  case 124:
3850 <
3851 < /* Line 1806 of yacc.c  */
3916 < #line 893 "ircd_parser.y"
3849 >  case 130:
3850 > /* Line 1787 of yacc.c  */
3851 > #line 904 "conf_parser.y"
3852      {
3853    if (conf_parser_ctx.pass == 2)
3854    {
# Line 3949 | Line 3884 | yyreduce:
3884        else
3885          DupString(new_aconf->host, "*");
3886  
3887 <      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->ipnum,
3887 >      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->addr,
3888                                       &new_aconf->bits);
3889  
3890        conf_add_class_to_conf(new_conf, class_name);
# Line 3999 | Line 3934 | yyreduce:
3934   }
3935      break;
3936  
3937 <  case 136:
3938 <
3939 < /* Line 1806 of yacc.c  */
4005 < #line 983 "ircd_parser.y"
3937 >  case 142:
3938 > /* Line 1787 of yacc.c  */
3939 > #line 994 "conf_parser.y"
3940      {
3941    if (conf_parser_ctx.pass == 2)
3942    {
4009    if (strlen(yylval.string) > OPERNICKLEN)
4010      yylval.string[OPERNICKLEN] = '\0';
4011
3943      MyFree(yy_conf->name);
3944      DupString(yy_conf->name, yylval.string);
3945    }
3946   }
3947      break;
3948  
3949 <  case 137:
3950 <
3951 < /* Line 1806 of yacc.c  */
4021 < #line 995 "ircd_parser.y"
3949 >  case 143:
3950 > /* Line 1787 of yacc.c  */
3951 > #line 1003 "conf_parser.y"
3952      {
3953    if (conf_parser_ctx.pass == 2)
3954    {
# Line 4040 | Line 3970 | yyreduce:
3970        DupString(yy_aconf->user, userbuf);
3971        DupString(yy_aconf->host, hostbuf);
3972  
3973 <      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->ipnum,
3973 >      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->addr,
3974                                      &yy_aconf->bits);
3975      }
3976      else
# Line 4056 | Line 3986 | yyreduce:
3986   }
3987      break;
3988  
3989 <  case 138:
3990 <
3991 < /* Line 1806 of yacc.c  */
4062 < #line 1032 "ircd_parser.y"
3989 >  case 144:
3990 > /* Line 1787 of yacc.c  */
3991 > #line 1040 "conf_parser.y"
3992      {
3993    if (conf_parser_ctx.pass == 2)
3994    {
# Line 4072 | Line 4001 | yyreduce:
4001   }
4002      break;
4003  
4004 <  case 139:
4005 <
4006 < /* Line 1806 of yacc.c  */
4078 < #line 1044 "ircd_parser.y"
4004 >  case 145:
4005 > /* Line 1787 of yacc.c  */
4006 > #line 1052 "conf_parser.y"
4007      {
4008    if (conf_parser_ctx.pass == 2)
4009    {
# Line 4087 | Line 4015 | yyreduce:
4015   }
4016      break;
4017  
4018 <  case 140:
4019 <
4020 < /* Line 1806 of yacc.c  */
4093 < #line 1055 "ircd_parser.y"
4018 >  case 146:
4019 > /* Line 1787 of yacc.c  */
4020 > #line 1063 "conf_parser.y"
4021      {
4022   #ifdef HAVE_LIBCRYPTO
4023    if (conf_parser_ctx.pass == 2)
# Line 4133 | Line 4060 | yyreduce:
4060   }
4061      break;
4062  
4063 <  case 141:
4064 <
4065 < /* Line 1806 of yacc.c  */
4139 < #line 1097 "ircd_parser.y"
4063 >  case 147:
4064 > /* Line 1787 of yacc.c  */
4065 > #line 1105 "conf_parser.y"
4066      {
4067    if (conf_parser_ctx.pass == 2)
4068    {
# Line 4146 | Line 4072 | yyreduce:
4072   }
4073      break;
4074  
4075 <  case 142:
4076 <
4077 < /* Line 1806 of yacc.c  */
4152 < #line 1106 "ircd_parser.y"
4075 >  case 148:
4076 > /* Line 1787 of yacc.c  */
4077 > #line 1114 "conf_parser.y"
4078      {
4079    if (conf_parser_ctx.pass == 2)
4080      yy_aconf->modes = 0;
4081   }
4082      break;
4083  
4084 <  case 146:
4085 <
4086 < /* Line 1806 of yacc.c  */
4162 < #line 1113 "ircd_parser.y"
4084 >  case 152:
4085 > /* Line 1787 of yacc.c  */
4086 > #line 1121 "conf_parser.y"
4087      {
4088    if (conf_parser_ctx.pass == 2)
4089      yy_aconf->modes |= UMODE_BOTS;
4090   }
4091      break;
4092  
4093 <  case 147:
4094 <
4095 < /* Line 1806 of yacc.c  */
4172 < #line 1117 "ircd_parser.y"
4093 >  case 153:
4094 > /* Line 1787 of yacc.c  */
4095 > #line 1125 "conf_parser.y"
4096      {
4097    if (conf_parser_ctx.pass == 2)
4098      yy_aconf->modes |= UMODE_CCONN;
4099   }
4100      break;
4101  
4102 <  case 148:
4103 <
4104 < /* Line 1806 of yacc.c  */
4182 < #line 1121 "ircd_parser.y"
4102 >  case 154:
4103 > /* Line 1787 of yacc.c  */
4104 > #line 1129 "conf_parser.y"
4105      {
4106    if (conf_parser_ctx.pass == 2)
4107      yy_aconf->modes |= UMODE_CCONN_FULL;
4108   }
4109      break;
4110  
4111 <  case 149:
4112 <
4113 < /* Line 1806 of yacc.c  */
4192 < #line 1125 "ircd_parser.y"
4111 >  case 155:
4112 > /* Line 1787 of yacc.c  */
4113 > #line 1133 "conf_parser.y"
4114      {
4115    if (conf_parser_ctx.pass == 2)
4116      yy_aconf->modes |= UMODE_DEAF;
4117   }
4118      break;
4119  
4120 <  case 150:
4121 <
4122 < /* Line 1806 of yacc.c  */
4202 < #line 1129 "ircd_parser.y"
4120 >  case 156:
4121 > /* Line 1787 of yacc.c  */
4122 > #line 1137 "conf_parser.y"
4123      {
4124    if (conf_parser_ctx.pass == 2)
4125      yy_aconf->modes |= UMODE_DEBUG;
4126   }
4127      break;
4128  
4129 <  case 151:
4130 <
4131 < /* Line 1806 of yacc.c  */
4212 < #line 1133 "ircd_parser.y"
4129 >  case 157:
4130 > /* Line 1787 of yacc.c  */
4131 > #line 1141 "conf_parser.y"
4132      {
4133    if (conf_parser_ctx.pass == 2)
4134      yy_aconf->modes |= UMODE_FULL;
4135   }
4136      break;
4137  
4138 <  case 152:
4139 <
4140 < /* Line 1806 of yacc.c  */
4222 < #line 1137 "ircd_parser.y"
4138 >  case 158:
4139 > /* Line 1787 of yacc.c  */
4140 > #line 1145 "conf_parser.y"
4141      {
4142    if (conf_parser_ctx.pass == 2)
4143      yy_aconf->modes |= UMODE_HIDDEN;
4144   }
4145      break;
4146  
4147 <  case 153:
4148 <
4149 < /* Line 1806 of yacc.c  */
4232 < #line 1141 "ircd_parser.y"
4147 >  case 159:
4148 > /* Line 1787 of yacc.c  */
4149 > #line 1149 "conf_parser.y"
4150      {
4151    if (conf_parser_ctx.pass == 2)
4152      yy_aconf->modes |= UMODE_SKILL;
4153   }
4154      break;
4155  
4156 <  case 154:
4157 <
4158 < /* Line 1806 of yacc.c  */
4242 < #line 1145 "ircd_parser.y"
4156 >  case 160:
4157 > /* Line 1787 of yacc.c  */
4158 > #line 1153 "conf_parser.y"
4159      {
4160    if (conf_parser_ctx.pass == 2)
4161      yy_aconf->modes |= UMODE_NCHANGE;
4162   }
4163      break;
4164  
4165 <  case 155:
4166 <
4167 < /* Line 1806 of yacc.c  */
4252 < #line 1149 "ircd_parser.y"
4165 >  case 161:
4166 > /* Line 1787 of yacc.c  */
4167 > #line 1157 "conf_parser.y"
4168      {
4169    if (conf_parser_ctx.pass == 2)
4170      yy_aconf->modes |= UMODE_REJ;
4171   }
4172      break;
4173  
4174 <  case 156:
4175 <
4176 < /* Line 1806 of yacc.c  */
4262 < #line 1153 "ircd_parser.y"
4174 >  case 162:
4175 > /* Line 1787 of yacc.c  */
4176 > #line 1161 "conf_parser.y"
4177      {
4178    if (conf_parser_ctx.pass == 2)
4179      yy_aconf->modes |= UMODE_UNAUTH;
4180   }
4181      break;
4182  
4183 <  case 157:
4184 <
4185 < /* Line 1806 of yacc.c  */
4272 < #line 1157 "ircd_parser.y"
4183 >  case 163:
4184 > /* Line 1787 of yacc.c  */
4185 > #line 1165 "conf_parser.y"
4186      {
4187    if (conf_parser_ctx.pass == 2)
4188      yy_aconf->modes |= UMODE_SPY;
4189   }
4190      break;
4191  
4192 <  case 158:
4193 <
4194 < /* Line 1806 of yacc.c  */
4282 < #line 1161 "ircd_parser.y"
4192 >  case 164:
4193 > /* Line 1787 of yacc.c  */
4194 > #line 1169 "conf_parser.y"
4195      {
4196    if (conf_parser_ctx.pass == 2)
4197      yy_aconf->modes |= UMODE_EXTERNAL;
4198   }
4199      break;
4200  
4201 <  case 159:
4202 <
4203 < /* Line 1806 of yacc.c  */
4292 < #line 1165 "ircd_parser.y"
4201 >  case 165:
4202 > /* Line 1787 of yacc.c  */
4203 > #line 1173 "conf_parser.y"
4204      {
4205    if (conf_parser_ctx.pass == 2)
4206      yy_aconf->modes |= UMODE_OPERWALL;
4207   }
4208      break;
4209  
4210 <  case 160:
4211 <
4212 < /* Line 1806 of yacc.c  */
4302 < #line 1169 "ircd_parser.y"
4210 >  case 166:
4211 > /* Line 1787 of yacc.c  */
4212 > #line 1177 "conf_parser.y"
4213      {
4214    if (conf_parser_ctx.pass == 2)
4215      yy_aconf->modes |= UMODE_SERVNOTICE;
4216   }
4217      break;
4218  
4219 <  case 161:
4220 <
4221 < /* Line 1806 of yacc.c  */
4312 < #line 1173 "ircd_parser.y"
4219 >  case 167:
4220 > /* Line 1787 of yacc.c  */
4221 > #line 1181 "conf_parser.y"
4222      {
4223    if (conf_parser_ctx.pass == 2)
4224      yy_aconf->modes |= UMODE_INVISIBLE;
4225   }
4226      break;
4227  
4228 <  case 162:
4229 <
4230 < /* Line 1806 of yacc.c  */
4322 < #line 1177 "ircd_parser.y"
4228 >  case 168:
4229 > /* Line 1787 of yacc.c  */
4230 > #line 1185 "conf_parser.y"
4231      {
4232    if (conf_parser_ctx.pass == 2)
4233      yy_aconf->modes |= UMODE_WALLOP;
4234   }
4235      break;
4236  
4237 <  case 163:
4238 <
4239 < /* Line 1806 of yacc.c  */
4332 < #line 1181 "ircd_parser.y"
4237 >  case 169:
4238 > /* Line 1787 of yacc.c  */
4239 > #line 1189 "conf_parser.y"
4240      {
4241    if (conf_parser_ctx.pass == 2)
4242      yy_aconf->modes |= UMODE_SOFTCALLERID;
4243   }
4244      break;
4245  
4246 <  case 164:
4247 <
4248 < /* Line 1806 of yacc.c  */
4342 < #line 1185 "ircd_parser.y"
4246 >  case 170:
4247 > /* Line 1787 of yacc.c  */
4248 > #line 1193 "conf_parser.y"
4249      {
4250    if (conf_parser_ctx.pass == 2)
4251      yy_aconf->modes |= UMODE_CALLERID;
4252   }
4253      break;
4254  
4255 <  case 165:
4256 <
4257 < /* Line 1806 of yacc.c  */
4352 < #line 1189 "ircd_parser.y"
4255 >  case 171:
4256 > /* Line 1787 of yacc.c  */
4257 > #line 1197 "conf_parser.y"
4258      {
4259    if (conf_parser_ctx.pass == 2)
4260      yy_aconf->modes |= UMODE_LOCOPS;
4261   }
4262      break;
4263  
4264 <  case 166:
4265 <
4266 < /* Line 1806 of yacc.c  */
4362 < #line 1195 "ircd_parser.y"
4264 >  case 172:
4265 > /* Line 1787 of yacc.c  */
4266 > #line 1203 "conf_parser.y"
4267      {
4268    if (conf_parser_ctx.pass == 2)
4269      yy_aconf->port = 0;
4270   }
4271      break;
4272  
4273 <  case 170:
4274 <
4275 < /* Line 1806 of yacc.c  */
4372 < #line 1202 "ircd_parser.y"
4273 >  case 176:
4274 > /* Line 1787 of yacc.c  */
4275 > #line 1210 "conf_parser.y"
4276      {
4277    if (conf_parser_ctx.pass == 2)
4278      yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4279   }
4280      break;
4281  
4282 <  case 171:
4283 <
4284 < /* Line 1806 of yacc.c  */
4382 < #line 1206 "ircd_parser.y"
4282 >  case 177:
4283 > /* Line 1787 of yacc.c  */
4284 > #line 1214 "conf_parser.y"
4285      {
4286    if (conf_parser_ctx.pass == 2)
4287      yy_aconf->port |= OPER_FLAG_REMOTE;
4288   }
4289      break;
4290  
4291 <  case 172:
4292 <
4293 < /* Line 1806 of yacc.c  */
4392 < #line 1210 "ircd_parser.y"
4291 >  case 178:
4292 > /* Line 1787 of yacc.c  */
4293 > #line 1218 "conf_parser.y"
4294      {
4295    if (conf_parser_ctx.pass == 2)
4296      yy_aconf->port |= OPER_FLAG_K;
4297   }
4298      break;
4299  
4300 <  case 173:
4301 <
4302 < /* Line 1806 of yacc.c  */
4402 < #line 1214 "ircd_parser.y"
4300 >  case 179:
4301 > /* Line 1787 of yacc.c  */
4302 > #line 1222 "conf_parser.y"
4303      {
4304    if (conf_parser_ctx.pass == 2)
4305      yy_aconf->port |= OPER_FLAG_UNKLINE;
4306   }
4307      break;
4308  
4309 <  case 174:
4310 <
4311 < /* Line 1806 of yacc.c  */
4412 < #line 1218 "ircd_parser.y"
4309 >  case 180:
4310 > /* Line 1787 of yacc.c  */
4311 > #line 1226 "conf_parser.y"
4312      {
4313    if (conf_parser_ctx.pass == 2)
4314      yy_aconf->port |= OPER_FLAG_DLINE;
4315   }
4316      break;
4317  
4318 <  case 175:
4319 <
4320 < /* Line 1806 of yacc.c  */
4422 < #line 1222 "ircd_parser.y"
4318 >  case 181:
4319 > /* Line 1787 of yacc.c  */
4320 > #line 1230 "conf_parser.y"
4321      {
4322    if (conf_parser_ctx.pass == 2)
4323      yy_aconf->port |= OPER_FLAG_UNDLINE;
4324   }
4325      break;
4326  
4327 <  case 176:
4328 <
4329 < /* Line 1806 of yacc.c  */
4432 < #line 1226 "ircd_parser.y"
4327 >  case 182:
4328 > /* Line 1787 of yacc.c  */
4329 > #line 1234 "conf_parser.y"
4330      {
4331    if (conf_parser_ctx.pass == 2)
4332      yy_aconf->port |= OPER_FLAG_X;
4333   }
4334      break;
4335  
4336 <  case 177:
4337 <
4338 < /* Line 1806 of yacc.c  */
4442 < #line 1230 "ircd_parser.y"
4336 >  case 183:
4337 > /* Line 1787 of yacc.c  */
4338 > #line 1238 "conf_parser.y"
4339      {
4340    if (conf_parser_ctx.pass == 2)
4341      yy_aconf->port |= OPER_FLAG_GLINE;
4342   }
4343      break;
4344  
4345 <  case 178:
4346 <
4347 < /* Line 1806 of yacc.c  */
4452 < #line 1234 "ircd_parser.y"
4345 >  case 184:
4346 > /* Line 1787 of yacc.c  */
4347 > #line 1242 "conf_parser.y"
4348      {
4349    if (conf_parser_ctx.pass == 2)
4350      yy_aconf->port |= OPER_FLAG_DIE;
4351   }
4352      break;
4353  
4354 <  case 179:
4355 <
4356 < /* Line 1806 of yacc.c  */
4462 < #line 1238 "ircd_parser.y"
4354 >  case 185:
4355 > /* Line 1787 of yacc.c  */
4356 > #line 1246 "conf_parser.y"
4357      {
4358    if (conf_parser_ctx.pass == 2)
4359      yy_aconf->port |= OPER_FLAG_RESTART;
4360   }
4361      break;
4362  
4363 <  case 180:
4364 <
4365 < /* Line 1806 of yacc.c  */
4472 < #line 1242 "ircd_parser.y"
4363 >  case 186:
4364 > /* Line 1787 of yacc.c  */
4365 > #line 1250 "conf_parser.y"
4366      {
4367    if (conf_parser_ctx.pass == 2)
4368      yy_aconf->port |= OPER_FLAG_REHASH;
4369   }
4370      break;
4371  
4372 <  case 181:
4373 <
4374 < /* Line 1806 of yacc.c  */
4482 < #line 1246 "ircd_parser.y"
4372 >  case 187:
4373 > /* Line 1787 of yacc.c  */
4374 > #line 1254 "conf_parser.y"
4375      {
4376    if (conf_parser_ctx.pass == 2)
4377      yy_aconf->port |= OPER_FLAG_ADMIN;
4378   }
4379      break;
4380  
4381 <  case 182:
4382 <
4383 < /* Line 1806 of yacc.c  */
4492 < #line 1250 "ircd_parser.y"
4381 >  case 188:
4382 > /* Line 1787 of yacc.c  */
4383 > #line 1258 "conf_parser.y"
4384      {
4385    if (conf_parser_ctx.pass == 2)
4386      yy_aconf->port |= OPER_FLAG_N;
4387   }
4388      break;
4389  
4390 <  case 183:
4391 <
4392 < /* Line 1806 of yacc.c  */
4502 < #line 1254 "ircd_parser.y"
4390 >  case 189:
4391 > /* Line 1787 of yacc.c  */
4392 > #line 1262 "conf_parser.y"
4393      {
4394    if (conf_parser_ctx.pass == 2)
4395      yy_aconf->port |= OPER_FLAG_OPERWALL;
4396   }
4397      break;
4398  
4399 <  case 184:
4400 <
4401 < /* Line 1806 of yacc.c  */
4512 < #line 1258 "ircd_parser.y"
4399 >  case 190:
4400 > /* Line 1787 of yacc.c  */
4401 > #line 1266 "conf_parser.y"
4402      {
4403    if (conf_parser_ctx.pass == 2)
4404      yy_aconf->port |= OPER_FLAG_GLOBOPS;
4405   }
4406      break;
4407  
4408 <  case 185:
4409 <
4410 < /* Line 1806 of yacc.c  */
4522 < #line 1262 "ircd_parser.y"
4408 >  case 191:
4409 > /* Line 1787 of yacc.c  */
4410 > #line 1270 "conf_parser.y"
4411      {
4412    if (conf_parser_ctx.pass == 2)
4413      yy_aconf->port |= OPER_FLAG_OPER_SPY;
4414   }
4415      break;
4416  
4417 <  case 186:
4418 <
4419 < /* Line 1806 of yacc.c  */
4532 < #line 1266 "ircd_parser.y"
4417 >  case 192:
4418 > /* Line 1787 of yacc.c  */
4419 > #line 1274 "conf_parser.y"
4420      {
4421    if (conf_parser_ctx.pass == 2)
4422      yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4423   }
4424      break;
4425  
4426 <  case 187:
4426 >  case 193:
4427 > /* Line 1787 of yacc.c  */
4428 > #line 1278 "conf_parser.y"
4429 >    {
4430 >  if (conf_parser_ctx.pass == 2)
4431 >    yy_aconf->port |= OPER_FLAG_SET;
4432 > }
4433 >    break;
4434  
4435 < /* Line 1806 of yacc.c  */
4436 < #line 1270 "ircd_parser.y"
4435 >  case 194:
4436 > /* Line 1787 of yacc.c  */
4437 > #line 1282 "conf_parser.y"
4438      {
4439    if (conf_parser_ctx.pass == 2)
4440      yy_aconf->port |= OPER_FLAG_MODULE;
4441   }
4442      break;
4443  
4444 <  case 188:
4445 <
4446 < /* Line 1806 of yacc.c  */
4552 < #line 1280 "ircd_parser.y"
4444 >  case 195:
4445 > /* Line 1787 of yacc.c  */
4446 > #line 1292 "conf_parser.y"
4447      {
4448    if (conf_parser_ctx.pass == 1)
4449    {
# Line 4559 | Line 4453 | yyreduce:
4453   }
4454      break;
4455  
4456 <  case 189:
4457 <
4458 < /* Line 1806 of yacc.c  */
4565 < #line 1287 "ircd_parser.y"
4456 >  case 196:
4457 > /* Line 1787 of yacc.c  */
4458 > #line 1299 "conf_parser.y"
4459      {
4460    if (conf_parser_ctx.pass == 1)
4461    {
# Line 4606 | Line 4499 | yyreduce:
4499   }
4500      break;
4501  
4502 <  case 206:
4503 <
4504 < /* Line 1806 of yacc.c  */
4612 < #line 1345 "ircd_parser.y"
4502 >  case 213:
4503 > /* Line 1787 of yacc.c  */
4504 > #line 1357 "conf_parser.y"
4505      {
4506    if (conf_parser_ctx.pass == 1)
4507    {
# Line 4619 | Line 4511 | yyreduce:
4511   }
4512      break;
4513  
4514 <  case 207:
4515 <
4516 < /* Line 1806 of yacc.c  */
4625 < #line 1354 "ircd_parser.y"
4514 >  case 214:
4515 > /* Line 1787 of yacc.c  */
4516 > #line 1366 "conf_parser.y"
4517      {
4518    if (conf_parser_ctx.pass == 1)
4519 <    PingFreq(yy_class) = (yyvsp[(3) - (4)].number);
4519 >    yy_class->ping_freq = (yyvsp[(3) - (4)].number);
4520   }
4521      break;
4522  
4523 <  case 208:
4524 <
4525 < /* Line 1806 of yacc.c  */
4635 < #line 1360 "ircd_parser.y"
4523 >  case 215:
4524 > /* Line 1787 of yacc.c  */
4525 > #line 1372 "conf_parser.y"
4526      {
4527    if (conf_parser_ctx.pass == 1)
4528 <    PingWarning(yy_class) = (yyvsp[(3) - (4)].number);
4528 >    yy_class->ping_warning = (yyvsp[(3) - (4)].number);
4529   }
4530      break;
4531  
4532 <  case 209:
4533 <
4534 < /* Line 1806 of yacc.c  */
4645 < #line 1366 "ircd_parser.y"
4532 >  case 216:
4533 > /* Line 1787 of yacc.c  */
4534 > #line 1378 "conf_parser.y"
4535      {
4536    if (conf_parser_ctx.pass == 1)
4537 <    MaxPerIp(yy_class) = (yyvsp[(3) - (4)].number);
4537 >    yy_class->max_perip = (yyvsp[(3) - (4)].number);
4538   }
4539      break;
4540  
4541 <  case 210:
4542 <
4543 < /* Line 1806 of yacc.c  */
4655 < #line 1372 "ircd_parser.y"
4541 >  case 217:
4542 > /* Line 1787 of yacc.c  */
4543 > #line 1384 "conf_parser.y"
4544      {
4545    if (conf_parser_ctx.pass == 1)
4546 <    ConFreq(yy_class) = (yyvsp[(3) - (4)].number);
4546 >    yy_class->con_freq = (yyvsp[(3) - (4)].number);
4547   }
4548      break;
4549  
4550 <  case 211:
4551 <
4552 < /* Line 1806 of yacc.c  */
4665 < #line 1378 "ircd_parser.y"
4550 >  case 218:
4551 > /* Line 1787 of yacc.c  */
4552 > #line 1390 "conf_parser.y"
4553      {
4554    if (conf_parser_ctx.pass == 1)
4555 <    MaxTotal(yy_class) = (yyvsp[(3) - (4)].number);
4555 >    yy_class->max_total = (yyvsp[(3) - (4)].number);
4556   }
4557      break;
4558  
4559 <  case 212:
4560 <
4561 < /* Line 1806 of yacc.c  */
4675 < #line 1384 "ircd_parser.y"
4559 >  case 219:
4560 > /* Line 1787 of yacc.c  */
4561 > #line 1396 "conf_parser.y"
4562      {
4563    if (conf_parser_ctx.pass == 1)
4564 <    MaxGlobal(yy_class) = (yyvsp[(3) - (4)].number);
4564 >    yy_class->max_global = (yyvsp[(3) - (4)].number);
4565   }
4566      break;
4567  
4568 <  case 213:
4569 <
4570 < /* Line 1806 of yacc.c  */
4685 < #line 1390 "ircd_parser.y"
4568 >  case 220:
4569 > /* Line 1787 of yacc.c  */
4570 > #line 1402 "conf_parser.y"
4571      {
4572    if (conf_parser_ctx.pass == 1)
4573 <    MaxLocal(yy_class) = (yyvsp[(3) - (4)].number);
4573 >    yy_class->max_local = (yyvsp[(3) - (4)].number);
4574   }
4575      break;
4576  
4577 <  case 214:
4578 <
4579 < /* Line 1806 of yacc.c  */
4695 < #line 1396 "ircd_parser.y"
4577 >  case 221:
4578 > /* Line 1787 of yacc.c  */
4579 > #line 1408 "conf_parser.y"
4580      {
4581    if (conf_parser_ctx.pass == 1)
4582 <    MaxIdent(yy_class) = (yyvsp[(3) - (4)].number);
4582 >    yy_class->max_ident = (yyvsp[(3) - (4)].number);
4583   }
4584      break;
4585  
4586 <  case 215:
4587 <
4588 < /* Line 1806 of yacc.c  */
4705 < #line 1402 "ircd_parser.y"
4586 >  case 222:
4587 > /* Line 1787 of yacc.c  */
4588 > #line 1414 "conf_parser.y"
4589      {
4590    if (conf_parser_ctx.pass == 1)
4591 <    MaxSendq(yy_class) = (yyvsp[(3) - (4)].number);
4591 >    yy_class->max_sendq = (yyvsp[(3) - (4)].number);
4592   }
4593      break;
4594  
4595 <  case 216:
4596 <
4597 < /* Line 1806 of yacc.c  */
4715 < #line 1408 "ircd_parser.y"
4595 >  case 223:
4596 > /* Line 1787 of yacc.c  */
4597 > #line 1420 "conf_parser.y"
4598      {
4599    if (conf_parser_ctx.pass == 1)
4600 <    CidrBitlenIPV4(yy_class) = (yyvsp[(3) - (4)].number);
4600 >    yy_class->cidr_bitlen_ipv4 = (yyvsp[(3) - (4)].number) > 32 ? 32 : (yyvsp[(3) - (4)].number);
4601   }
4602      break;
4603  
4604 <  case 217:
4605 <
4606 < /* Line 1806 of yacc.c  */
4725 < #line 1414 "ircd_parser.y"
4604 >  case 224:
4605 > /* Line 1787 of yacc.c  */
4606 > #line 1426 "conf_parser.y"
4607      {
4608    if (conf_parser_ctx.pass == 1)
4609 <    CidrBitlenIPV6(yy_class) = (yyvsp[(3) - (4)].number);
4609 >    yy_class->cidr_bitlen_ipv6 = (yyvsp[(3) - (4)].number) > 128 ? 128 : (yyvsp[(3) - (4)].number);
4610   }
4611      break;
4612  
4613 <  case 218:
4614 <
4615 < /* Line 1806 of yacc.c  */
4735 < #line 1420 "ircd_parser.y"
4613 >  case 225:
4614 > /* Line 1787 of yacc.c  */
4615 > #line 1432 "conf_parser.y"
4616      {
4617    if (conf_parser_ctx.pass == 1)
4618 <    NumberPerCidr(yy_class) = (yyvsp[(3) - (4)].number);
4618 >    yy_class->number_per_cidr = (yyvsp[(3) - (4)].number);
4619   }
4620      break;
4621  
4622 <  case 219:
4623 <
4624 < /* Line 1806 of yacc.c  */
4745 < #line 1429 "ircd_parser.y"
4622 >  case 226:
4623 > /* Line 1787 of yacc.c  */
4624 > #line 1441 "conf_parser.y"
4625      {
4626    if (conf_parser_ctx.pass == 2)
4627    {
# Line 4752 | Line 4631 | yyreduce:
4631   }
4632      break;
4633  
4634 <  case 220:
4635 <
4636 < /* Line 1806 of yacc.c  */
4758 < #line 1436 "ircd_parser.y"
4634 >  case 227:
4635 > /* Line 1787 of yacc.c  */
4636 > #line 1448 "conf_parser.y"
4637      {
4638    if (conf_parser_ctx.pass == 2)
4639    {
# Line 4765 | Line 4643 | yyreduce:
4643   }
4644      break;
4645  
4646 <  case 221:
4647 <
4648 < /* Line 1806 of yacc.c  */
4771 < #line 1445 "ircd_parser.y"
4646 >  case 228:
4647 > /* Line 1787 of yacc.c  */
4648 > #line 1457 "conf_parser.y"
4649      {
4650    listener_flags = 0;
4651   }
4652      break;
4653  
4654 <  case 225:
4655 <
4656 < /* Line 1806 of yacc.c  */
4780 < #line 1451 "ircd_parser.y"
4654 >  case 232:
4655 > /* Line 1787 of yacc.c  */
4656 > #line 1463 "conf_parser.y"
4657      {
4658    if (conf_parser_ctx.pass == 2)
4659      listener_flags |= LISTENER_SSL;
4660   }
4661      break;
4662  
4663 <  case 226:
4664 <
4665 < /* Line 1806 of yacc.c  */
4790 < #line 1455 "ircd_parser.y"
4663 >  case 233:
4664 > /* Line 1787 of yacc.c  */
4665 > #line 1467 "conf_parser.y"
4666      {
4667    if (conf_parser_ctx.pass == 2)
4668      listener_flags |= LISTENER_HIDDEN;
4669   }
4670      break;
4671  
4672 <  case 227:
4673 <
4674 < /* Line 1806 of yacc.c  */
4800 < #line 1459 "ircd_parser.y"
4672 >  case 234:
4673 > /* Line 1787 of yacc.c  */
4674 > #line 1471 "conf_parser.y"
4675      {
4676    if (conf_parser_ctx.pass == 2)
4677      listener_flags |= LISTENER_SERVER;
4678   }
4679      break;
4680  
4681 <  case 235:
4682 <
4683 < /* Line 1806 of yacc.c  */
4810 < #line 1469 "ircd_parser.y"
4681 >  case 242:
4682 > /* Line 1787 of yacc.c  */
4683 > #line 1481 "conf_parser.y"
4684      { listener_flags = 0; }
4685      break;
4686  
4687 <  case 239:
4688 <
4689 < /* Line 1806 of yacc.c  */
4817 < #line 1474 "ircd_parser.y"
4687 >  case 246:
4688 > /* Line 1787 of yacc.c  */
4689 > #line 1486 "conf_parser.y"
4690      {
4691    if (conf_parser_ctx.pass == 2)
4692    {
# Line 4831 | Line 4703 | yyreduce:
4703   }
4704      break;
4705  
4706 <  case 240:
4707 <
4708 < /* Line 1806 of yacc.c  */
4837 < #line 1488 "ircd_parser.y"
4706 >  case 247:
4707 > /* Line 1787 of yacc.c  */
4708 > #line 1500 "conf_parser.y"
4709      {
4710    if (conf_parser_ctx.pass == 2)
4711    {
# Line 4855 | Line 4726 | yyreduce:
4726   }
4727      break;
4728  
4729 <  case 241:
4730 <
4731 < /* Line 1806 of yacc.c  */
4861 < #line 1508 "ircd_parser.y"
4729 >  case 248:
4730 > /* Line 1787 of yacc.c  */
4731 > #line 1520 "conf_parser.y"
4732      {
4733    if (conf_parser_ctx.pass == 2)
4734    {
# Line 4868 | Line 4738 | yyreduce:
4738   }
4739      break;
4740  
4741 <  case 242:
4742 <
4743 < /* Line 1806 of yacc.c  */
4874 < #line 1517 "ircd_parser.y"
4741 >  case 249:
4742 > /* Line 1787 of yacc.c  */
4743 > #line 1529 "conf_parser.y"
4744      {
4745    if (conf_parser_ctx.pass == 2)
4746    {
# Line 4881 | Line 4750 | yyreduce:
4750   }
4751      break;
4752  
4753 <  case 243:
4754 <
4755 < /* Line 1806 of yacc.c  */
4887 < #line 1529 "ircd_parser.y"
4753 >  case 250:
4754 > /* Line 1787 of yacc.c  */
4755 > #line 1541 "conf_parser.y"
4756      {
4757    if (conf_parser_ctx.pass == 2)
4758    {
# Line 4899 | Line 4767 | yyreduce:
4767   }
4768      break;
4769  
4770 <  case 244:
4771 <
4772 < /* Line 1806 of yacc.c  */
4905 < #line 1541 "ircd_parser.y"
4770 >  case 251:
4771 > /* Line 1787 of yacc.c  */
4772 > #line 1553 "conf_parser.y"
4773      {
4774    if (conf_parser_ctx.pass == 2)
4775    {
# Line 4960 | Line 4827 | yyreduce:
4827   }
4828      break;
4829  
4830 <  case 256:
4831 <
4832 < /* Line 1806 of yacc.c  */
4966 < #line 1603 "ircd_parser.y"
4830 >  case 263:
4831 > /* Line 1787 of yacc.c  */
4832 > #line 1615 "conf_parser.y"
4833      {
4834    if (conf_parser_ctx.pass == 2)
4835    {
# Line 4999 | Line 4865 | yyreduce:
4865   }
4866      break;
4867  
4868 <  case 257:
4869 <
4870 < /* Line 1806 of yacc.c  */
5005 < #line 1640 "ircd_parser.y"
4868 >  case 264:
4869 > /* Line 1787 of yacc.c  */
4870 > #line 1650 "conf_parser.y"
4871      {
4872    if (conf_parser_ctx.pass == 2)
4873    {
# Line 5016 | Line 4881 | yyreduce:
4881   }
4882      break;
4883  
4884 <  case 258:
4885 <
4886 < /* Line 1806 of yacc.c  */
5022 < #line 1653 "ircd_parser.y"
4884 >  case 265:
4885 > /* Line 1787 of yacc.c  */
4886 > #line 1663 "conf_parser.y"
4887      {
4888    if (conf_parser_ctx.pass == 2)
4889    {
# Line 5029 | Line 4893 | yyreduce:
4893   }
4894      break;
4895  
4896 <  case 259:
4897 <
4898 < /* Line 1806 of yacc.c  */
5035 < #line 1662 "ircd_parser.y"
4896 >  case 266:
4897 > /* Line 1787 of yacc.c  */
4898 > #line 1672 "conf_parser.y"
4899      {
4900    if (conf_parser_ctx.pass == 2)
4901    {
# Line 5044 | Line 4907 | yyreduce:
4907   }
4908      break;
4909  
4910 <  case 260:
4911 <
4912 < /* Line 1806 of yacc.c  */
5050 < #line 1673 "ircd_parser.y"
4910 >  case 267:
4911 > /* Line 1787 of yacc.c  */
4912 > #line 1683 "conf_parser.y"
4913      {
4914   }
4915      break;
4916  
4917 <  case 264:
4918 <
4919 < /* Line 1806 of yacc.c  */
5058 < #line 1678 "ircd_parser.y"
4917 >  case 271:
4918 > /* Line 1787 of yacc.c  */
4919 > #line 1688 "conf_parser.y"
4920      {
4921    if (conf_parser_ctx.pass == 2)
4922      yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
4923   }
4924      break;
4925  
4926 <  case 265:
4927 <
4928 < /* Line 1806 of yacc.c  */
5068 < #line 1682 "ircd_parser.y"
4926 >  case 272:
4927 > /* Line 1787 of yacc.c  */
4928 > #line 1692 "conf_parser.y"
4929      {
4930    if (conf_parser_ctx.pass == 2)
4931      yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
4932   }
4933      break;
4934  
4935 <  case 266:
4936 <
4937 < /* Line 1806 of yacc.c  */
5078 < #line 1686 "ircd_parser.y"
4935 >  case 273:
4936 > /* Line 1787 of yacc.c  */
4937 > #line 1696 "conf_parser.y"
4938      {
4939    if (conf_parser_ctx.pass == 2)
4940      yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
4941   }
4942      break;
4943  
4944 <  case 267:
4945 <
4946 < /* Line 1806 of yacc.c  */
5088 < #line 1690 "ircd_parser.y"
4944 >  case 274:
4945 > /* Line 1787 of yacc.c  */
4946 > #line 1700 "conf_parser.y"
4947      {
4948    if (conf_parser_ctx.pass == 2)
4949      yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
4950   }
4951      break;
4952  
4953 <  case 268:
4954 <
4955 < /* Line 1806 of yacc.c  */
5098 < #line 1694 "ircd_parser.y"
4953 >  case 275:
4954 > /* Line 1787 of yacc.c  */
4955 > #line 1704 "conf_parser.y"
4956      {
4957    if (conf_parser_ctx.pass == 2)
4958      yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
4959   }
4960      break;
4961  
4962 <  case 269:
4963 <
4964 < /* Line 1806 of yacc.c  */
5108 < #line 1698 "ircd_parser.y"
4962 >  case 276:
4963 > /* Line 1787 of yacc.c  */
4964 > #line 1708 "conf_parser.y"
4965      {
4966    if (conf_parser_ctx.pass == 2)
4967      yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
4968   }
4969      break;
4970  
4971 <  case 270:
4972 <
4973 < /* Line 1806 of yacc.c  */
5118 < #line 1702 "ircd_parser.y"
4971 >  case 277:
4972 > /* Line 1787 of yacc.c  */
4973 > #line 1712 "conf_parser.y"
4974      {
4975    if (conf_parser_ctx.pass == 2)
4976      yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
4977   }
4978      break;
4979  
4980 <  case 271:
4981 <
4982 < /* Line 1806 of yacc.c  */
5128 < #line 1706 "ircd_parser.y"
4980 >  case 278:
4981 > /* Line 1787 of yacc.c  */
4982 > #line 1716 "conf_parser.y"
4983      {
4984    if (conf_parser_ctx.pass == 2)
4985      yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
4986   }
4987      break;
4988  
4989 <  case 272:
4990 <
4991 < /* Line 1806 of yacc.c  */
5138 < #line 1710 "ircd_parser.y"
4989 >  case 279:
4990 > /* Line 1787 of yacc.c  */
4991 > #line 1720 "conf_parser.y"
4992      {
4993    if (conf_parser_ctx.pass == 2)
4994      yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
4995   }
4996      break;
4997  
4998 <  case 273:
4999 <
5000 < /* Line 1806 of yacc.c  */
5148 < #line 1717 "ircd_parser.y"
4998 >  case 280:
4999 > /* Line 1787 of yacc.c  */
5000 > #line 1727 "conf_parser.y"
5001      {
5002    if (conf_parser_ctx.pass == 2)
5003    {
# Line 5165 | Line 5017 | yyreduce:
5017   }
5018      break;
5019  
5020 <  case 274:
5021 <
5022 < /* Line 1806 of yacc.c  */
5171 < #line 1736 "ircd_parser.y"
5020 >  case 281:
5021 > /* Line 1787 of yacc.c  */
5022 > #line 1746 "conf_parser.y"
5023      {
5024    if (conf_parser_ctx.pass == 2)
5025    {
# Line 5179 | Line 5030 | yyreduce:
5030   }
5031      break;
5032  
5033 <  case 275:
5034 <
5035 < /* Line 1806 of yacc.c  */
5185 < #line 1746 "ircd_parser.y"
5033 >  case 282:
5034 > /* Line 1787 of yacc.c  */
5035 > #line 1756 "conf_parser.y"
5036      {
5037    if (conf_parser_ctx.pass == 2)
5038    {
# Line 5192 | Line 5042 | yyreduce:
5042   }
5043      break;
5044  
5045 <  case 276:
5046 <
5047 < /* Line 1806 of yacc.c  */
5198 < #line 1759 "ircd_parser.y"
5045 >  case 283:
5046 > /* Line 1787 of yacc.c  */
5047 > #line 1769 "conf_parser.y"
5048      {
5049    if (conf_parser_ctx.pass == 2)
5050    {
# Line 5205 | Line 5054 | yyreduce:
5054   }
5055      break;
5056  
5057 <  case 277:
5058 <
5059 < /* Line 1806 of yacc.c  */
5211 < #line 1766 "ircd_parser.y"
5057 >  case 284:
5058 > /* Line 1787 of yacc.c  */
5059 > #line 1776 "conf_parser.y"
5060      {
5061    if (conf_parser_ctx.pass == 2)
5062    {
# Line 5218 | Line 5066 | yyreduce:
5066   }
5067      break;
5068  
5069 <  case 284:
5070 <
5071 < /* Line 1806 of yacc.c  */
5224 < #line 1778 "ircd_parser.y"
5069 >  case 291:
5070 > /* Line 1787 of yacc.c  */
5071 > #line 1788 "conf_parser.y"
5072      {
5073    if (conf_parser_ctx.pass == 2)
5074    {
# Line 5231 | Line 5078 | yyreduce:
5078   }
5079      break;
5080  
5081 <  case 285:
5082 <
5083 < /* Line 1806 of yacc.c  */
5237 < #line 1787 "ircd_parser.y"
5081 >  case 292:
5082 > /* Line 1787 of yacc.c  */
5083 > #line 1797 "conf_parser.y"
5084      {
5085    if (conf_parser_ctx.pass == 2)
5086    {
# Line 5250 | Line 5096 | yyreduce:
5096   }
5097      break;
5098  
5099 <  case 286:
5100 <
5101 < /* Line 1806 of yacc.c  */
5256 < #line 1802 "ircd_parser.y"
5099 >  case 293:
5100 > /* Line 1787 of yacc.c  */
5101 > #line 1812 "conf_parser.y"
5102      {
5103    if (conf_parser_ctx.pass == 2)
5104    {
# Line 5264 | Line 5109 | yyreduce:
5109   }
5110      break;
5111  
5112 <  case 292:
5113 <
5114 < /* Line 1806 of yacc.c  */
5270 < #line 1820 "ircd_parser.y"
5112 >  case 299:
5113 > /* Line 1787 of yacc.c  */
5114 > #line 1830 "conf_parser.y"
5115      {
5116    if (conf_parser_ctx.pass == 2)
5117    {
# Line 5280 | Line 5124 | yyreduce:
5124   }
5125      break;
5126  
5127 <  case 293:
5128 <
5129 < /* Line 1806 of yacc.c  */
5286 < #line 1835 "ircd_parser.y"
5127 >  case 300:
5128 > /* Line 1787 of yacc.c  */
5129 > #line 1845 "conf_parser.y"
5130      {
5131    if (conf_parser_ctx.pass == 2)
5132    {
# Line 5294 | Line 5137 | yyreduce:
5137   }
5138      break;
5139  
5140 <  case 294:
5141 <
5142 < /* Line 1806 of yacc.c  */
5300 < #line 1843 "ircd_parser.y"
5140 >  case 301:
5141 > /* Line 1787 of yacc.c  */
5142 > #line 1853 "conf_parser.y"
5143      {
5144    if (conf_parser_ctx.pass == 2)
5145    {
# Line 5306 | Line 5148 | yyreduce:
5148   }
5149      break;
5150  
5151 <  case 301:
5152 <
5153 < /* Line 1806 of yacc.c  */
5312 < #line 1854 "ircd_parser.y"
5151 >  case 308:
5152 > /* Line 1787 of yacc.c  */
5153 > #line 1864 "conf_parser.y"
5154      {
5155    if (conf_parser_ctx.pass == 2)
5156    {
# Line 5319 | Line 5160 | yyreduce:
5160   }
5161      break;
5162  
5163 <  case 302:
5164 <
5165 < /* Line 1806 of yacc.c  */
5325 < #line 1863 "ircd_parser.y"
5163 >  case 309:
5164 > /* Line 1787 of yacc.c  */
5165 > #line 1873 "conf_parser.y"
5166      {
5167    if (conf_parser_ctx.pass == 2)
5168    {
# Line 5345 | Line 5185 | yyreduce:
5185   }
5186      break;
5187  
5188 <  case 303:
5189 <
5190 < /* Line 1806 of yacc.c  */
5351 < #line 1885 "ircd_parser.y"
5188 >  case 310:
5189 > /* Line 1787 of yacc.c  */
5190 > #line 1895 "conf_parser.y"
5191      {
5192    if (conf_parser_ctx.pass == 2)
5193      yy_match_item->action = 0;
5194   }
5195      break;
5196  
5197 <  case 307:
5198 <
5199 < /* Line 1806 of yacc.c  */
5361 < #line 1892 "ircd_parser.y"
5197 >  case 314:
5198 > /* Line 1787 of yacc.c  */
5199 > #line 1902 "conf_parser.y"
5200      {
5201    if (conf_parser_ctx.pass == 2)
5202      yy_match_item->action |= SHARED_KLINE;
5203   }
5204      break;
5205  
5206 <  case 308:
5207 <
5208 < /* Line 1806 of yacc.c  */
5371 < #line 1896 "ircd_parser.y"
5206 >  case 315:
5207 > /* Line 1787 of yacc.c  */
5208 > #line 1906 "conf_parser.y"
5209      {
5210    if (conf_parser_ctx.pass == 2)
5211      yy_match_item->action |= SHARED_UNKLINE;
5212   }
5213      break;
5214  
5215 <  case 309:
5216 <
5217 < /* Line 1806 of yacc.c  */
5381 < #line 1900 "ircd_parser.y"
5215 >  case 316:
5216 > /* Line 1787 of yacc.c  */
5217 > #line 1910 "conf_parser.y"
5218      {
5219    if (conf_parser_ctx.pass == 2)
5220      yy_match_item->action |= SHARED_DLINE;
5221   }
5222      break;
5223  
5224 <  case 310:
5225 <
5226 < /* Line 1806 of yacc.c  */
5391 < #line 1904 "ircd_parser.y"
5224 >  case 317:
5225 > /* Line 1787 of yacc.c  */
5226 > #line 1914 "conf_parser.y"
5227      {
5228    if (conf_parser_ctx.pass == 2)
5229      yy_match_item->action |= SHARED_UNDLINE;
5230   }
5231      break;
5232  
5233 <  case 311:
5234 <
5235 < /* Line 1806 of yacc.c  */
5401 < #line 1908 "ircd_parser.y"
5233 >  case 318:
5234 > /* Line 1787 of yacc.c  */
5235 > #line 1918 "conf_parser.y"
5236      {
5237    if (conf_parser_ctx.pass == 2)
5238      yy_match_item->action |= SHARED_XLINE;
5239   }
5240      break;
5241  
5242 <  case 312:
5243 <
5244 < /* Line 1806 of yacc.c  */
5411 < #line 1912 "ircd_parser.y"
5242 >  case 319:
5243 > /* Line 1787 of yacc.c  */
5244 > #line 1922 "conf_parser.y"
5245      {
5246    if (conf_parser_ctx.pass == 2)
5247      yy_match_item->action |= SHARED_UNXLINE;
5248   }
5249      break;
5250  
5251 <  case 313:
5252 <
5253 < /* Line 1806 of yacc.c  */
5421 < #line 1916 "ircd_parser.y"
5251 >  case 320:
5252 > /* Line 1787 of yacc.c  */
5253 > #line 1926 "conf_parser.y"
5254      {
5255    if (conf_parser_ctx.pass == 2)
5256      yy_match_item->action |= SHARED_RESV;
5257   }
5258      break;
5259  
5260 <  case 314:
5261 <
5262 < /* Line 1806 of yacc.c  */
5431 < #line 1920 "ircd_parser.y"
5260 >  case 321:
5261 > /* Line 1787 of yacc.c  */
5262 > #line 1930 "conf_parser.y"
5263      {
5264    if (conf_parser_ctx.pass == 2)
5265      yy_match_item->action |= SHARED_UNRESV;
5266   }
5267      break;
5268  
5269 <  case 315:
5270 <
5271 < /* Line 1806 of yacc.c  */
5441 < #line 1924 "ircd_parser.y"
5269 >  case 322:
5270 > /* Line 1787 of yacc.c  */
5271 > #line 1934 "conf_parser.y"
5272      {
5273    if (conf_parser_ctx.pass == 2)
5274      yy_match_item->action |= SHARED_LOCOPS;
5275   }
5276      break;
5277  
5278 <  case 316:
5279 <
5280 < /* Line 1806 of yacc.c  */
5451 < #line 1928 "ircd_parser.y"
5278 >  case 323:
5279 > /* Line 1787 of yacc.c  */
5280 > #line 1938 "conf_parser.y"
5281      {
5282    if (conf_parser_ctx.pass == 2)
5283      yy_match_item->action = SHARED_ALL;
5284   }
5285      break;
5286  
5287 <  case 317:
5288 <
5289 < /* Line 1806 of yacc.c  */
5461 < #line 1937 "ircd_parser.y"
5287 >  case 324:
5288 > /* Line 1787 of yacc.c  */
5289 > #line 1947 "conf_parser.y"
5290      {
5291    if (conf_parser_ctx.pass == 2)
5292    {
# Line 5468 | Line 5296 | yyreduce:
5296   }
5297      break;
5298  
5299 <  case 318:
5300 <
5301 < /* Line 1806 of yacc.c  */
5474 < #line 1944 "ircd_parser.y"
5299 >  case 325:
5300 > /* Line 1787 of yacc.c  */
5301 > #line 1954 "conf_parser.y"
5302      {
5303    if (conf_parser_ctx.pass == 2)
5304    {
# Line 5482 | Line 5309 | yyreduce:
5309   }
5310      break;
5311  
5312 <  case 324:
5313 <
5314 < /* Line 1806 of yacc.c  */
5488 < #line 1957 "ircd_parser.y"
5312 >  case 331:
5313 > /* Line 1787 of yacc.c  */
5314 > #line 1967 "conf_parser.y"
5315      {
5316    if (conf_parser_ctx.pass == 2)
5317      DupString(yy_conf->name, yylval.string);
5318   }
5319      break;
5320  
5321 <  case 325:
5322 <
5323 < /* Line 1806 of yacc.c  */
5498 < #line 1963 "ircd_parser.y"
5321 >  case 332:
5322 > /* Line 1787 of yacc.c  */
5323 > #line 1973 "conf_parser.y"
5324      {
5325    if (conf_parser_ctx.pass == 2)
5326      yy_conf->flags = 0;
5327   }
5328      break;
5329  
5330 <  case 329:
5331 <
5332 < /* Line 1806 of yacc.c  */
5508 < #line 1970 "ircd_parser.y"
5330 >  case 336:
5331 > /* Line 1787 of yacc.c  */
5332 > #line 1980 "conf_parser.y"
5333      {
5334    if (conf_parser_ctx.pass == 2)
5335      yy_conf->flags |= SHARED_KLINE;
5336   }
5337      break;
5338  
5339 <  case 330:
5340 <
5341 < /* Line 1806 of yacc.c  */
5518 < #line 1974 "ircd_parser.y"
5339 >  case 337:
5340 > /* Line 1787 of yacc.c  */
5341 > #line 1984 "conf_parser.y"
5342      {
5343    if (conf_parser_ctx.pass == 2)
5344      yy_conf->flags |= SHARED_UNKLINE;
5345   }
5346      break;
5347  
5348 <  case 331:
5349 <
5350 < /* Line 1806 of yacc.c  */
5528 < #line 1978 "ircd_parser.y"
5348 >  case 338:
5349 > /* Line 1787 of yacc.c  */
5350 > #line 1988 "conf_parser.y"
5351      {
5352    if (conf_parser_ctx.pass == 2)
5353      yy_conf->flags |= SHARED_DLINE;
5354   }
5355      break;
5356  
5357 <  case 332:
5358 <
5359 < /* Line 1806 of yacc.c  */
5538 < #line 1982 "ircd_parser.y"
5357 >  case 339:
5358 > /* Line 1787 of yacc.c  */
5359 > #line 1992 "conf_parser.y"
5360      {
5361    if (conf_parser_ctx.pass == 2)
5362      yy_conf->flags |= SHARED_UNDLINE;
5363   }
5364      break;
5365  
5366 <  case 333:
5367 <
5368 < /* Line 1806 of yacc.c  */
5548 < #line 1986 "ircd_parser.y"
5366 >  case 340:
5367 > /* Line 1787 of yacc.c  */
5368 > #line 1996 "conf_parser.y"
5369      {
5370    if (conf_parser_ctx.pass == 2)
5371      yy_conf->flags |= SHARED_XLINE;
5372   }
5373      break;
5374  
5375 <  case 334:
5376 <
5377 < /* Line 1806 of yacc.c  */
5558 < #line 1990 "ircd_parser.y"
5375 >  case 341:
5376 > /* Line 1787 of yacc.c  */
5377 > #line 2000 "conf_parser.y"
5378      {
5379    if (conf_parser_ctx.pass == 2)
5380      yy_conf->flags |= SHARED_UNXLINE;
5381   }
5382      break;
5383  
5384 <  case 335:
5385 <
5386 < /* Line 1806 of yacc.c  */
5568 < #line 1994 "ircd_parser.y"
5384 >  case 342:
5385 > /* Line 1787 of yacc.c  */
5386 > #line 2004 "conf_parser.y"
5387      {
5388    if (conf_parser_ctx.pass == 2)
5389      yy_conf->flags |= SHARED_RESV;
5390   }
5391      break;
5392  
5393 <  case 336:
5394 <
5395 < /* Line 1806 of yacc.c  */
5578 < #line 1998 "ircd_parser.y"
5393 >  case 343:
5394 > /* Line 1787 of yacc.c  */
5395 > #line 2008 "conf_parser.y"
5396      {
5397    if (conf_parser_ctx.pass == 2)
5398      yy_conf->flags |= SHARED_UNRESV;
5399   }
5400      break;
5401  
5402 <  case 337:
5403 <
5404 < /* Line 1806 of yacc.c  */
5588 < #line 2002 "ircd_parser.y"
5402 >  case 344:
5403 > /* Line 1787 of yacc.c  */
5404 > #line 2012 "conf_parser.y"
5405      {
5406    if (conf_parser_ctx.pass == 2)
5407      yy_conf->flags |= SHARED_LOCOPS;
5408   }
5409      break;
5410  
5411 <  case 338:
5412 <
5413 < /* Line 1806 of yacc.c  */
5598 < #line 2006 "ircd_parser.y"
5411 >  case 345:
5412 > /* Line 1787 of yacc.c  */
5413 > #line 2016 "conf_parser.y"
5414      {
5415    if (conf_parser_ctx.pass == 2)
5416      yy_conf->flags = SHARED_ALL;
5417   }
5418      break;
5419  
5420 <  case 339:
5421 <
5422 < /* Line 1806 of yacc.c  */
5608 < #line 2015 "ircd_parser.y"
5420 >  case 346:
5421 > /* Line 1787 of yacc.c  */
5422 > #line 2025 "conf_parser.y"
5423      {
5424    if (conf_parser_ctx.pass == 2)
5425    {
# Line 5623 | Line 5437 | yyreduce:
5437   }
5438      break;
5439  
5440 <  case 340:
5441 <
5442 < /* Line 1806 of yacc.c  */
5629 < #line 2030 "ircd_parser.y"
5440 >  case 347:
5441 > /* Line 1787 of yacc.c  */
5442 > #line 2040 "conf_parser.y"
5443      {
5444    if (conf_parser_ctx.pass == 2)
5445    {
5446 <    struct CollectItem *yy_hconf=NULL;
5634 <    struct CollectItem *yy_lconf=NULL;
5635 <    dlink_node *ptr = NULL, *next_ptr = NULL;
5636 <
5637 <    if (yy_aconf->host &&
5638 <        yy_aconf->passwd && yy_aconf->spasswd)
5446 >    if (yy_aconf->host && yy_aconf->passwd && yy_aconf->spasswd)
5447      {
5448        if (conf_add_server(yy_conf, class_name) == -1)
5641      {
5449          delete_conf_item(yy_conf);
5643        yy_conf = NULL;
5644        yy_aconf = NULL;
5645      }
5450      }
5451      else
5452      {
5649      /* Even if yy_conf ->name is NULL
5650       * should still unhook any hub/leaf confs still pending
5651       */
5652      unhook_hub_leaf_confs();
5653
5453        if (yy_conf->name != NULL)
5454        {
5455          if (yy_aconf->host == NULL)
# Line 5659 | Line 5458 | yyreduce:
5458            yyerror("Ignoring connect block -- missing password");
5459        }
5460  
5662
5461        /* XXX
5462         * This fixes a try_connections() core (caused by invalid class_ptr
5463         * pointers) reported by metalrock. That's an ugly fix, but there
# Line 5668 | Line 5466 | yyreduce:
5466         * a doubly linked list immediately without any sanity checks!  -Michael
5467         */
5468        delete_conf_item(yy_conf);
5671
5672      yy_aconf = NULL;
5673      yy_conf = NULL;
5469      }
5470  
5471 <      /*
5472 <       * yy_conf is still pointing at the server that is having
5473 <       * a connect block built for it. This means, y_aconf->name
5474 <       * points to the actual irc name this server will be known as.
5680 <       * Now this new server has a set or even just one hub_mask (or leaf_mask)
5681 <       * given in the link list at yy_hconf. Fill in the HUB confs
5682 <       * from this link list now.
5683 <       */        
5684 <      DLINK_FOREACH_SAFE(ptr, next_ptr, hub_conf_list.head)
5685 <      {
5686 <        struct ConfItem *new_hub_conf;
5687 <        struct MatchItem *match_item;
5688 <
5689 <        yy_hconf = ptr->data;
5690 <
5691 <        /* yy_conf == NULL is a fatal error for this connect block! */
5692 <        if ((yy_conf != NULL) && (yy_conf->name != NULL))
5693 <        {
5694 <          new_hub_conf = make_conf_item(HUB_TYPE);
5695 <          match_item = (struct MatchItem *)map_to_conf(new_hub_conf);
5696 <          DupString(new_hub_conf->name, yy_conf->name);
5697 <          if (yy_hconf->user != NULL)
5698 <            DupString(match_item->user, yy_hconf->user);
5699 <          else
5700 <            DupString(match_item->user, "*");
5701 <          if (yy_hconf->host != NULL)
5702 <            DupString(match_item->host, yy_hconf->host);
5703 <          else
5704 <            DupString(match_item->host, "*");
5705 <        }
5706 <        dlinkDelete(&yy_hconf->node, &hub_conf_list);
5707 <        free_collect_item(yy_hconf);
5708 <      }
5709 <
5710 <      /* Ditto for the LEAF confs */
5711 <
5712 <      DLINK_FOREACH_SAFE(ptr, next_ptr, leaf_conf_list.head)
5713 <      {
5714 <        struct ConfItem *new_leaf_conf;
5715 <        struct MatchItem *match_item;
5716 <
5717 <        yy_lconf = ptr->data;
5718 <
5719 <        if ((yy_conf != NULL) && (yy_conf->name != NULL))
5720 <        {
5721 <          new_leaf_conf = make_conf_item(LEAF_TYPE);
5722 <          match_item = (struct MatchItem *)map_to_conf(new_leaf_conf);
5723 <          DupString(new_leaf_conf->name, yy_conf->name);
5724 <          if (yy_lconf->user != NULL)
5725 <            DupString(match_item->user, yy_lconf->user);
5726 <          else
5727 <            DupString(match_item->user, "*");
5728 <          if (yy_lconf->host != NULL)
5729 <            DupString(match_item->host, yy_lconf->host);
5730 <          else
5731 <            DupString(match_item->host, "*");
5732 <        }
5733 <        dlinkDelete(&yy_lconf->node, &leaf_conf_list);
5734 <        free_collect_item(yy_lconf);
5735 <      }
5736 <      MyFree(class_name);
5737 <      class_name = NULL;
5738 <      yy_conf = NULL;
5739 <      yy_aconf = NULL;
5471 >    MyFree(class_name);
5472 >    class_name = NULL;
5473 >    yy_conf = NULL;
5474 >    yy_aconf = NULL;
5475    }
5476   }
5477      break;
5478  
5479 <  case 356:
5480 <
5481 < /* Line 1806 of yacc.c  */
5747 < #line 2152 "ircd_parser.y"
5479 >  case 364:
5480 > /* Line 1787 of yacc.c  */
5481 > #line 2084 "conf_parser.y"
5482      {
5483    if (conf_parser_ctx.pass == 2)
5484    {
5751    if (yy_conf->name != NULL)
5752      yyerror("Multiple connect name entry");
5753
5485      MyFree(yy_conf->name);
5486      DupString(yy_conf->name, yylval.string);
5487    }
5488   }
5489      break;
5490  
5491 <  case 357:
5492 <
5493 < /* Line 1806 of yacc.c  */
5763 < #line 2164 "ircd_parser.y"
5491 >  case 365:
5492 > /* Line 1787 of yacc.c  */
5493 > #line 2093 "conf_parser.y"
5494      {
5495    if (conf_parser_ctx.pass == 2)
5496    {
# Line 5770 | Line 5500 | yyreduce:
5500   }
5501      break;
5502  
5503 <  case 358:
5504 <
5505 < /* Line 1806 of yacc.c  */
5776 < #line 2173 "ircd_parser.y"
5503 >  case 366:
5504 > /* Line 1787 of yacc.c  */
5505 > #line 2102 "conf_parser.y"
5506      {
5507    if (conf_parser_ctx.pass == 2)
5508    {
# Line 5791 | Line 5520 | yyreduce:
5520      {
5521        assert(res != NULL);
5522  
5523 <      memcpy(&yy_aconf->my_ipnum, res->ai_addr, res->ai_addrlen);
5524 <      yy_aconf->my_ipnum.ss.ss_family = res->ai_family;
5525 <      yy_aconf->my_ipnum.ss_len = res->ai_addrlen;
5523 >      memcpy(&yy_aconf->bind, res->ai_addr, res->ai_addrlen);
5524 >      yy_aconf->bind.ss.ss_family = res->ai_family;
5525 >      yy_aconf->bind.ss_len = res->ai_addrlen;
5526        freeaddrinfo(res);
5527      }
5528    }
5529   }
5530      break;
5531  
5532 <  case 359:
5533 <
5534 < /* Line 1806 of yacc.c  */
5806 < #line 2199 "ircd_parser.y"
5532 >  case 367:
5533 > /* Line 1787 of yacc.c  */
5534 > #line 2128 "conf_parser.y"
5535      {
5536    if (conf_parser_ctx.pass == 2)
5537    {
# Line 5822 | Line 5550 | yyreduce:
5550   }
5551      break;
5552  
5553 <  case 360:
5554 <
5555 < /* Line 1806 of yacc.c  */
5828 < #line 2217 "ircd_parser.y"
5553 >  case 368:
5554 > /* Line 1787 of yacc.c  */
5555 > #line 2146 "conf_parser.y"
5556      {
5557    if (conf_parser_ctx.pass == 2)
5558    {
# Line 5844 | Line 5571 | yyreduce:
5571   }
5572      break;
5573  
5574 <  case 361:
5575 <
5576 < /* Line 1806 of yacc.c  */
5850 < #line 2235 "ircd_parser.y"
5574 >  case 369:
5575 > /* Line 1787 of yacc.c  */
5576 > #line 2164 "conf_parser.y"
5577      {
5578    if (conf_parser_ctx.pass == 2)
5579      yy_aconf->port = (yyvsp[(3) - (4)].number);
5580   }
5581      break;
5582  
5583 <  case 362:
5584 <
5585 < /* Line 1806 of yacc.c  */
5860 < #line 2241 "ircd_parser.y"
5583 >  case 370:
5584 > /* Line 1787 of yacc.c  */
5585 > #line 2170 "conf_parser.y"
5586      {
5587    if (conf_parser_ctx.pass == 2)
5588      yy_aconf->aftype = AF_INET;
5589   }
5590      break;
5591  
5592 <  case 363:
5593 <
5594 < /* Line 1806 of yacc.c  */
5870 < #line 2245 "ircd_parser.y"
5592 >  case 371:
5593 > /* Line 1787 of yacc.c  */
5594 > #line 2174 "conf_parser.y"
5595      {
5596   #ifdef IPV6
5597    if (conf_parser_ctx.pass == 2)
# Line 5876 | Line 5600 | yyreduce:
5600   }
5601      break;
5602  
5603 <  case 364:
5604 <
5605 < /* Line 1806 of yacc.c  */
5882 < #line 2253 "ircd_parser.y"
5603 >  case 372:
5604 > /* Line 1787 of yacc.c  */
5605 > #line 2182 "conf_parser.y"
5606      {
5607   }
5608      break;
5609  
5610 <  case 368:
5611 <
5612 < /* Line 1806 of yacc.c  */
5890 < #line 2258 "ircd_parser.y"
5610 >  case 376:
5611 > /* Line 1787 of yacc.c  */
5612 > #line 2187 "conf_parser.y"
5613      {
5614    if (conf_parser_ctx.pass == 2)
5615      SetConfAllowAutoConn(yy_aconf);
5616   }
5617      break;
5618  
5619 <  case 369:
5620 <
5621 < /* Line 1806 of yacc.c  */
5900 < #line 2262 "ircd_parser.y"
5619 >  case 377:
5620 > /* Line 1787 of yacc.c  */
5621 > #line 2191 "conf_parser.y"
5622      {
5623    if (conf_parser_ctx.pass == 2)
5624      SetConfAwayBurst(yy_aconf);
5625   }
5626      break;
5627  
5628 <  case 370:
5629 <
5630 < /* Line 1806 of yacc.c  */
5910 < #line 2266 "ircd_parser.y"
5628 >  case 378:
5629 > /* Line 1787 of yacc.c  */
5630 > #line 2195 "conf_parser.y"
5631      {
5632    if (conf_parser_ctx.pass == 2)
5633      SetConfTopicBurst(yy_aconf);
5634   }
5635      break;
5636  
5637 <  case 371:
5637 >  case 379:
5638 > /* Line 1787 of yacc.c  */
5639 > #line 2199 "conf_parser.y"
5640 >    {
5641 >  if (conf_parser_ctx.pass == 2)
5642 >    SetConfSSL(yy_aconf);
5643 > }
5644 >    break;
5645  
5646 < /* Line 1806 of yacc.c  */
5647 < #line 2272 "ircd_parser.y"
5646 >  case 380:
5647 > /* Line 1787 of yacc.c  */
5648 > #line 2205 "conf_parser.y"
5649      {
5650    if (conf_parser_ctx.pass == 2)
5651    {
# Line 5929 | Line 5657 | yyreduce:
5657   }
5658      break;
5659  
5660 <  case 372:
5661 <
5662 < /* Line 1806 of yacc.c  */
5935 < #line 2283 "ircd_parser.y"
5660 >  case 381:
5661 > /* Line 1787 of yacc.c  */
5662 > #line 2216 "conf_parser.y"
5663      {
5664    if (conf_parser_ctx.pass == 2)
5665    {
5666 <    struct CollectItem *yy_tmp;
5666 >    char *mask;
5667  
5668 <    yy_tmp = (struct CollectItem *)MyMalloc(sizeof(struct CollectItem));
5669 <    DupString(yy_tmp->host, yylval.string);
5943 <    DupString(yy_tmp->user, "*");
5944 <    dlinkAdd(yy_tmp, &yy_tmp->node, &hub_conf_list);
5668 >    DupString(mask, yylval.string);
5669 >    dlinkAdd(mask, make_dlink_node(), &yy_aconf->hub_list);
5670    }
5671   }
5672      break;
5673  
5674 <  case 373:
5675 <
5676 < /* Line 1806 of yacc.c  */
5952 < #line 2296 "ircd_parser.y"
5674 >  case 382:
5675 > /* Line 1787 of yacc.c  */
5676 > #line 2227 "conf_parser.y"
5677      {
5678    if (conf_parser_ctx.pass == 2)
5679    {
5680 <    struct CollectItem *yy_tmp;
5680 >    char *mask;
5681  
5682 <    yy_tmp = (struct CollectItem *)MyMalloc(sizeof(struct CollectItem));
5683 <    DupString(yy_tmp->host, yylval.string);
5960 <    DupString(yy_tmp->user, "*");
5961 <    dlinkAdd(yy_tmp, &yy_tmp->node, &leaf_conf_list);
5682 >    DupString(mask, yylval.string);
5683 >    dlinkAdd(mask, make_dlink_node(), &yy_aconf->leaf_list);
5684    }
5685   }
5686      break;
5687  
5688 <  case 374:
5689 <
5690 < /* Line 1806 of yacc.c  */
5969 < #line 2309 "ircd_parser.y"
5688 >  case 383:
5689 > /* Line 1787 of yacc.c  */
5690 > #line 2238 "conf_parser.y"
5691      {
5692    if (conf_parser_ctx.pass == 2)
5693    {
# Line 5976 | Line 5697 | yyreduce:
5697   }
5698      break;
5699  
5700 <  case 375:
5700 >  case 384:
5701 > /* Line 1787 of yacc.c  */
5702 > #line 2247 "conf_parser.y"
5703 >    {
5704 > #ifdef HAVE_LIBCRYPTO
5705 >  if (conf_parser_ctx.pass == 2)
5706 >  {
5707 >    MyFree(yy_aconf->cipher_list);
5708 >    DupString(yy_aconf->cipher_list, yylval.string);
5709 >  }
5710 > #else
5711 >  if (conf_parser_ctx.pass == 2)
5712 >    yyerror("Ignoring connect::ciphers -- no OpenSSL support");
5713 > #endif
5714 > }
5715 >    break;
5716  
5717 < /* Line 1806 of yacc.c  */
5718 < #line 2321 "ircd_parser.y"
5717 >  case 385:
5718 > /* Line 1787 of yacc.c  */
5719 > #line 2265 "conf_parser.y"
5720      {
5721    if (conf_parser_ctx.pass == 2)
5722    {
# Line 5989 | Line 5726 | yyreduce:
5726   }
5727      break;
5728  
5729 <  case 376:
5730 <
5731 < /* Line 1806 of yacc.c  */
5995 < #line 2328 "ircd_parser.y"
5729 >  case 386:
5730 > /* Line 1787 of yacc.c  */
5731 > #line 2272 "conf_parser.y"
5732      {
5733    if (conf_parser_ctx.pass == 2)
5734    {
# Line 6031 | Line 5767 | yyreduce:
5767        }
5768        else
5769        {
5770 +        find_and_delete_temporary(userbuf, hostbuf, CONF_KLINE);
5771 +
5772          yy_aconf = map_to_conf(make_conf_item(KLINE_TYPE));
5773  
5774          DupString(yy_aconf->user, userbuf);
# Line 6040 | Line 5778 | yyreduce:
5778            DupString(yy_aconf->reason, reasonbuf);
5779          else
5780            DupString(yy_aconf->reason, "No reason");
5781 <        add_conf_by_address(CONF_KILL, yy_aconf);
5781 >        add_conf_by_address(CONF_KLINE, yy_aconf);
5782        }
5783      }
5784  
# Line 6049 | Line 5787 | yyreduce:
5787   }
5788      break;
5789  
5790 <  case 377:
5791 <
5792 < /* Line 1806 of yacc.c  */
6055 < #line 2384 "ircd_parser.y"
5790 >  case 387:
5791 > /* Line 1787 of yacc.c  */
5792 > #line 2330 "conf_parser.y"
5793      {
5794   }
5795      break;
5796  
5797 <  case 381:
5798 <
5799 < /* Line 1806 of yacc.c  */
6063 < #line 2389 "ircd_parser.y"
5797 >  case 391:
5798 > /* Line 1787 of yacc.c  */
5799 > #line 2335 "conf_parser.y"
5800      {
5801    if (conf_parser_ctx.pass == 2)
5802      regex_ban = 1;
5803   }
5804      break;
5805  
5806 <  case 388:
5807 <
5808 < /* Line 1806 of yacc.c  */
6073 < #line 2398 "ircd_parser.y"
5806 >  case 398:
5807 > /* Line 1787 of yacc.c  */
5808 > #line 2344 "conf_parser.y"
5809      {
5810    if (conf_parser_ctx.pass == 2)
5811    {
# Line 6090 | Line 5825 | yyreduce:
5825   }
5826      break;
5827  
5828 <  case 389:
5829 <
5830 < /* Line 1806 of yacc.c  */
6096 < #line 2417 "ircd_parser.y"
5828 >  case 399:
5829 > /* Line 1787 of yacc.c  */
5830 > #line 2363 "conf_parser.y"
5831      {
5832    if (conf_parser_ctx.pass == 2)
5833      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
5834   }
5835      break;
5836  
5837 <  case 390:
5838 <
5839 < /* Line 1806 of yacc.c  */
6106 < #line 2426 "ircd_parser.y"
5837 >  case 400:
5838 > /* Line 1787 of yacc.c  */
5839 > #line 2372 "conf_parser.y"
5840      {
5841    if (conf_parser_ctx.pass == 2)
5842      hostbuf[0] = reasonbuf[0] = '\0';
5843   }
5844      break;
5845  
5846 <  case 391:
5847 <
5848 < /* Line 1806 of yacc.c  */
6116 < #line 2430 "ircd_parser.y"
5846 >  case 401:
5847 > /* Line 1787 of yacc.c  */
5848 > #line 2376 "conf_parser.y"
5849      {
5850    if (conf_parser_ctx.pass == 2)
5851    {
5852      if (hostbuf[0] && parse_netmask(hostbuf, NULL, NULL) != HM_HOST)
5853      {
5854 +      find_and_delete_temporary(NULL, hostbuf, CONF_DLINE);
5855 +
5856        yy_aconf = map_to_conf(make_conf_item(DLINE_TYPE));
5857        DupString(yy_aconf->host, hostbuf);
5858  
# Line 6133 | Line 5867 | yyreduce:
5867   }
5868      break;
5869  
5870 <  case 397:
5871 <
5872 < /* Line 1806 of yacc.c  */
6139 < #line 2452 "ircd_parser.y"
5870 >  case 407:
5871 > /* Line 1787 of yacc.c  */
5872 > #line 2400 "conf_parser.y"
5873      {
5874    if (conf_parser_ctx.pass == 2)
5875      strlcpy(hostbuf, yylval.string, sizeof(hostbuf));
5876   }
5877      break;
5878  
5879 <  case 398:
5880 <
5881 < /* Line 1806 of yacc.c  */
6149 < #line 2458 "ircd_parser.y"
5879 >  case 408:
5880 > /* Line 1787 of yacc.c  */
5881 > #line 2406 "conf_parser.y"
5882      {
5883    if (conf_parser_ctx.pass == 2)
5884      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
5885   }
5886      break;
5887  
5888 <  case 404:
5889 <
5890 < /* Line 1806 of yacc.c  */
6159 < #line 2472 "ircd_parser.y"
5888 >  case 414:
5889 > /* Line 1787 of yacc.c  */
5890 > #line 2420 "conf_parser.y"
5891      {
5892    if (conf_parser_ctx.pass == 2)
5893    {
# Line 6172 | Line 5903 | yyreduce:
5903   }
5904      break;
5905  
5906 <  case 405:
5907 <
5908 < /* Line 1806 of yacc.c  */
6178 < #line 2490 "ircd_parser.y"
5906 >  case 415:
5907 > /* Line 1787 of yacc.c  */
5908 > #line 2438 "conf_parser.y"
5909      {
5910    if (conf_parser_ctx.pass == 2)
5911    {
# Line 6185 | Line 5915 | yyreduce:
5915   }
5916      break;
5917  
5918 <  case 406:
5919 <
5920 < /* Line 1806 of yacc.c  */
6191 < #line 2497 "ircd_parser.y"
5918 >  case 416:
5919 > /* Line 1787 of yacc.c  */
5920 > #line 2445 "conf_parser.y"
5921      {
5922    if (conf_parser_ctx.pass == 2)
5923    {
# Line 6229 | Line 5958 | yyreduce:
5958   }
5959      break;
5960  
5961 <  case 407:
5962 <
5963 < /* Line 1806 of yacc.c  */
6235 < #line 2537 "ircd_parser.y"
5961 >  case 417:
5962 > /* Line 1787 of yacc.c  */
5963 > #line 2485 "conf_parser.y"
5964      {
5965   }
5966      break;
5967  
5968 <  case 411:
5969 <
5970 < /* Line 1806 of yacc.c  */
6243 < #line 2542 "ircd_parser.y"
5968 >  case 421:
5969 > /* Line 1787 of yacc.c  */
5970 > #line 2490 "conf_parser.y"
5971      {
5972    if (conf_parser_ctx.pass == 2)
5973      regex_ban = 1;
5974   }
5975      break;
5976  
5977 <  case 418:
5978 <
5979 < /* Line 1806 of yacc.c  */
6253 < #line 2551 "ircd_parser.y"
5977 >  case 428:
5978 > /* Line 1787 of yacc.c  */
5979 > #line 2499 "conf_parser.y"
5980      {
5981    if (conf_parser_ctx.pass == 2)
5982      strlcpy(gecos_name, yylval.string, sizeof(gecos_name));
5983   }
5984      break;
5985  
5986 <  case 419:
5987 <
5988 < /* Line 1806 of yacc.c  */
6263 < #line 2557 "ircd_parser.y"
5986 >  case 429:
5987 > /* Line 1787 of yacc.c  */
5988 > #line 2505 "conf_parser.y"
5989      {
5990    if (conf_parser_ctx.pass == 2)
5991      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
5992   }
5993      break;
5994  
5995 <  case 475:
5996 <
5997 < /* Line 1806 of yacc.c  */
6273 < #line 2601 "ircd_parser.y"
5995 >  case 488:
5996 > /* Line 1787 of yacc.c  */
5997 > #line 2551 "conf_parser.y"
5998      {
5999    ConfigFileEntry.max_watch = (yyvsp[(3) - (4)].number);
6000   }
6001      break;
6002  
6003 <  case 476:
6003 >  case 489:
6004 > /* Line 1787 of yacc.c  */
6005 > #line 2556 "conf_parser.y"
6006 >    {
6007 >  if (conf_parser_ctx.pass == 2)
6008 >    ConfigFileEntry.glines = yylval.number;
6009 > }
6010 >    break;
6011  
6012 < /* Line 1806 of yacc.c  */
6013 < #line 2606 "ircd_parser.y"
6012 >  case 490:
6013 > /* Line 1787 of yacc.c  */
6014 > #line 2562 "conf_parser.y"
6015      {
6016 <  ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
6016 >  if (conf_parser_ctx.pass == 2)
6017 >    ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
6018   }
6019      break;
6020  
6021 <  case 477:
6021 >  case 491:
6022 > /* Line 1787 of yacc.c  */
6023 > #line 2568 "conf_parser.y"
6024 >    {
6025 >  if (conf_parser_ctx.pass == 2)
6026 >    ConfigFileEntry.gline_request_time = (yyvsp[(3) - (4)].number);
6027 > }
6028 >    break;
6029  
6030 < /* Line 1806 of yacc.c  */
6031 < #line 2611 "ircd_parser.y"
6030 >  case 492:
6031 > /* Line 1787 of yacc.c  */
6032 > #line 2574 "conf_parser.y"
6033      {
6034 <  ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
6034 >  ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
6035   }
6036      break;
6037  
6038 <  case 478:
6038 >  case 493:
6039 > /* Line 1787 of yacc.c  */
6040 > #line 2579 "conf_parser.y"
6041 >    {
6042 >  ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
6043 > }
6044 >    break;
6045  
6046 < /* Line 1806 of yacc.c  */
6047 < #line 2616 "ircd_parser.y"
6046 >  case 494:
6047 > /* Line 1787 of yacc.c  */
6048 > #line 2584 "conf_parser.y"
6049      {
6050    ConfigFileEntry.use_whois_actually = yylval.number;
6051   }
6052      break;
6053  
6054 <  case 479:
6055 <
6056 < /* Line 1806 of yacc.c  */
6309 < #line 2621 "ircd_parser.y"
6054 >  case 495:
6055 > /* Line 1787 of yacc.c  */
6056 > #line 2589 "conf_parser.y"
6057      {
6058    GlobalSetOptions.rejecttime = yylval.number;
6059   }
6060      break;
6061  
6062 <  case 480:
6063 <
6064 < /* Line 1806 of yacc.c  */
6318 < #line 2626 "ircd_parser.y"
6062 >  case 496:
6063 > /* Line 1787 of yacc.c  */
6064 > #line 2594 "conf_parser.y"
6065      {
6066    ConfigFileEntry.tkline_expire_notices = yylval.number;
6067   }
6068      break;
6069  
6070 <  case 481:
6071 <
6072 < /* Line 1806 of yacc.c  */
6327 < #line 2631 "ircd_parser.y"
6070 >  case 497:
6071 > /* Line 1787 of yacc.c  */
6072 > #line 2599 "conf_parser.y"
6073      {
6074    ConfigFileEntry.kill_chase_time_limit = (yyvsp[(3) - (4)].number);
6075   }
6076      break;
6077  
6078 <  case 482:
6079 <
6080 < /* Line 1806 of yacc.c  */
6336 < #line 2636 "ircd_parser.y"
6078 >  case 498:
6079 > /* Line 1787 of yacc.c  */
6080 > #line 2604 "conf_parser.y"
6081      {
6082    ConfigFileEntry.hide_spoof_ips = yylval.number;
6083   }
6084      break;
6085  
6086 <  case 483:
6087 <
6088 < /* Line 1806 of yacc.c  */
6345 < #line 2641 "ircd_parser.y"
6086 >  case 499:
6087 > /* Line 1787 of yacc.c  */
6088 > #line 2609 "conf_parser.y"
6089      {
6090    ConfigFileEntry.ignore_bogus_ts = yylval.number;
6091   }
6092      break;
6093  
6094 <  case 484:
6095 <
6096 < /* Line 1806 of yacc.c  */
6354 < #line 2646 "ircd_parser.y"
6094 >  case 500:
6095 > /* Line 1787 of yacc.c  */
6096 > #line 2614 "conf_parser.y"
6097      {
6098    ConfigFileEntry.disable_remote = yylval.number;
6099   }
6100      break;
6101  
6102 <  case 485:
6103 <
6104 < /* Line 1806 of yacc.c  */
6363 < #line 2651 "ircd_parser.y"
6102 >  case 501:
6103 > /* Line 1787 of yacc.c  */
6104 > #line 2619 "conf_parser.y"
6105      {
6106    ConfigFileEntry.failed_oper_notice = yylval.number;
6107   }
6108      break;
6109  
6110 <  case 486:
6111 <
6112 < /* Line 1806 of yacc.c  */
6372 < #line 2656 "ircd_parser.y"
6110 >  case 502:
6111 > /* Line 1787 of yacc.c  */
6112 > #line 2624 "conf_parser.y"
6113      {
6114    ConfigFileEntry.anti_nick_flood = yylval.number;
6115   }
6116      break;
6117  
6118 <  case 487:
6119 <
6120 < /* Line 1806 of yacc.c  */
6381 < #line 2661 "ircd_parser.y"
6118 >  case 503:
6119 > /* Line 1787 of yacc.c  */
6120 > #line 2629 "conf_parser.y"
6121      {
6122    ConfigFileEntry.max_nick_time = (yyvsp[(3) - (4)].number);
6123   }
6124      break;
6125  
6126 <  case 488:
6127 <
6128 < /* Line 1806 of yacc.c  */
6390 < #line 2666 "ircd_parser.y"
6126 >  case 504:
6127 > /* Line 1787 of yacc.c  */
6128 > #line 2634 "conf_parser.y"
6129      {
6130    ConfigFileEntry.max_nick_changes = (yyvsp[(3) - (4)].number);
6131   }
6132      break;
6133  
6134 <  case 489:
6135 <
6136 < /* Line 1806 of yacc.c  */
6399 < #line 2671 "ircd_parser.y"
6134 >  case 505:
6135 > /* Line 1787 of yacc.c  */
6136 > #line 2639 "conf_parser.y"
6137      {
6138    ConfigFileEntry.max_accept = (yyvsp[(3) - (4)].number);
6139   }
6140      break;
6141  
6142 <  case 490:
6143 <
6144 < /* Line 1806 of yacc.c  */
6408 < #line 2676 "ircd_parser.y"
6142 >  case 506:
6143 > /* Line 1787 of yacc.c  */
6144 > #line 2644 "conf_parser.y"
6145      {
6146    ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[(3) - (4)].number);
6147   }
6148      break;
6149  
6150 <  case 491:
6151 <
6152 < /* Line 1806 of yacc.c  */
6417 < #line 2681 "ircd_parser.y"
6150 >  case 507:
6151 > /* Line 1787 of yacc.c  */
6152 > #line 2649 "conf_parser.y"
6153      {
6154    ConfigFileEntry.ts_warn_delta = (yyvsp[(3) - (4)].number);
6155   }
6156      break;
6157  
6158 <  case 492:
6159 <
6160 < /* Line 1806 of yacc.c  */
6426 < #line 2686 "ircd_parser.y"
6158 >  case 508:
6159 > /* Line 1787 of yacc.c  */
6160 > #line 2654 "conf_parser.y"
6161      {
6162    if (conf_parser_ctx.pass == 2)
6163      ConfigFileEntry.ts_max_delta = (yyvsp[(3) - (4)].number);
6164   }
6165      break;
6166  
6167 <  case 493:
6168 <
6169 < /* Line 1806 of yacc.c  */
6436 < #line 2692 "ircd_parser.y"
6167 >  case 509:
6168 > /* Line 1787 of yacc.c  */
6169 > #line 2660 "conf_parser.y"
6170      {
6171    if (((yyvsp[(3) - (4)].number) > 0) && conf_parser_ctx.pass == 1)
6172    {
# Line 6445 | Line 6178 | yyreduce:
6178   }
6179      break;
6180  
6181 <  case 494:
6182 <
6183 < /* Line 1806 of yacc.c  */
6451 < #line 2703 "ircd_parser.y"
6181 >  case 510:
6182 > /* Line 1787 of yacc.c  */
6183 > #line 2671 "conf_parser.y"
6184      {
6185    ConfigFileEntry.kline_with_reason = yylval.number;
6186   }
6187      break;
6188  
6189 <  case 495:
6190 <
6191 < /* Line 1806 of yacc.c  */
6460 < #line 2708 "ircd_parser.y"
6189 >  case 511:
6190 > /* Line 1787 of yacc.c  */
6191 > #line 2676 "conf_parser.y"
6192      {
6193    if (conf_parser_ctx.pass == 2)
6194    {
# Line 6467 | Line 6198 | yyreduce:
6198   }
6199      break;
6200  
6201 <  case 496:
6202 <
6203 < /* Line 1806 of yacc.c  */
6473 < #line 2717 "ircd_parser.y"
6201 >  case 512:
6202 > /* Line 1787 of yacc.c  */
6203 > #line 2685 "conf_parser.y"
6204      {
6205    ConfigFileEntry.invisible_on_connect = yylval.number;
6206   }
6207      break;
6208  
6209 <  case 497:
6210 <
6211 < /* Line 1806 of yacc.c  */
6482 < #line 2722 "ircd_parser.y"
6209 >  case 513:
6210 > /* Line 1787 of yacc.c  */
6211 > #line 2690 "conf_parser.y"
6212      {
6213    ConfigFileEntry.warn_no_nline = yylval.number;
6214   }
6215      break;
6216  
6217 <  case 498:
6218 <
6219 < /* Line 1806 of yacc.c  */
6491 < #line 2727 "ircd_parser.y"
6217 >  case 514:
6218 > /* Line 1787 of yacc.c  */
6219 > #line 2695 "conf_parser.y"
6220      {
6221    ConfigFileEntry.stats_e_disabled = yylval.number;
6222   }
6223      break;
6224  
6225 <  case 499:
6226 <
6227 < /* Line 1806 of yacc.c  */
6500 < #line 2732 "ircd_parser.y"
6225 >  case 515:
6226 > /* Line 1787 of yacc.c  */
6227 > #line 2700 "conf_parser.y"
6228      {
6229    ConfigFileEntry.stats_o_oper_only = yylval.number;
6230   }
6231      break;
6232  
6233 <  case 500:
6234 <
6235 < /* Line 1806 of yacc.c  */
6509 < #line 2737 "ircd_parser.y"
6233 >  case 516:
6234 > /* Line 1787 of yacc.c  */
6235 > #line 2705 "conf_parser.y"
6236      {
6237    ConfigFileEntry.stats_P_oper_only = yylval.number;
6238   }
6239      break;
6240  
6241 <  case 501:
6242 <
6243 < /* Line 1806 of yacc.c  */
6518 < #line 2742 "ircd_parser.y"
6241 >  case 517:
6242 > /* Line 1787 of yacc.c  */
6243 > #line 2710 "conf_parser.y"
6244      {
6245    ConfigFileEntry.stats_k_oper_only = 2 * yylval.number;
6246   }
6247      break;
6248  
6249 <  case 502:
6250 <
6251 < /* Line 1806 of yacc.c  */
6527 < #line 2745 "ircd_parser.y"
6249 >  case 518:
6250 > /* Line 1787 of yacc.c  */
6251 > #line 2713 "conf_parser.y"
6252      {
6253    ConfigFileEntry.stats_k_oper_only = 1;
6254   }
6255      break;
6256  
6257 <  case 503:
6258 <
6259 < /* Line 1806 of yacc.c  */
6536 < #line 2750 "ircd_parser.y"
6257 >  case 519:
6258 > /* Line 1787 of yacc.c  */
6259 > #line 2718 "conf_parser.y"
6260      {
6261    ConfigFileEntry.stats_i_oper_only = 2 * yylval.number;
6262   }
6263      break;
6264  
6265 <  case 504:
6266 <
6267 < /* Line 1806 of yacc.c  */
6545 < #line 2753 "ircd_parser.y"
6265 >  case 520:
6266 > /* Line 1787 of yacc.c  */
6267 > #line 2721 "conf_parser.y"
6268      {
6269    ConfigFileEntry.stats_i_oper_only = 1;
6270   }
6271      break;
6272  
6273 <  case 505:
6274 <
6275 < /* Line 1806 of yacc.c  */
6554 < #line 2758 "ircd_parser.y"
6273 >  case 521:
6274 > /* Line 1787 of yacc.c  */
6275 > #line 2726 "conf_parser.y"
6276      {
6277    ConfigFileEntry.pace_wait = (yyvsp[(3) - (4)].number);
6278   }
6279      break;
6280  
6281 <  case 506:
6282 <
6283 < /* Line 1806 of yacc.c  */
6563 < #line 2763 "ircd_parser.y"
6281 >  case 522:
6282 > /* Line 1787 of yacc.c  */
6283 > #line 2731 "conf_parser.y"
6284      {
6285    ConfigFileEntry.caller_id_wait = (yyvsp[(3) - (4)].number);
6286   }
6287      break;
6288  
6289 <  case 507:
6290 <
6291 < /* Line 1806 of yacc.c  */
6572 < #line 2768 "ircd_parser.y"
6289 >  case 523:
6290 > /* Line 1787 of yacc.c  */
6291 > #line 2736 "conf_parser.y"
6292      {
6293    ConfigFileEntry.opers_bypass_callerid = yylval.number;
6294   }
6295      break;
6296  
6297 <  case 508:
6298 <
6299 < /* Line 1806 of yacc.c  */
6581 < #line 2773 "ircd_parser.y"
6297 >  case 524:
6298 > /* Line 1787 of yacc.c  */
6299 > #line 2741 "conf_parser.y"
6300      {
6301    ConfigFileEntry.pace_wait_simple = (yyvsp[(3) - (4)].number);
6302   }
6303      break;
6304  
6305 <  case 509:
6306 <
6307 < /* Line 1806 of yacc.c  */
6590 < #line 2778 "ircd_parser.y"
6305 >  case 525:
6306 > /* Line 1787 of yacc.c  */
6307 > #line 2746 "conf_parser.y"
6308      {
6309    ConfigFileEntry.short_motd = yylval.number;
6310   }
6311      break;
6312  
6313 <  case 510:
6314 <
6315 < /* Line 1806 of yacc.c  */
6599 < #line 2783 "ircd_parser.y"
6313 >  case 526:
6314 > /* Line 1787 of yacc.c  */
6315 > #line 2751 "conf_parser.y"
6316      {
6317    ConfigFileEntry.no_oper_flood = yylval.number;
6318   }
6319      break;
6320  
6321 <  case 511:
6322 <
6323 < /* Line 1806 of yacc.c  */
6608 < #line 2788 "ircd_parser.y"
6321 >  case 527:
6322 > /* Line 1787 of yacc.c  */
6323 > #line 2756 "conf_parser.y"
6324      {
6325    ConfigFileEntry.true_no_oper_flood = yylval.number;
6326   }
6327      break;
6328  
6329 <  case 512:
6330 <
6331 < /* Line 1806 of yacc.c  */
6617 < #line 2793 "ircd_parser.y"
6329 >  case 528:
6330 > /* Line 1787 of yacc.c  */
6331 > #line 2761 "conf_parser.y"
6332      {
6333    ConfigFileEntry.oper_pass_resv = yylval.number;
6334   }
6335      break;
6336  
6337 <  case 513:
6338 <
6339 < /* Line 1806 of yacc.c  */
6626 < #line 2798 "ircd_parser.y"
6337 >  case 529:
6338 > /* Line 1787 of yacc.c  */
6339 > #line 2766 "conf_parser.y"
6340      {
6341    if (conf_parser_ctx.pass == 2)
6342    {
# Line 6635 | Line 6348 | yyreduce:
6348   }
6349      break;
6350  
6351 <  case 514:
6352 <
6353 < /* Line 1806 of yacc.c  */
6641 < #line 2809 "ircd_parser.y"
6351 >  case 530:
6352 > /* Line 1787 of yacc.c  */
6353 > #line 2777 "conf_parser.y"
6354      {
6355    ConfigFileEntry.dots_in_ident = (yyvsp[(3) - (4)].number);
6356   }
6357      break;
6358  
6359 <  case 515:
6360 <
6361 < /* Line 1806 of yacc.c  */
6650 < #line 2814 "ircd_parser.y"
6359 >  case 531:
6360 > /* Line 1787 of yacc.c  */
6361 > #line 2782 "conf_parser.y"
6362      {
6363    ConfigFileEntry.max_targets = (yyvsp[(3) - (4)].number);
6364   }
6365      break;
6366  
6367 <  case 516:
6368 <
6369 < /* Line 1806 of yacc.c  */
6659 < #line 2819 "ircd_parser.y"
6367 >  case 532:
6368 > /* Line 1787 of yacc.c  */
6369 > #line 2787 "conf_parser.y"
6370      {
6371    ConfigFileEntry.use_egd = yylval.number;
6372   }
6373      break;
6374  
6375 <  case 517:
6376 <
6377 < /* Line 1806 of yacc.c  */
6668 < #line 2824 "ircd_parser.y"
6375 >  case 533:
6376 > /* Line 1787 of yacc.c  */
6377 > #line 2792 "conf_parser.y"
6378      {
6379    if (conf_parser_ctx.pass == 2)
6380    {
# Line 6675 | Line 6384 | yyreduce:
6384   }
6385      break;
6386  
6387 <  case 518:
6388 <
6389 < /* Line 1806 of yacc.c  */
6681 < #line 2833 "ircd_parser.y"
6387 >  case 534:
6388 > /* Line 1787 of yacc.c  */
6389 > #line 2801 "conf_parser.y"
6390      {
6391    if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6392    {
# Line 6688 | Line 6396 | yyreduce:
6396   }
6397      break;
6398  
6399 <  case 519:
6400 <
6401 < /* Line 1806 of yacc.c  */
6694 < #line 2842 "ircd_parser.y"
6399 >  case 535:
6400 > /* Line 1787 of yacc.c  */
6401 > #line 2810 "conf_parser.y"
6402      {
6403    ConfigFileEntry.ping_cookie = yylval.number;
6404   }
6405      break;
6406  
6407 <  case 520:
6408 <
6409 < /* Line 1806 of yacc.c  */
6703 < #line 2847 "ircd_parser.y"
6407 >  case 536:
6408 > /* Line 1787 of yacc.c  */
6409 > #line 2815 "conf_parser.y"
6410      {
6411    ConfigFileEntry.disable_auth = yylval.number;
6412   }
6413      break;
6414  
6415 <  case 521:
6416 <
6417 < /* Line 1806 of yacc.c  */
6712 < #line 2852 "ircd_parser.y"
6415 >  case 537:
6416 > /* Line 1787 of yacc.c  */
6417 > #line 2820 "conf_parser.y"
6418      {
6419    ConfigFileEntry.throttle_time = yylval.number;
6420   }
6421      break;
6422  
6423 <  case 522:
6424 <
6425 < /* Line 1806 of yacc.c  */
6721 < #line 2857 "ircd_parser.y"
6423 >  case 538:
6424 > /* Line 1787 of yacc.c  */
6425 > #line 2825 "conf_parser.y"
6426      {
6427    ConfigFileEntry.oper_umodes = 0;
6428   }
6429      break;
6430  
6431 <  case 526:
6432 <
6433 < /* Line 1806 of yacc.c  */
6730 < #line 2863 "ircd_parser.y"
6431 >  case 542:
6432 > /* Line 1787 of yacc.c  */
6433 > #line 2831 "conf_parser.y"
6434      {
6435    ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6436   }
6437      break;
6438  
6439 <  case 527:
6440 <
6441 < /* Line 1806 of yacc.c  */
6739 < #line 2866 "ircd_parser.y"
6439 >  case 543:
6440 > /* Line 1787 of yacc.c  */
6441 > #line 2834 "conf_parser.y"
6442      {
6443    ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6444   }
6445      break;
6446  
6447 <  case 528:
6448 <
6449 < /* Line 1806 of yacc.c  */
6748 < #line 2869 "ircd_parser.y"
6447 >  case 544:
6448 > /* Line 1787 of yacc.c  */
6449 > #line 2837 "conf_parser.y"
6450      {
6451    ConfigFileEntry.oper_umodes |= UMODE_CCONN_FULL;
6452   }
6453      break;
6454  
6455 <  case 529:
6456 <
6457 < /* Line 1806 of yacc.c  */
6757 < #line 2872 "ircd_parser.y"
6455 >  case 545:
6456 > /* Line 1787 of yacc.c  */
6457 > #line 2840 "conf_parser.y"
6458      {
6459    ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6460   }
6461      break;
6462  
6463 <  case 530:
6464 <
6465 < /* Line 1806 of yacc.c  */
6766 < #line 2875 "ircd_parser.y"
6463 >  case 546:
6464 > /* Line 1787 of yacc.c  */
6465 > #line 2843 "conf_parser.y"
6466      {
6467    ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6468   }
6469      break;
6470  
6471 <  case 531:
6472 <
6473 < /* Line 1806 of yacc.c  */
6775 < #line 2878 "ircd_parser.y"
6471 >  case 547:
6472 > /* Line 1787 of yacc.c  */
6473 > #line 2846 "conf_parser.y"
6474      {
6475    ConfigFileEntry.oper_umodes |= UMODE_FULL;
6476   }
6477      break;
6478  
6479 <  case 532:
6480 <
6481 < /* Line 1806 of yacc.c  */
6784 < #line 2881 "ircd_parser.y"
6479 >  case 548:
6480 > /* Line 1787 of yacc.c  */
6481 > #line 2849 "conf_parser.y"
6482      {
6483    ConfigFileEntry.oper_umodes |= UMODE_HIDDEN;
6484   }
6485      break;
6486  
6487 <  case 533:
6488 <
6489 < /* Line 1806 of yacc.c  */
6793 < #line 2884 "ircd_parser.y"
6487 >  case 549:
6488 > /* Line 1787 of yacc.c  */
6489 > #line 2852 "conf_parser.y"
6490      {
6491    ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6492   }
6493      break;
6494  
6495 <  case 534:
6496 <
6497 < /* Line 1806 of yacc.c  */
6802 < #line 2887 "ircd_parser.y"
6495 >  case 550:
6496 > /* Line 1787 of yacc.c  */
6497 > #line 2855 "conf_parser.y"
6498      {
6499    ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6500   }
6501      break;
6502  
6503 <  case 535:
6504 <
6505 < /* Line 1806 of yacc.c  */
6811 < #line 2890 "ircd_parser.y"
6503 >  case 551:
6504 > /* Line 1787 of yacc.c  */
6505 > #line 2858 "conf_parser.y"
6506      {
6507    ConfigFileEntry.oper_umodes |= UMODE_REJ;
6508   }
6509      break;
6510  
6511 <  case 536:
6512 <
6513 < /* Line 1806 of yacc.c  */
6820 < #line 2893 "ircd_parser.y"
6511 >  case 552:
6512 > /* Line 1787 of yacc.c  */
6513 > #line 2861 "conf_parser.y"
6514      {
6515    ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6516   }
6517      break;
6518  
6519 <  case 537:
6520 <
6521 < /* Line 1806 of yacc.c  */
6829 < #line 2896 "ircd_parser.y"
6519 >  case 553:
6520 > /* Line 1787 of yacc.c  */
6521 > #line 2864 "conf_parser.y"
6522      {
6523    ConfigFileEntry.oper_umodes |= UMODE_SPY;
6524   }
6525      break;
6526  
6527 <  case 538:
6528 <
6529 < /* Line 1806 of yacc.c  */
6838 < #line 2899 "ircd_parser.y"
6527 >  case 554:
6528 > /* Line 1787 of yacc.c  */
6529 > #line 2867 "conf_parser.y"
6530      {
6531    ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6532   }
6533      break;
6534  
6535 <  case 539:
6536 <
6537 < /* Line 1806 of yacc.c  */
6847 < #line 2902 "ircd_parser.y"
6535 >  case 555:
6536 > /* Line 1787 of yacc.c  */
6537 > #line 2870 "conf_parser.y"
6538      {
6539    ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6540   }
6541      break;
6542  
6543 <  case 540:
6544 <
6545 < /* Line 1806 of yacc.c  */
6856 < #line 2905 "ircd_parser.y"
6543 >  case 556:
6544 > /* Line 1787 of yacc.c  */
6545 > #line 2873 "conf_parser.y"
6546      {
6547    ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6548   }
6549      break;
6550  
6551 <  case 541:
6552 <
6553 < /* Line 1806 of yacc.c  */
6865 < #line 2908 "ircd_parser.y"
6551 >  case 557:
6552 > /* Line 1787 of yacc.c  */
6553 > #line 2876 "conf_parser.y"
6554      {
6555    ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6556   }
6557      break;
6558  
6559 <  case 542:
6560 <
6561 < /* Line 1806 of yacc.c  */
6874 < #line 2911 "ircd_parser.y"
6559 >  case 558:
6560 > /* Line 1787 of yacc.c  */
6561 > #line 2879 "conf_parser.y"
6562      {
6563    ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6564   }
6565      break;
6566  
6567 <  case 543:
6568 <
6569 < /* Line 1806 of yacc.c  */
6883 < #line 2914 "ircd_parser.y"
6567 >  case 559:
6568 > /* Line 1787 of yacc.c  */
6569 > #line 2882 "conf_parser.y"
6570      {
6571    ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6572   }
6573      break;
6574  
6575 <  case 544:
6576 <
6577 < /* Line 1806 of yacc.c  */
6892 < #line 2917 "ircd_parser.y"
6575 >  case 560:
6576 > /* Line 1787 of yacc.c  */
6577 > #line 2885 "conf_parser.y"
6578      {
6579    ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6580   }
6581      break;
6582  
6583 <  case 545:
6584 <
6585 < /* Line 1806 of yacc.c  */
6901 < #line 2920 "ircd_parser.y"
6583 >  case 561:
6584 > /* Line 1787 of yacc.c  */
6585 > #line 2888 "conf_parser.y"
6586      {
6587    ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
6588   }
6589      break;
6590  
6591 <  case 546:
6592 <
6593 < /* Line 1806 of yacc.c  */
6910 < #line 2925 "ircd_parser.y"
6591 >  case 562:
6592 > /* Line 1787 of yacc.c  */
6593 > #line 2893 "conf_parser.y"
6594      {
6595    ConfigFileEntry.oper_only_umodes = 0;
6596   }
6597      break;
6598  
6599 <  case 550:
6600 <
6601 < /* Line 1806 of yacc.c  */
6919 < #line 2931 "ircd_parser.y"
6599 >  case 566:
6600 > /* Line 1787 of yacc.c  */
6601 > #line 2899 "conf_parser.y"
6602      {
6603    ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
6604   }
6605      break;
6606  
6607 <  case 551:
6608 <
6609 < /* Line 1806 of yacc.c  */
6928 < #line 2934 "ircd_parser.y"
6607 >  case 567:
6608 > /* Line 1787 of yacc.c  */
6609 > #line 2902 "conf_parser.y"
6610      {
6611    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
6612   }
6613      break;
6614  
6615 <  case 552:
6616 <
6617 < /* Line 1806 of yacc.c  */
6937 < #line 2937 "ircd_parser.y"
6615 >  case 568:
6616 > /* Line 1787 of yacc.c  */
6617 > #line 2905 "conf_parser.y"
6618      {
6619    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN_FULL;
6620   }
6621      break;
6622  
6623 <  case 553:
6624 <
6625 < /* Line 1806 of yacc.c  */
6946 < #line 2940 "ircd_parser.y"
6623 >  case 569:
6624 > /* Line 1787 of yacc.c  */
6625 > #line 2908 "conf_parser.y"
6626      {
6627    ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
6628   }
6629      break;
6630  
6631 <  case 554:
6632 <
6633 < /* Line 1806 of yacc.c  */
6955 < #line 2943 "ircd_parser.y"
6631 >  case 570:
6632 > /* Line 1787 of yacc.c  */
6633 > #line 2911 "conf_parser.y"
6634      {
6635    ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
6636   }
6637      break;
6638  
6639 <  case 555:
6640 <
6641 < /* Line 1806 of yacc.c  */
6964 < #line 2946 "ircd_parser.y"
6639 >  case 571:
6640 > /* Line 1787 of yacc.c  */
6641 > #line 2914 "conf_parser.y"
6642      {
6643    ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
6644   }
6645      break;
6646  
6647 <  case 556:
6648 <
6649 < /* Line 1806 of yacc.c  */
6973 < #line 2949 "ircd_parser.y"
6647 >  case 572:
6648 > /* Line 1787 of yacc.c  */
6649 > #line 2917 "conf_parser.y"
6650      {
6651    ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
6652   }
6653      break;
6654  
6655 <  case 557:
6656 <
6657 < /* Line 1806 of yacc.c  */
6982 < #line 2952 "ircd_parser.y"
6655 >  case 573:
6656 > /* Line 1787 of yacc.c  */
6657 > #line 2920 "conf_parser.y"
6658      {
6659    ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN;
6660   }
6661      break;
6662  
6663 <  case 558:
6664 <
6665 < /* Line 1806 of yacc.c  */
6991 < #line 2955 "ircd_parser.y"
6663 >  case 574:
6664 > /* Line 1787 of yacc.c  */
6665 > #line 2923 "conf_parser.y"
6666      {
6667    ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE;
6668   }
6669      break;
6670  
6671 <  case 559:
6672 <
6673 < /* Line 1806 of yacc.c  */
7000 < #line 2958 "ircd_parser.y"
6671 >  case 575:
6672 > /* Line 1787 of yacc.c  */
6673 > #line 2926 "conf_parser.y"
6674      {
6675    ConfigFileEntry.oper_only_umodes |= UMODE_REJ;
6676   }
6677      break;
6678  
6679 <  case 560:
6680 <
6681 < /* Line 1806 of yacc.c  */
7009 < #line 2961 "ircd_parser.y"
6679 >  case 576:
6680 > /* Line 1787 of yacc.c  */
6681 > #line 2929 "conf_parser.y"
6682      {
6683    ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH;
6684   }
6685      break;
6686  
6687 <  case 561:
6688 <
6689 < /* Line 1806 of yacc.c  */
7018 < #line 2964 "ircd_parser.y"
6687 >  case 577:
6688 > /* Line 1787 of yacc.c  */
6689 > #line 2932 "conf_parser.y"
6690      {
6691    ConfigFileEntry.oper_only_umodes |= UMODE_SPY;
6692   }
6693      break;
6694  
6695 <  case 562:
6696 <
6697 < /* Line 1806 of yacc.c  */
7027 < #line 2967 "ircd_parser.y"
6695 >  case 578:
6696 > /* Line 1787 of yacc.c  */
6697 > #line 2935 "conf_parser.y"
6698      {
6699    ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL;
6700   }
6701      break;
6702  
6703 <  case 563:
6704 <
6705 < /* Line 1806 of yacc.c  */
7036 < #line 2970 "ircd_parser.y"
6703 >  case 579:
6704 > /* Line 1787 of yacc.c  */
6705 > #line 2938 "conf_parser.y"
6706      {
6707    ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL;
6708   }
6709      break;
6710  
6711 <  case 564:
6712 <
6713 < /* Line 1806 of yacc.c  */
7045 < #line 2973 "ircd_parser.y"
6711 >  case 580:
6712 > /* Line 1787 of yacc.c  */
6713 > #line 2941 "conf_parser.y"
6714      {
6715    ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE;
6716   }
6717      break;
6718  
6719 <  case 565:
6720 <
6721 < /* Line 1806 of yacc.c  */
7054 < #line 2976 "ircd_parser.y"
6719 >  case 581:
6720 > /* Line 1787 of yacc.c  */
6721 > #line 2944 "conf_parser.y"
6722      {
6723    ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE;
6724   }
6725      break;
6726  
6727 <  case 566:
6728 <
6729 < /* Line 1806 of yacc.c  */
7063 < #line 2979 "ircd_parser.y"
6727 >  case 582:
6728 > /* Line 1787 of yacc.c  */
6729 > #line 2947 "conf_parser.y"
6730      {
6731    ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP;
6732   }
6733      break;
6734  
6735 <  case 567:
6736 <
6737 < /* Line 1806 of yacc.c  */
7072 < #line 2982 "ircd_parser.y"
6735 >  case 583:
6736 > /* Line 1787 of yacc.c  */
6737 > #line 2950 "conf_parser.y"
6738      {
6739    ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID;
6740   }
6741      break;
6742  
6743 <  case 568:
6744 <
6745 < /* Line 1806 of yacc.c  */
7081 < #line 2985 "ircd_parser.y"
6743 >  case 584:
6744 > /* Line 1787 of yacc.c  */
6745 > #line 2953 "conf_parser.y"
6746      {
6747    ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID;
6748   }
6749      break;
6750  
6751 <  case 569:
6752 <
6753 < /* Line 1806 of yacc.c  */
7090 < #line 2988 "ircd_parser.y"
6751 >  case 585:
6752 > /* Line 1787 of yacc.c  */
6753 > #line 2956 "conf_parser.y"
6754      {
6755    ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS;
6756   }
6757      break;
6758  
6759 <  case 570:
6760 <
6761 < /* Line 1806 of yacc.c  */
7099 < #line 2993 "ircd_parser.y"
6759 >  case 586:
6760 > /* Line 1787 of yacc.c  */
6761 > #line 2961 "conf_parser.y"
6762      {
6763    ConfigFileEntry.min_nonwildcard = (yyvsp[(3) - (4)].number);
6764   }
6765      break;
6766  
6767 <  case 571:
6768 <
6769 < /* Line 1806 of yacc.c  */
7108 < #line 2998 "ircd_parser.y"
6767 >  case 587:
6768 > /* Line 1787 of yacc.c  */
6769 > #line 2966 "conf_parser.y"
6770      {
6771    ConfigFileEntry.min_nonwildcard_simple = (yyvsp[(3) - (4)].number);
6772   }
6773      break;
6774  
6775 <  case 572:
6776 <
6777 < /* Line 1806 of yacc.c  */
7117 < #line 3003 "ircd_parser.y"
6775 >  case 588:
6776 > /* Line 1787 of yacc.c  */
6777 > #line 2971 "conf_parser.y"
6778      {
6779    ConfigFileEntry.default_floodcount = (yyvsp[(3) - (4)].number);
6780   }
6781      break;
6782  
6783 <  case 573:
6784 <
6785 < /* Line 1806 of yacc.c  */
7126 < #line 3008 "ircd_parser.y"
6783 >  case 589:
6784 > /* Line 1787 of yacc.c  */
6785 > #line 2976 "conf_parser.y"
6786      {
6787    ConfigFileEntry.client_flood = (yyvsp[(3) - (4)].number);
6788   }
6789      break;
6790  
6791 <  case 574:
6792 <
6793 < /* Line 1806 of yacc.c  */
7135 < #line 3017 "ircd_parser.y"
7136 <    {
7137 <  if (conf_parser_ctx.pass == 2)
7138 <  {
7139 <    yy_conf = make_conf_item(GDENY_TYPE);
7140 <    yy_aconf = map_to_conf(yy_conf);
7141 <  }
7142 < }
7143 <    break;
7144 <
7145 <  case 575:
7146 <
7147 < /* Line 1806 of yacc.c  */
7148 < #line 3024 "ircd_parser.y"
7149 <    {
7150 <  if (conf_parser_ctx.pass == 2)
7151 <  {
7152 <    /*
7153 <     * since we re-allocate yy_conf/yy_aconf after the end of action=, at the
7154 <     * end we will have one extra, so we should free it.
7155 <     */
7156 <    if (yy_conf->name == NULL || yy_aconf->user == NULL)
7157 <    {
7158 <      delete_conf_item(yy_conf);
7159 <      yy_conf = NULL;
7160 <      yy_aconf = NULL;
7161 <    }
7162 <  }
7163 < }
7164 <    break;
7165 <
7166 <  case 585:
7167 <
7168 < /* Line 1806 of yacc.c  */
7169 < #line 3050 "ircd_parser.y"
7170 <    {
7171 <  if (conf_parser_ctx.pass == 2)
7172 <    ConfigFileEntry.glines = yylval.number;
7173 < }
7174 <    break;
7175 <
7176 <  case 586:
7177 <
7178 < /* Line 1806 of yacc.c  */
7179 < #line 3056 "ircd_parser.y"
7180 <    {
7181 <  if (conf_parser_ctx.pass == 2)
7182 <    ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
7183 < }
7184 <    break;
7185 <
7186 <  case 587:
7187 <
7188 < /* Line 1806 of yacc.c  */
7189 < #line 3062 "ircd_parser.y"
7190 <    {
7191 <  if (conf_parser_ctx.pass == 2)
7192 <    ConfigFileEntry.gline_logging = 0;
7193 < }
7194 <    break;
7195 <
7196 <  case 591:
7197 <
7198 < /* Line 1806 of yacc.c  */
7199 < #line 3068 "ircd_parser.y"
7200 <    {
7201 <  if (conf_parser_ctx.pass == 2)
7202 <    ConfigFileEntry.gline_logging |= GDENY_REJECT;
7203 < }
7204 <    break;
7205 <
7206 <  case 592:
7207 <
7208 < /* Line 1806 of yacc.c  */
7209 < #line 3072 "ircd_parser.y"
7210 <    {
7211 <  if (conf_parser_ctx.pass == 2)
7212 <    ConfigFileEntry.gline_logging |= GDENY_BLOCK;
7213 < }
7214 <    break;
7215 <
7216 <  case 593:
7217 <
7218 < /* Line 1806 of yacc.c  */
7219 < #line 3078 "ircd_parser.y"
7220 <    {
7221 <  if (conf_parser_ctx.pass == 2)
7222 <  {
7223 <    struct split_nuh_item nuh;
7224 <
7225 <    nuh.nuhmask  = yylval.string;
7226 <    nuh.nickptr  = NULL;
7227 <    nuh.userptr  = userbuf;
7228 <    nuh.hostptr  = hostbuf;
7229 <
7230 <    nuh.nicksize = 0;
7231 <    nuh.usersize = sizeof(userbuf);
7232 <    nuh.hostsize = sizeof(hostbuf);
7233 <
7234 <    split_nuh(&nuh);
7235 <
7236 <    if (yy_aconf->user == NULL)
7237 <    {
7238 <      DupString(yy_aconf->user, userbuf);
7239 <      DupString(yy_aconf->host, hostbuf);
7240 <    }
7241 <    else
7242 <    {
7243 <      struct CollectItem *yy_tmp = MyMalloc(sizeof(struct CollectItem));
7244 <
7245 <      DupString(yy_tmp->user, userbuf);
7246 <      DupString(yy_tmp->host, hostbuf);
7247 <
7248 <      dlinkAdd(yy_tmp, &yy_tmp->node, &col_conf_list);
7249 <    }
7250 <  }
7251 < }
7252 <    break;
7253 <
7254 <  case 594:
7255 <
7256 < /* Line 1806 of yacc.c  */
7257 < #line 3112 "ircd_parser.y"
7258 <    {
7259 <  if (conf_parser_ctx.pass == 2)  
7260 <  {
7261 <    MyFree(yy_conf->name);
7262 <    DupString(yy_conf->name, yylval.string);
7263 <  }
7264 < }
7265 <    break;
7266 <
7267 <  case 595:
7268 <
7269 < /* Line 1806 of yacc.c  */
7270 < #line 3121 "ircd_parser.y"
7271 <    {
7272 <  if (conf_parser_ctx.pass == 2)
7273 <    yy_aconf->flags = 0;
7274 < }
7275 <    break;
7276 <
7277 <  case 596:
7278 <
7279 < /* Line 1806 of yacc.c  */
7280 < #line 3125 "ircd_parser.y"
7281 <    {
7282 <  if (conf_parser_ctx.pass == 2)
7283 <  {
7284 <    struct CollectItem *yy_tmp = NULL;
7285 <    dlink_node *ptr, *next_ptr;
7286 <
7287 <    DLINK_FOREACH_SAFE(ptr, next_ptr, col_conf_list.head)
7288 <    {
7289 <      struct AccessItem *new_aconf;
7290 <      struct ConfItem *new_conf;
7291 <
7292 <      yy_tmp = ptr->data;
7293 <      new_conf = make_conf_item(GDENY_TYPE);
7294 <      new_aconf = map_to_conf(new_conf);
7295 <
7296 <      new_aconf->flags = yy_aconf->flags;
7297 <
7298 <      if (yy_conf->name != NULL)
7299 <        DupString(new_conf->name, yy_conf->name);
7300 <      else
7301 <        DupString(new_conf->name, "*");
7302 <      if (yy_aconf->user != NULL)
7303 <         DupString(new_aconf->user, yy_tmp->user);
7304 <      else  
7305 <        DupString(new_aconf->user, "*");
7306 <      if (yy_aconf->host != NULL)
7307 <        DupString(new_aconf->host, yy_tmp->host);
7308 <      else
7309 <        DupString(new_aconf->host, "*");
7310 <
7311 <      dlinkDelete(&yy_tmp->node, &col_conf_list);
7312 <    }
7313 <
7314 <    /*
7315 <     * In case someone has fed us with more than one action= after user/name
7316 <     * which would leak memory  -Michael
7317 <     */
7318 <    if (yy_conf->name == NULL || yy_aconf->user == NULL)
7319 <      delete_conf_item(yy_conf);
7320 <
7321 <    yy_conf = make_conf_item(GDENY_TYPE);
7322 <    yy_aconf = map_to_conf(yy_conf);
7323 <  }
7324 < }
7325 <    break;
7326 <
7327 <  case 599:
7328 <
7329 < /* Line 1806 of yacc.c  */
7330 < #line 3172 "ircd_parser.y"
7331 <    {
7332 <  if (conf_parser_ctx.pass == 2)
7333 <    yy_aconf->flags |= GDENY_REJECT;
7334 < }
7335 <    break;
7336 <
7337 <  case 600:
7338 <
7339 < /* Line 1806 of yacc.c  */
7340 < #line 3176 "ircd_parser.y"
7341 <    {
7342 <  if (conf_parser_ctx.pass == 2)
7343 <    yy_aconf->flags |= GDENY_BLOCK;
7344 < }
7345 <    break;
7346 <
7347 <  case 623:
7348 <
7349 < /* Line 1806 of yacc.c  */
7350 < #line 3200 "ircd_parser.y"
6791 >  case 608:
6792 > /* Line 1787 of yacc.c  */
6793 > #line 2999 "conf_parser.y"
6794      {
6795    ConfigChannel.disable_fake_channels = yylval.number;
6796   }
6797      break;
6798  
6799 <  case 624:
6800 <
6801 < /* Line 1806 of yacc.c  */
7359 < #line 3205 "ircd_parser.y"
6799 >  case 609:
6800 > /* Line 1787 of yacc.c  */
6801 > #line 3004 "conf_parser.y"
6802      {
6803    ConfigChannel.restrict_channels = yylval.number;
6804   }
6805      break;
6806  
6807 <  case 625:
6808 <
6809 < /* Line 1806 of yacc.c  */
7368 < #line 3210 "ircd_parser.y"
7369 <    {
7370 <  ConfigChannel.disable_local_channels = yylval.number;
7371 < }
7372 <    break;
7373 <
7374 <  case 626:
7375 <
7376 < /* Line 1806 of yacc.c  */
7377 < #line 3215 "ircd_parser.y"
7378 <    {
7379 <  ConfigChannel.use_except = yylval.number;
7380 < }
7381 <    break;
7382 <
7383 <  case 627:
7384 <
7385 < /* Line 1806 of yacc.c  */
7386 < #line 3220 "ircd_parser.y"
7387 <    {
7388 <  ConfigChannel.use_invex = yylval.number;
7389 < }
7390 <    break;
7391 <
7392 <  case 628:
7393 <
7394 < /* Line 1806 of yacc.c  */
7395 < #line 3225 "ircd_parser.y"
7396 <    {
7397 <  ConfigChannel.use_knock = yylval.number;
7398 < }
7399 <    break;
7400 <
7401 <  case 629:
7402 <
7403 < /* Line 1806 of yacc.c  */
7404 < #line 3230 "ircd_parser.y"
6807 >  case 610:
6808 > /* Line 1787 of yacc.c  */
6809 > #line 3009 "conf_parser.y"
6810      {
6811    ConfigChannel.knock_delay = (yyvsp[(3) - (4)].number);
6812   }
6813      break;
6814  
6815 <  case 630:
6816 <
6817 < /* Line 1806 of yacc.c  */
7413 < #line 3235 "ircd_parser.y"
6815 >  case 611:
6816 > /* Line 1787 of yacc.c  */
6817 > #line 3014 "conf_parser.y"
6818      {
6819    ConfigChannel.knock_delay_channel = (yyvsp[(3) - (4)].number);
6820   }
6821      break;
6822  
6823 <  case 631:
6824 <
6825 < /* Line 1806 of yacc.c  */
7422 < #line 3240 "ircd_parser.y"
6823 >  case 612:
6824 > /* Line 1787 of yacc.c  */
6825 > #line 3019 "conf_parser.y"
6826      {
6827    ConfigChannel.max_chans_per_user = (yyvsp[(3) - (4)].number);
6828   }
6829      break;
6830  
6831 <  case 632:
6831 >  case 613:
6832 > /* Line 1787 of yacc.c  */
6833 > #line 3024 "conf_parser.y"
6834 >    {
6835 >  ConfigChannel.max_chans_per_oper = (yyvsp[(3) - (4)].number);
6836 > }
6837 >    break;
6838  
6839 < /* Line 1806 of yacc.c  */
6840 < #line 3245 "ircd_parser.y"
6839 >  case 614:
6840 > /* Line 1787 of yacc.c  */
6841 > #line 3029 "conf_parser.y"
6842      {
6843    ConfigChannel.quiet_on_ban = yylval.number;
6844   }
6845      break;
6846  
6847 <  case 633:
6848 <
6849 < /* Line 1806 of yacc.c  */
7440 < #line 3250 "ircd_parser.y"
6847 >  case 615:
6848 > /* Line 1787 of yacc.c  */
6849 > #line 3034 "conf_parser.y"
6850      {
6851    ConfigChannel.max_bans = (yyvsp[(3) - (4)].number);
6852   }
6853      break;
6854  
6855 <  case 634:
6856 <
6857 < /* Line 1806 of yacc.c  */
7449 < #line 3255 "ircd_parser.y"
6855 >  case 616:
6856 > /* Line 1787 of yacc.c  */
6857 > #line 3039 "conf_parser.y"
6858      {
6859    ConfigChannel.default_split_user_count = (yyvsp[(3) - (4)].number);
6860   }
6861      break;
6862  
6863 <  case 635:
6864 <
6865 < /* Line 1806 of yacc.c  */
7458 < #line 3260 "ircd_parser.y"
6863 >  case 617:
6864 > /* Line 1787 of yacc.c  */
6865 > #line 3044 "conf_parser.y"
6866      {
6867    ConfigChannel.default_split_server_count = (yyvsp[(3) - (4)].number);
6868   }
6869      break;
6870  
6871 <  case 636:
6872 <
6873 < /* Line 1806 of yacc.c  */
7467 < #line 3265 "ircd_parser.y"
6871 >  case 618:
6872 > /* Line 1787 of yacc.c  */
6873 > #line 3049 "conf_parser.y"
6874      {
6875    ConfigChannel.no_create_on_split = yylval.number;
6876   }
6877      break;
6878  
6879 <  case 637:
6880 <
6881 < /* Line 1806 of yacc.c  */
7476 < #line 3270 "ircd_parser.y"
6879 >  case 619:
6880 > /* Line 1787 of yacc.c  */
6881 > #line 3054 "conf_parser.y"
6882      {
6883    ConfigChannel.no_join_on_split = yylval.number;
6884   }
6885      break;
6886  
6887 <  case 638:
6888 <
6889 < /* Line 1806 of yacc.c  */
7485 < #line 3275 "ircd_parser.y"
7486 <    {
7487 <  ConfigChannel.burst_topicwho = yylval.number;
7488 < }
7489 <    break;
7490 <
7491 <  case 639:
7492 <
7493 < /* Line 1806 of yacc.c  */
7494 < #line 3280 "ircd_parser.y"
6887 >  case 620:
6888 > /* Line 1787 of yacc.c  */
6889 > #line 3059 "conf_parser.y"
6890      {
6891    GlobalSetOptions.joinfloodcount = yylval.number;
6892   }
6893      break;
6894  
6895 <  case 640:
6896 <
6897 < /* Line 1806 of yacc.c  */
7503 < #line 3285 "ircd_parser.y"
6895 >  case 621:
6896 > /* Line 1787 of yacc.c  */
6897 > #line 3064 "conf_parser.y"
6898      {
6899    GlobalSetOptions.joinfloodtime = yylval.number;
6900   }
6901      break;
6902  
6903 <  case 652:
6904 <
6905 < /* Line 1806 of yacc.c  */
7512 < #line 3304 "ircd_parser.y"
6903 >  case 632:
6904 > /* Line 1787 of yacc.c  */
6905 > #line 3082 "conf_parser.y"
6906      {
6907    if (conf_parser_ctx.pass == 2)
6908      ConfigServerHide.flatten_links = yylval.number;
6909   }
6910      break;
6911  
6912 <  case 653:
6913 <
6914 < /* Line 1806 of yacc.c  */
7522 < #line 3310 "ircd_parser.y"
6912 >  case 633:
6913 > /* Line 1787 of yacc.c  */
6914 > #line 3088 "conf_parser.y"
6915      {
6916    if (conf_parser_ctx.pass == 2)
6917      ConfigServerHide.hide_servers = yylval.number;
6918   }
6919      break;
6920  
6921 <  case 654:
6922 <
6923 < /* Line 1806 of yacc.c  */
7532 < #line 3316 "ircd_parser.y"
6921 >  case 634:
6922 > /* Line 1787 of yacc.c  */
6923 > #line 3094 "conf_parser.y"
6924      {
6925    if (conf_parser_ctx.pass == 2)
6926    {
# Line 7539 | Line 6930 | yyreduce:
6930   }
6931      break;
6932  
6933 <  case 655:
6934 <
6935 < /* Line 1806 of yacc.c  */
7545 < #line 3325 "ircd_parser.y"
6933 >  case 635:
6934 > /* Line 1787 of yacc.c  */
6935 > #line 3103 "conf_parser.y"
6936      {
6937    if (conf_parser_ctx.pass == 2)
6938    {
# Line 7557 | Line 6947 | yyreduce:
6947   }
6948      break;
6949  
6950 <  case 656:
6951 <
6952 < /* Line 1806 of yacc.c  */
7563 < #line 3339 "ircd_parser.y"
6950 >  case 636:
6951 > /* Line 1787 of yacc.c  */
6952 > #line 3117 "conf_parser.y"
6953      {
6954    if (conf_parser_ctx.pass == 2)
6955      ConfigServerHide.hidden = yylval.number;
6956   }
6957      break;
6958  
6959 <  case 657:
6960 <
6961 < /* Line 1806 of yacc.c  */
7573 < #line 3345 "ircd_parser.y"
7574 <    {
7575 <  if (conf_parser_ctx.pass == 2)
7576 <    ConfigServerHide.disable_hidden = yylval.number;
7577 < }
7578 <    break;
7579 <
7580 <  case 658:
7581 <
7582 < /* Line 1806 of yacc.c  */
7583 < #line 3351 "ircd_parser.y"
6959 >  case 637:
6960 > /* Line 1787 of yacc.c  */
6961 > #line 3123 "conf_parser.y"
6962      {
6963    if (conf_parser_ctx.pass == 2)
6964      ConfigServerHide.hide_server_ips = yylval.number;
# Line 7588 | Line 6966 | yyreduce:
6966      break;
6967  
6968  
6969 <
6970 < /* Line 1806 of yacc.c  */
7593 < #line 7594 "ircd_parser.c"
6969 > /* Line 1787 of yacc.c  */
6970 > #line 6971 "conf_parser.c"
6971        default: break;
6972      }
6973    /* User semantic actions sometimes alter yychar, and that requires
# Line 7777 | Line 7154 | yyabortlab:
7154    yyresult = 1;
7155    goto yyreturn;
7156  
7157 < #if !defined(yyoverflow) || YYERROR_VERBOSE
7157 > #if !defined yyoverflow || YYERROR_VERBOSE
7158   /*-------------------------------------------------.
7159   | yyexhaustedlab -- memory exhaustion comes here.  |
7160   `-------------------------------------------------*/
# Line 7819 | Line 7196 | yyreturn:
7196   }
7197  
7198  
7822

Diff Legend

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