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

Comparing:
ircd-hybrid-8/src/conf_parser.c (file contents), Revision 1401 by michael, Tue May 8 18:58:13 2012 UTC vs.
ircd-hybrid/trunk/src/conf_parser.c (file contents), Revision 1644 by michael, Tue Nov 6 22:20:16 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.33-cc5a9.  */
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.33-cc5a9"
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 <
68 < /* Line 268 of yacc.c  */
65 > /* Line 358 of yacc.c  */
66   #line 25 "conf_parser.y"
67  
68  
# Line 78 | Line 75
75   #include "ircd.h"
76   #include "list.h"
77   #include "conf.h"
78 + #include "conf_class.h"
79   #include "event.h"
80   #include "log.h"
81   #include "client.h"     /* for UMODE_ALL only */
# Line 103 | Line 101
101   int yylex(void);
102  
103   static char *class_name = NULL;
104 < static struct ConfItem *yy_conf = NULL;
107 < static struct AccessItem *yy_aconf = NULL;
108 < static struct MatchItem *yy_match_item = NULL;
104 > static struct MaskItem *yy_conf = NULL;
105   static struct ClassItem *yy_class = NULL;
106   static char *yy_class_name = NULL;
107  
# Line 151 | Line 147 | free_collect_item(struct CollectItem *it
147   }
148  
149  
150 + /* Line 358 of yacc.c  */
151 + #line 152 "conf_parser.c"
152  
153 < /* Line 268 of yacc.c  */
154 < #line 157 "conf_parser.c"
155 <
156 < /* Enabling traces.  */
157 < #ifndef YYDEBUG
158 < # define YYDEBUG 0
159 < #endif
153 > # ifndef YY_NULL
154 > #  if defined __cplusplus && 201103L <= __cplusplus
155 > #   define YY_NULL nullptr
156 > #  else
157 > #   define YY_NULL 0
158 > #  endif
159 > # endif
160  
161   /* Enabling verbose error messages.  */
162   #ifdef YYERROR_VERBOSE
# Line 168 | Line 166 | free_collect_item(struct CollectItem *it
166   # define YYERROR_VERBOSE 0
167   #endif
168  
169 < /* Enabling the token table.  */
170 < #ifndef YYTOKEN_TABLE
171 < # define YYTOKEN_TABLE 0
169 > /* In a future release of Bison, this section will be replaced
170 >   by #include "y.tab.h".  */
171 > #ifndef YY_YY_Y_TAB_H_INCLUDED
172 > # define YY_YY_Y_TAB_H_INCLUDED
173 > /* Enabling traces.  */
174 > #ifndef YYDEBUG
175 > # define YYDEBUG 0
176 > #endif
177 > #if YYDEBUG
178 > extern int yydebug;
179   #endif
175
180  
181   /* Tokens.  */
182   #ifndef YYTOKENTYPE
# Line 181 | Line 185 | free_collect_item(struct CollectItem *it
185        know about them.  */
186     enum yytokentype {
187       ACCEPT_PASSWORD = 258,
188 <     ACTION = 259,
189 <     ADMIN = 260,
190 <     AFTYPE = 261,
191 <     T_ALLOW = 262,
192 <     ANTI_NICK_FLOOD = 263,
193 <     ANTI_SPAM_EXIT_MESSAGE_TIME = 264,
194 <     AUTOCONN = 265,
195 <     T_BLOCK = 266,
196 <     BURST_AWAY = 267,
197 <     BYTES = 268,
198 <     KBYTES = 269,
199 <     MBYTES = 270,
200 <     GBYTES = 271,
201 <     TBYTES = 272,
202 <     CALLER_ID_WAIT = 273,
203 <     CAN_FLOOD = 274,
204 <     CHANNEL = 275,
205 <     CIDR_BITLEN_IPV4 = 276,
206 <     CIDR_BITLEN_IPV6 = 277,
207 <     CLASS = 278,
208 <     CONNECT = 279,
209 <     CONNECTFREQ = 280,
210 <     DEFAULT_FLOODCOUNT = 281,
211 <     DEFAULT_SPLIT_SERVER_COUNT = 282,
212 <     DEFAULT_SPLIT_USER_COUNT = 283,
213 <     DENY = 284,
214 <     DESCRIPTION = 285,
215 <     DIE = 286,
216 <     DISABLE_AUTH = 287,
217 <     DISABLE_FAKE_CHANNELS = 288,
218 <     DISABLE_HIDDEN = 289,
219 <     DISABLE_LOCAL_CHANNELS = 290,
220 <     DISABLE_REMOTE_COMMANDS = 291,
221 <     DOTS_IN_IDENT = 292,
222 <     DURATION = 293,
223 <     EGDPOOL_PATH = 294,
224 <     EMAIL = 295,
225 <     ENABLE = 296,
226 <     ENCRYPTED = 297,
227 <     EXCEED_LIMIT = 298,
228 <     EXEMPT = 299,
229 <     FAILED_OPER_NOTICE = 300,
230 <     IRCD_FLAGS = 301,
231 <     FLATTEN_LINKS = 302,
232 <     GECOS = 303,
233 <     GENERAL = 304,
234 <     GLINE = 305,
235 <     GLINES = 306,
236 <     GLINE_EXEMPT = 307,
237 <     GLINE_TIME = 308,
238 <     GLINE_MIN_CIDR = 309,
239 <     GLINE_MIN_CIDR6 = 310,
240 <     GLOBAL_KILL = 311,
241 <     IRCD_AUTH = 312,
242 <     NEED_IDENT = 313,
243 <     HAVENT_READ_CONF = 314,
244 <     HIDDEN = 315,
245 <     HIDDEN_NAME = 316,
246 <     HIDE_SERVER_IPS = 317,
247 <     HIDE_SERVERS = 318,
248 <     HIDE_SPOOF_IPS = 319,
249 <     HOST = 320,
250 <     HUB = 321,
251 <     HUB_MASK = 322,
252 <     IGNORE_BOGUS_TS = 323,
253 <     INVISIBLE_ON_CONNECT = 324,
254 <     IP = 325,
255 <     KILL = 326,
256 <     KILL_CHASE_TIME_LIMIT = 327,
257 <     KLINE = 328,
258 <     KLINE_EXEMPT = 329,
259 <     KLINE_REASON = 330,
260 <     KLINE_WITH_REASON = 331,
261 <     KNOCK_DELAY = 332,
262 <     KNOCK_DELAY_CHANNEL = 333,
263 <     LEAF_MASK = 334,
264 <     LINKS_DELAY = 335,
265 <     LISTEN = 336,
266 <     T_LOG = 337,
267 <     MAX_ACCEPT = 338,
268 <     MAX_BANS = 339,
269 <     MAX_CHANS_PER_USER = 340,
270 <     MAX_GLOBAL = 341,
271 <     MAX_IDENT = 342,
272 <     MAX_LOCAL = 343,
273 <     MAX_NICK_CHANGES = 344,
274 <     MAX_NICK_TIME = 345,
275 <     MAX_NUMBER = 346,
276 <     MAX_TARGETS = 347,
277 <     MAX_WATCH = 348,
278 <     MESSAGE_LOCALE = 349,
279 <     MIN_NONWILDCARD = 350,
280 <     MIN_NONWILDCARD_SIMPLE = 351,
281 <     MODULE = 352,
282 <     MODULES = 353,
283 <     NAME = 354,
284 <     NEED_PASSWORD = 355,
285 <     NETWORK_DESC = 356,
286 <     NETWORK_NAME = 357,
287 <     NICK = 358,
288 <     NICK_CHANGES = 359,
289 <     NO_CREATE_ON_SPLIT = 360,
290 <     NO_JOIN_ON_SPLIT = 361,
291 <     NO_OPER_FLOOD = 362,
292 <     NO_TILDE = 363,
293 <     NUMBER = 364,
294 <     NUMBER_PER_IDENT = 365,
295 <     NUMBER_PER_CIDR = 366,
296 <     NUMBER_PER_IP = 367,
297 <     NUMBER_PER_IP_GLOBAL = 368,
298 <     OPERATOR = 369,
299 <     OPERS_BYPASS_CALLERID = 370,
300 <     OPER_ONLY_UMODES = 371,
301 <     OPER_PASS_RESV = 372,
302 <     OPER_SPY_T = 373,
303 <     OPER_UMODES = 374,
304 <     JOIN_FLOOD_COUNT = 375,
305 <     JOIN_FLOOD_TIME = 376,
306 <     PACE_WAIT = 377,
307 <     PACE_WAIT_SIMPLE = 378,
308 <     PASSWORD = 379,
309 <     PATH = 380,
310 <     PING_COOKIE = 381,
311 <     PING_TIME = 382,
312 <     PING_WARNING = 383,
313 <     PORT = 384,
314 <     QSTRING = 385,
315 <     QUIET_ON_BAN = 386,
316 <     REASON = 387,
317 <     REDIRPORT = 388,
318 <     REDIRSERV = 389,
319 <     REGEX_T = 390,
320 <     REHASH = 391,
321 <     TREJECT_HOLD_TIME = 392,
322 <     REMOTE = 393,
323 <     REMOTEBAN = 394,
324 <     RESTRICT_CHANNELS = 395,
325 <     RESTRICTED = 396,
326 <     RSA_PRIVATE_KEY_FILE = 397,
327 <     RSA_PUBLIC_KEY_FILE = 398,
328 <     SSL_CERTIFICATE_FILE = 399,
329 <     SSL_DH_PARAM_FILE = 400,
330 <     T_SSL_CLIENT_METHOD = 401,
331 <     T_SSL_SERVER_METHOD = 402,
332 <     T_SSLV3 = 403,
333 <     T_TLSV1 = 404,
334 <     RESV = 405,
335 <     RESV_EXEMPT = 406,
336 <     SECONDS = 407,
337 <     MINUTES = 408,
338 <     HOURS = 409,
339 <     DAYS = 410,
340 <     WEEKS = 411,
341 <     SENDQ = 412,
342 <     SEND_PASSWORD = 413,
343 <     SERVERHIDE = 414,
344 <     SERVERINFO = 415,
345 <     IRCD_SID = 416,
346 <     TKLINE_EXPIRE_NOTICES = 417,
347 <     T_SHARED = 418,
348 <     T_CLUSTER = 419,
349 <     TYPE = 420,
350 <     SHORT_MOTD = 421,
351 <     SILENT = 422,
352 <     SPOOF = 423,
353 <     SPOOF_NOTICE = 424,
354 <     STATS_E_DISABLED = 425,
355 <     STATS_I_OPER_ONLY = 426,
356 <     STATS_K_OPER_ONLY = 427,
357 <     STATS_O_OPER_ONLY = 428,
358 <     STATS_P_OPER_ONLY = 429,
359 <     TBOOL = 430,
360 <     TMASKED = 431,
361 <     T_REJECT = 432,
362 <     TS_MAX_DELTA = 433,
363 <     TS_WARN_DELTA = 434,
364 <     TWODOTS = 435,
365 <     T_ALL = 436,
366 <     T_BOTS = 437,
367 <     T_SOFTCALLERID = 438,
368 <     T_CALLERID = 439,
369 <     T_CCONN = 440,
370 <     T_CCONN_FULL = 441,
371 <     T_SSL_CIPHER_LIST = 442,
372 <     T_CLIENT_FLOOD = 443,
373 <     T_DEAF = 444,
374 <     T_DEBUG = 445,
375 <     T_DLINE = 446,
376 <     T_DRONE = 447,
377 <     T_EXTERNAL = 448,
378 <     T_FULL = 449,
379 <     T_INVISIBLE = 450,
380 <     T_IPV4 = 451,
381 <     T_IPV6 = 452,
382 <     T_LOCOPS = 453,
383 <     T_MAX_CLIENTS = 454,
384 <     T_NCHANGE = 455,
385 <     T_OPERWALL = 456,
386 <     T_REJ = 457,
387 <     T_SERVER = 458,
388 <     T_SERVNOTICE = 459,
389 <     T_SKILL = 460,
390 <     T_SPY = 461,
391 <     T_SSL = 462,
392 <     T_UMODES = 463,
393 <     T_UNAUTH = 464,
394 <     T_UNDLINE = 465,
395 <     T_UNLIMITED = 466,
396 <     T_UNRESV = 467,
397 <     T_UNXLINE = 468,
394 <     T_GLOBOPS = 469,
395 <     T_WALLOP = 470,
396 <     T_RESTART = 471,
397 <     T_SERVICE = 472,
398 <     T_SERVICES_NAME = 473,
399 <     THROTTLE_TIME = 474,
400 <     TOPICBURST = 475,
401 <     TRUE_NO_OPER_FLOOD = 476,
402 <     TKLINE = 477,
403 <     TXLINE = 478,
404 <     TRESV = 479,
405 <     UNKLINE = 480,
406 <     USER = 481,
407 <     USE_EGD = 482,
408 <     USE_EXCEPT = 483,
409 <     USE_INVEX = 484,
410 <     USE_KNOCK = 485,
411 <     USE_LOGGING = 486,
412 <     USE_WHOIS_ACTUALLY = 487,
413 <     VHOST = 488,
414 <     VHOST6 = 489,
415 <     XLINE = 490,
416 <     WARN = 491,
417 <     WARN_NO_NLINE = 492,
418 <     T_SIZE = 493,
419 <     T_FILE = 494
188 >     ADMIN = 259,
189 >     AFTYPE = 260,
190 >     ANTI_NICK_FLOOD = 261,
191 >     ANTI_SPAM_EXIT_MESSAGE_TIME = 262,
192 >     AUTOCONN = 263,
193 >     BYTES = 264,
194 >     KBYTES = 265,
195 >     MBYTES = 266,
196 >     CALLER_ID_WAIT = 267,
197 >     CAN_FLOOD = 268,
198 >     CHANNEL = 269,
199 >     CIDR_BITLEN_IPV4 = 270,
200 >     CIDR_BITLEN_IPV6 = 271,
201 >     CLASS = 272,
202 >     CONNECT = 273,
203 >     CONNECTFREQ = 274,
204 >     DEFAULT_FLOODCOUNT = 275,
205 >     DEFAULT_SPLIT_SERVER_COUNT = 276,
206 >     DEFAULT_SPLIT_USER_COUNT = 277,
207 >     DENY = 278,
208 >     DESCRIPTION = 279,
209 >     DIE = 280,
210 >     DISABLE_AUTH = 281,
211 >     DISABLE_FAKE_CHANNELS = 282,
212 >     DISABLE_REMOTE_COMMANDS = 283,
213 >     DOTS_IN_IDENT = 284,
214 >     EGDPOOL_PATH = 285,
215 >     EMAIL = 286,
216 >     ENCRYPTED = 287,
217 >     EXCEED_LIMIT = 288,
218 >     EXEMPT = 289,
219 >     FAILED_OPER_NOTICE = 290,
220 >     IRCD_FLAGS = 291,
221 >     FLATTEN_LINKS = 292,
222 >     GECOS = 293,
223 >     GENERAL = 294,
224 >     GLINE = 295,
225 >     GLINE_DURATION = 296,
226 >     GLINE_ENABLE = 297,
227 >     GLINE_EXEMPT = 298,
228 >     GLINE_REQUEST_DURATION = 299,
229 >     GLINE_MIN_CIDR = 300,
230 >     GLINE_MIN_CIDR6 = 301,
231 >     GLOBAL_KILL = 302,
232 >     IRCD_AUTH = 303,
233 >     NEED_IDENT = 304,
234 >     HAVENT_READ_CONF = 305,
235 >     HIDDEN = 306,
236 >     HIDDEN_NAME = 307,
237 >     HIDE_SERVER_IPS = 308,
238 >     HIDE_SERVERS = 309,
239 >     HIDE_SPOOF_IPS = 310,
240 >     HOST = 311,
241 >     HUB = 312,
242 >     HUB_MASK = 313,
243 >     IGNORE_BOGUS_TS = 314,
244 >     INVISIBLE_ON_CONNECT = 315,
245 >     IP = 316,
246 >     KILL = 317,
247 >     KILL_CHASE_TIME_LIMIT = 318,
248 >     KLINE = 319,
249 >     KLINE_EXEMPT = 320,
250 >     KNOCK_DELAY = 321,
251 >     KNOCK_DELAY_CHANNEL = 322,
252 >     LEAF_MASK = 323,
253 >     LINKS_DELAY = 324,
254 >     LISTEN = 325,
255 >     T_LOG = 326,
256 >     MAX_ACCEPT = 327,
257 >     MAX_BANS = 328,
258 >     MAX_CHANS_PER_OPER = 329,
259 >     MAX_CHANS_PER_USER = 330,
260 >     MAX_GLOBAL = 331,
261 >     MAX_IDENT = 332,
262 >     MAX_LOCAL = 333,
263 >     MAX_NICK_CHANGES = 334,
264 >     MAX_NICK_TIME = 335,
265 >     MAX_NUMBER = 336,
266 >     MAX_TARGETS = 337,
267 >     MAX_WATCH = 338,
268 >     MESSAGE_LOCALE = 339,
269 >     MIN_NONWILDCARD = 340,
270 >     MIN_NONWILDCARD_SIMPLE = 341,
271 >     MODULE = 342,
272 >     MODULES = 343,
273 >     NAME = 344,
274 >     NEED_PASSWORD = 345,
275 >     NETWORK_DESC = 346,
276 >     NETWORK_NAME = 347,
277 >     NICK = 348,
278 >     NICK_CHANGES = 349,
279 >     NO_CREATE_ON_SPLIT = 350,
280 >     NO_JOIN_ON_SPLIT = 351,
281 >     NO_OPER_FLOOD = 352,
282 >     NO_TILDE = 353,
283 >     NUMBER = 354,
284 >     NUMBER_PER_CIDR = 355,
285 >     NUMBER_PER_IP = 356,
286 >     OPERATOR = 357,
287 >     OPERS_BYPASS_CALLERID = 358,
288 >     OPER_ONLY_UMODES = 359,
289 >     OPER_PASS_RESV = 360,
290 >     OPER_SPY_T = 361,
291 >     OPER_UMODES = 362,
292 >     JOIN_FLOOD_COUNT = 363,
293 >     JOIN_FLOOD_TIME = 364,
294 >     PACE_WAIT = 365,
295 >     PACE_WAIT_SIMPLE = 366,
296 >     PASSWORD = 367,
297 >     PATH = 368,
298 >     PING_COOKIE = 369,
299 >     PING_TIME = 370,
300 >     PORT = 371,
301 >     QSTRING = 372,
302 >     QUIET_ON_BAN = 373,
303 >     REASON = 374,
304 >     REDIRPORT = 375,
305 >     REDIRSERV = 376,
306 >     REGEX_T = 377,
307 >     REHASH = 378,
308 >     REMOTE = 379,
309 >     REMOTEBAN = 380,
310 >     RESTRICT_CHANNELS = 381,
311 >     RSA_PRIVATE_KEY_FILE = 382,
312 >     RSA_PUBLIC_KEY_FILE = 383,
313 >     SSL_CERTIFICATE_FILE = 384,
314 >     SSL_DH_PARAM_FILE = 385,
315 >     T_SSL_CLIENT_METHOD = 386,
316 >     T_SSL_SERVER_METHOD = 387,
317 >     T_SSLV3 = 388,
318 >     T_TLSV1 = 389,
319 >     RESV = 390,
320 >     RESV_EXEMPT = 391,
321 >     SECONDS = 392,
322 >     MINUTES = 393,
323 >     HOURS = 394,
324 >     DAYS = 395,
325 >     WEEKS = 396,
326 >     SENDQ = 397,
327 >     SEND_PASSWORD = 398,
328 >     SERVERHIDE = 399,
329 >     SERVERINFO = 400,
330 >     IRCD_SID = 401,
331 >     TKLINE_EXPIRE_NOTICES = 402,
332 >     T_SHARED = 403,
333 >     T_CLUSTER = 404,
334 >     TYPE = 405,
335 >     SHORT_MOTD = 406,
336 >     SPOOF = 407,
337 >     SPOOF_NOTICE = 408,
338 >     STATS_E_DISABLED = 409,
339 >     STATS_I_OPER_ONLY = 410,
340 >     STATS_K_OPER_ONLY = 411,
341 >     STATS_O_OPER_ONLY = 412,
342 >     STATS_P_OPER_ONLY = 413,
343 >     TBOOL = 414,
344 >     TMASKED = 415,
345 >     TS_MAX_DELTA = 416,
346 >     TS_WARN_DELTA = 417,
347 >     TWODOTS = 418,
348 >     T_ALL = 419,
349 >     T_BOTS = 420,
350 >     T_SOFTCALLERID = 421,
351 >     T_CALLERID = 422,
352 >     T_CCONN = 423,
353 >     T_CCONN_FULL = 424,
354 >     T_SSL_CIPHER_LIST = 425,
355 >     T_DEAF = 426,
356 >     T_DEBUG = 427,
357 >     T_DLINE = 428,
358 >     T_EXTERNAL = 429,
359 >     T_FULL = 430,
360 >     T_INVISIBLE = 431,
361 >     T_IPV4 = 432,
362 >     T_IPV6 = 433,
363 >     T_LOCOPS = 434,
364 >     T_MAX_CLIENTS = 435,
365 >     T_NCHANGE = 436,
366 >     T_OPERWALL = 437,
367 >     T_RECVQ = 438,
368 >     T_REJ = 439,
369 >     T_SERVER = 440,
370 >     T_SERVNOTICE = 441,
371 >     T_SET = 442,
372 >     T_SKILL = 443,
373 >     T_SPY = 444,
374 >     T_SSL = 445,
375 >     T_UMODES = 446,
376 >     T_UNAUTH = 447,
377 >     T_UNDLINE = 448,
378 >     T_UNLIMITED = 449,
379 >     T_UNRESV = 450,
380 >     T_UNXLINE = 451,
381 >     T_GLOBOPS = 452,
382 >     T_WALLOP = 453,
383 >     T_RESTART = 454,
384 >     T_SERVICE = 455,
385 >     T_SERVICES_NAME = 456,
386 >     THROTTLE_TIME = 457,
387 >     TRUE_NO_OPER_FLOOD = 458,
388 >     UNKLINE = 459,
389 >     USER = 460,
390 >     USE_EGD = 461,
391 >     USE_LOGGING = 462,
392 >     VHOST = 463,
393 >     VHOST6 = 464,
394 >     XLINE = 465,
395 >     WARN_NO_NLINE = 466,
396 >     T_SIZE = 467,
397 >     T_FILE = 468
398     };
399   #endif
400   /* Tokens.  */
401   #define ACCEPT_PASSWORD 258
402 < #define ACTION 259
403 < #define ADMIN 260
404 < #define AFTYPE 261
405 < #define T_ALLOW 262
406 < #define ANTI_NICK_FLOOD 263
407 < #define ANTI_SPAM_EXIT_MESSAGE_TIME 264
408 < #define AUTOCONN 265
409 < #define T_BLOCK 266
410 < #define BURST_AWAY 267
411 < #define BYTES 268
412 < #define KBYTES 269
413 < #define MBYTES 270
414 < #define GBYTES 271
415 < #define TBYTES 272
416 < #define CALLER_ID_WAIT 273
417 < #define CAN_FLOOD 274
418 < #define CHANNEL 275
419 < #define CIDR_BITLEN_IPV4 276
420 < #define CIDR_BITLEN_IPV6 277
421 < #define CLASS 278
422 < #define CONNECT 279
423 < #define CONNECTFREQ 280
424 < #define DEFAULT_FLOODCOUNT 281
425 < #define DEFAULT_SPLIT_SERVER_COUNT 282
426 < #define DEFAULT_SPLIT_USER_COUNT 283
427 < #define DENY 284
428 < #define DESCRIPTION 285
429 < #define DIE 286
430 < #define DISABLE_AUTH 287
431 < #define DISABLE_FAKE_CHANNELS 288
432 < #define DISABLE_HIDDEN 289
433 < #define DISABLE_LOCAL_CHANNELS 290
434 < #define DISABLE_REMOTE_COMMANDS 291
435 < #define DOTS_IN_IDENT 292
436 < #define DURATION 293
437 < #define EGDPOOL_PATH 294
438 < #define EMAIL 295
439 < #define ENABLE 296
440 < #define ENCRYPTED 297
441 < #define EXCEED_LIMIT 298
442 < #define EXEMPT 299
443 < #define FAILED_OPER_NOTICE 300
444 < #define IRCD_FLAGS 301
445 < #define FLATTEN_LINKS 302
446 < #define GECOS 303
447 < #define GENERAL 304
448 < #define GLINE 305
449 < #define GLINES 306
450 < #define GLINE_EXEMPT 307
451 < #define GLINE_TIME 308
452 < #define GLINE_MIN_CIDR 309
453 < #define GLINE_MIN_CIDR6 310
454 < #define GLOBAL_KILL 311
455 < #define IRCD_AUTH 312
456 < #define NEED_IDENT 313
457 < #define HAVENT_READ_CONF 314
458 < #define HIDDEN 315
459 < #define HIDDEN_NAME 316
460 < #define HIDE_SERVER_IPS 317
461 < #define HIDE_SERVERS 318
462 < #define HIDE_SPOOF_IPS 319
463 < #define HOST 320
464 < #define HUB 321
465 < #define HUB_MASK 322
466 < #define IGNORE_BOGUS_TS 323
467 < #define INVISIBLE_ON_CONNECT 324
468 < #define IP 325
469 < #define KILL 326
470 < #define KILL_CHASE_TIME_LIMIT 327
471 < #define KLINE 328
472 < #define KLINE_EXEMPT 329
473 < #define KLINE_REASON 330
474 < #define KLINE_WITH_REASON 331
475 < #define KNOCK_DELAY 332
476 < #define KNOCK_DELAY_CHANNEL 333
477 < #define LEAF_MASK 334
478 < #define LINKS_DELAY 335
479 < #define LISTEN 336
480 < #define T_LOG 337
481 < #define MAX_ACCEPT 338
482 < #define MAX_BANS 339
483 < #define MAX_CHANS_PER_USER 340
484 < #define MAX_GLOBAL 341
485 < #define MAX_IDENT 342
486 < #define MAX_LOCAL 343
487 < #define MAX_NICK_CHANGES 344
488 < #define MAX_NICK_TIME 345
489 < #define MAX_NUMBER 346
490 < #define MAX_TARGETS 347
491 < #define MAX_WATCH 348
492 < #define MESSAGE_LOCALE 349
493 < #define MIN_NONWILDCARD 350
494 < #define MIN_NONWILDCARD_SIMPLE 351
495 < #define MODULE 352
496 < #define MODULES 353
497 < #define NAME 354
498 < #define NEED_PASSWORD 355
499 < #define NETWORK_DESC 356
500 < #define NETWORK_NAME 357
501 < #define NICK 358
502 < #define NICK_CHANGES 359
503 < #define NO_CREATE_ON_SPLIT 360
504 < #define NO_JOIN_ON_SPLIT 361
505 < #define NO_OPER_FLOOD 362
506 < #define NO_TILDE 363
507 < #define NUMBER 364
508 < #define NUMBER_PER_IDENT 365
509 < #define NUMBER_PER_CIDR 366
510 < #define NUMBER_PER_IP 367
511 < #define NUMBER_PER_IP_GLOBAL 368
512 < #define OPERATOR 369
513 < #define OPERS_BYPASS_CALLERID 370
514 < #define OPER_ONLY_UMODES 371
515 < #define OPER_PASS_RESV 372
516 < #define OPER_SPY_T 373
517 < #define OPER_UMODES 374
518 < #define JOIN_FLOOD_COUNT 375
519 < #define JOIN_FLOOD_TIME 376
520 < #define PACE_WAIT 377
521 < #define PACE_WAIT_SIMPLE 378
522 < #define PASSWORD 379
523 < #define PATH 380
524 < #define PING_COOKIE 381
525 < #define PING_TIME 382
526 < #define PING_WARNING 383
527 < #define PORT 384
528 < #define QSTRING 385
529 < #define QUIET_ON_BAN 386
530 < #define REASON 387
531 < #define REDIRPORT 388
532 < #define REDIRSERV 389
533 < #define REGEX_T 390
534 < #define REHASH 391
535 < #define TREJECT_HOLD_TIME 392
536 < #define REMOTE 393
537 < #define REMOTEBAN 394
538 < #define RESTRICT_CHANNELS 395
539 < #define RESTRICTED 396
540 < #define RSA_PRIVATE_KEY_FILE 397
541 < #define RSA_PUBLIC_KEY_FILE 398
542 < #define SSL_CERTIFICATE_FILE 399
543 < #define SSL_DH_PARAM_FILE 400
544 < #define T_SSL_CLIENT_METHOD 401
545 < #define T_SSL_SERVER_METHOD 402
546 < #define T_SSLV3 403
547 < #define T_TLSV1 404
548 < #define RESV 405
549 < #define RESV_EXEMPT 406
550 < #define SECONDS 407
551 < #define MINUTES 408
552 < #define HOURS 409
553 < #define DAYS 410
554 < #define WEEKS 411
555 < #define SENDQ 412
556 < #define SEND_PASSWORD 413
557 < #define SERVERHIDE 414
558 < #define SERVERINFO 415
559 < #define IRCD_SID 416
560 < #define TKLINE_EXPIRE_NOTICES 417
561 < #define T_SHARED 418
562 < #define T_CLUSTER 419
563 < #define TYPE 420
564 < #define SHORT_MOTD 421
565 < #define SILENT 422
566 < #define SPOOF 423
567 < #define SPOOF_NOTICE 424
568 < #define STATS_E_DISABLED 425
569 < #define STATS_I_OPER_ONLY 426
570 < #define STATS_K_OPER_ONLY 427
571 < #define STATS_O_OPER_ONLY 428
572 < #define STATS_P_OPER_ONLY 429
573 < #define TBOOL 430
574 < #define TMASKED 431
575 < #define T_REJECT 432
576 < #define TS_MAX_DELTA 433
577 < #define TS_WARN_DELTA 434
578 < #define TWODOTS 435
579 < #define T_ALL 436
580 < #define T_BOTS 437
581 < #define T_SOFTCALLERID 438
582 < #define T_CALLERID 439
583 < #define T_CCONN 440
584 < #define T_CCONN_FULL 441
585 < #define T_SSL_CIPHER_LIST 442
586 < #define T_CLIENT_FLOOD 443
587 < #define T_DEAF 444
588 < #define T_DEBUG 445
589 < #define T_DLINE 446
590 < #define T_DRONE 447
591 < #define T_EXTERNAL 448
592 < #define T_FULL 449
593 < #define T_INVISIBLE 450
594 < #define T_IPV4 451
595 < #define T_IPV6 452
596 < #define T_LOCOPS 453
597 < #define T_MAX_CLIENTS 454
598 < #define T_NCHANGE 455
599 < #define T_OPERWALL 456
600 < #define T_REJ 457
601 < #define T_SERVER 458
602 < #define T_SERVNOTICE 459
603 < #define T_SKILL 460
604 < #define T_SPY 461
605 < #define T_SSL 462
606 < #define T_UMODES 463
607 < #define T_UNAUTH 464
608 < #define T_UNDLINE 465
609 < #define T_UNLIMITED 466
610 < #define T_UNRESV 467
611 < #define T_UNXLINE 468
634 < #define T_GLOBOPS 469
635 < #define T_WALLOP 470
636 < #define T_RESTART 471
637 < #define T_SERVICE 472
638 < #define T_SERVICES_NAME 473
639 < #define THROTTLE_TIME 474
640 < #define TOPICBURST 475
641 < #define TRUE_NO_OPER_FLOOD 476
642 < #define TKLINE 477
643 < #define TXLINE 478
644 < #define TRESV 479
645 < #define UNKLINE 480
646 < #define USER 481
647 < #define USE_EGD 482
648 < #define USE_EXCEPT 483
649 < #define USE_INVEX 484
650 < #define USE_KNOCK 485
651 < #define USE_LOGGING 486
652 < #define USE_WHOIS_ACTUALLY 487
653 < #define VHOST 488
654 < #define VHOST6 489
655 < #define XLINE 490
656 < #define WARN 491
657 < #define WARN_NO_NLINE 492
658 < #define T_SIZE 493
659 < #define T_FILE 494
660 <
402 > #define ADMIN 259
403 > #define AFTYPE 260
404 > #define ANTI_NICK_FLOOD 261
405 > #define ANTI_SPAM_EXIT_MESSAGE_TIME 262
406 > #define AUTOCONN 263
407 > #define BYTES 264
408 > #define KBYTES 265
409 > #define MBYTES 266
410 > #define CALLER_ID_WAIT 267
411 > #define CAN_FLOOD 268
412 > #define CHANNEL 269
413 > #define CIDR_BITLEN_IPV4 270
414 > #define CIDR_BITLEN_IPV6 271
415 > #define CLASS 272
416 > #define CONNECT 273
417 > #define CONNECTFREQ 274
418 > #define DEFAULT_FLOODCOUNT 275
419 > #define DEFAULT_SPLIT_SERVER_COUNT 276
420 > #define DEFAULT_SPLIT_USER_COUNT 277
421 > #define DENY 278
422 > #define DESCRIPTION 279
423 > #define DIE 280
424 > #define DISABLE_AUTH 281
425 > #define DISABLE_FAKE_CHANNELS 282
426 > #define DISABLE_REMOTE_COMMANDS 283
427 > #define DOTS_IN_IDENT 284
428 > #define EGDPOOL_PATH 285
429 > #define EMAIL 286
430 > #define ENCRYPTED 287
431 > #define EXCEED_LIMIT 288
432 > #define EXEMPT 289
433 > #define FAILED_OPER_NOTICE 290
434 > #define IRCD_FLAGS 291
435 > #define FLATTEN_LINKS 292
436 > #define GECOS 293
437 > #define GENERAL 294
438 > #define GLINE 295
439 > #define GLINE_DURATION 296
440 > #define GLINE_ENABLE 297
441 > #define GLINE_EXEMPT 298
442 > #define GLINE_REQUEST_DURATION 299
443 > #define GLINE_MIN_CIDR 300
444 > #define GLINE_MIN_CIDR6 301
445 > #define GLOBAL_KILL 302
446 > #define IRCD_AUTH 303
447 > #define NEED_IDENT 304
448 > #define HAVENT_READ_CONF 305
449 > #define HIDDEN 306
450 > #define HIDDEN_NAME 307
451 > #define HIDE_SERVER_IPS 308
452 > #define HIDE_SERVERS 309
453 > #define HIDE_SPOOF_IPS 310
454 > #define HOST 311
455 > #define HUB 312
456 > #define HUB_MASK 313
457 > #define IGNORE_BOGUS_TS 314
458 > #define INVISIBLE_ON_CONNECT 315
459 > #define IP 316
460 > #define KILL 317
461 > #define KILL_CHASE_TIME_LIMIT 318
462 > #define KLINE 319
463 > #define KLINE_EXEMPT 320
464 > #define KNOCK_DELAY 321
465 > #define KNOCK_DELAY_CHANNEL 322
466 > #define LEAF_MASK 323
467 > #define LINKS_DELAY 324
468 > #define LISTEN 325
469 > #define T_LOG 326
470 > #define MAX_ACCEPT 327
471 > #define MAX_BANS 328
472 > #define MAX_CHANS_PER_OPER 329
473 > #define MAX_CHANS_PER_USER 330
474 > #define MAX_GLOBAL 331
475 > #define MAX_IDENT 332
476 > #define MAX_LOCAL 333
477 > #define MAX_NICK_CHANGES 334
478 > #define MAX_NICK_TIME 335
479 > #define MAX_NUMBER 336
480 > #define MAX_TARGETS 337
481 > #define MAX_WATCH 338
482 > #define MESSAGE_LOCALE 339
483 > #define MIN_NONWILDCARD 340
484 > #define MIN_NONWILDCARD_SIMPLE 341
485 > #define MODULE 342
486 > #define MODULES 343
487 > #define NAME 344
488 > #define NEED_PASSWORD 345
489 > #define NETWORK_DESC 346
490 > #define NETWORK_NAME 347
491 > #define NICK 348
492 > #define NICK_CHANGES 349
493 > #define NO_CREATE_ON_SPLIT 350
494 > #define NO_JOIN_ON_SPLIT 351
495 > #define NO_OPER_FLOOD 352
496 > #define NO_TILDE 353
497 > #define NUMBER 354
498 > #define NUMBER_PER_CIDR 355
499 > #define NUMBER_PER_IP 356
500 > #define OPERATOR 357
501 > #define OPERS_BYPASS_CALLERID 358
502 > #define OPER_ONLY_UMODES 359
503 > #define OPER_PASS_RESV 360
504 > #define OPER_SPY_T 361
505 > #define OPER_UMODES 362
506 > #define JOIN_FLOOD_COUNT 363
507 > #define JOIN_FLOOD_TIME 364
508 > #define PACE_WAIT 365
509 > #define PACE_WAIT_SIMPLE 366
510 > #define PASSWORD 367
511 > #define PATH 368
512 > #define PING_COOKIE 369
513 > #define PING_TIME 370
514 > #define PORT 371
515 > #define QSTRING 372
516 > #define QUIET_ON_BAN 373
517 > #define REASON 374
518 > #define REDIRPORT 375
519 > #define REDIRSERV 376
520 > #define REGEX_T 377
521 > #define REHASH 378
522 > #define REMOTE 379
523 > #define REMOTEBAN 380
524 > #define RESTRICT_CHANNELS 381
525 > #define RSA_PRIVATE_KEY_FILE 382
526 > #define RSA_PUBLIC_KEY_FILE 383
527 > #define SSL_CERTIFICATE_FILE 384
528 > #define SSL_DH_PARAM_FILE 385
529 > #define T_SSL_CLIENT_METHOD 386
530 > #define T_SSL_SERVER_METHOD 387
531 > #define T_SSLV3 388
532 > #define T_TLSV1 389
533 > #define RESV 390
534 > #define RESV_EXEMPT 391
535 > #define SECONDS 392
536 > #define MINUTES 393
537 > #define HOURS 394
538 > #define DAYS 395
539 > #define WEEKS 396
540 > #define SENDQ 397
541 > #define SEND_PASSWORD 398
542 > #define SERVERHIDE 399
543 > #define SERVERINFO 400
544 > #define IRCD_SID 401
545 > #define TKLINE_EXPIRE_NOTICES 402
546 > #define T_SHARED 403
547 > #define T_CLUSTER 404
548 > #define TYPE 405
549 > #define SHORT_MOTD 406
550 > #define SPOOF 407
551 > #define SPOOF_NOTICE 408
552 > #define STATS_E_DISABLED 409
553 > #define STATS_I_OPER_ONLY 410
554 > #define STATS_K_OPER_ONLY 411
555 > #define STATS_O_OPER_ONLY 412
556 > #define STATS_P_OPER_ONLY 413
557 > #define TBOOL 414
558 > #define TMASKED 415
559 > #define TS_MAX_DELTA 416
560 > #define TS_WARN_DELTA 417
561 > #define TWODOTS 418
562 > #define T_ALL 419
563 > #define T_BOTS 420
564 > #define T_SOFTCALLERID 421
565 > #define T_CALLERID 422
566 > #define T_CCONN 423
567 > #define T_CCONN_FULL 424
568 > #define T_SSL_CIPHER_LIST 425
569 > #define T_DEAF 426
570 > #define T_DEBUG 427
571 > #define T_DLINE 428
572 > #define T_EXTERNAL 429
573 > #define T_FULL 430
574 > #define T_INVISIBLE 431
575 > #define T_IPV4 432
576 > #define T_IPV6 433
577 > #define T_LOCOPS 434
578 > #define T_MAX_CLIENTS 435
579 > #define T_NCHANGE 436
580 > #define T_OPERWALL 437
581 > #define T_RECVQ 438
582 > #define T_REJ 439
583 > #define T_SERVER 440
584 > #define T_SERVNOTICE 441
585 > #define T_SET 442
586 > #define T_SKILL 443
587 > #define T_SPY 444
588 > #define T_SSL 445
589 > #define T_UMODES 446
590 > #define T_UNAUTH 447
591 > #define T_UNDLINE 448
592 > #define T_UNLIMITED 449
593 > #define T_UNRESV 450
594 > #define T_UNXLINE 451
595 > #define T_GLOBOPS 452
596 > #define T_WALLOP 453
597 > #define T_RESTART 454
598 > #define T_SERVICE 455
599 > #define T_SERVICES_NAME 456
600 > #define THROTTLE_TIME 457
601 > #define TRUE_NO_OPER_FLOOD 458
602 > #define UNKLINE 459
603 > #define USER 460
604 > #define USE_EGD 461
605 > #define USE_LOGGING 462
606 > #define VHOST 463
607 > #define VHOST6 464
608 > #define XLINE 465
609 > #define WARN_NO_NLINE 466
610 > #define T_SIZE 467
611 > #define T_FILE 468
612  
613  
614  
615   #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
616   typedef union YYSTYPE
617   {
618 <
619 < /* Line 293 of yacc.c  */
669 < #line 110 "conf_parser.y"
618 > /* Line 374 of yacc.c  */
619 > #line 109 "conf_parser.y"
620  
621    int number;
622    char *string;
623  
624  
625 <
626 < /* Line 293 of yacc.c  */
677 < #line 678 "conf_parser.c"
625 > /* Line 374 of yacc.c  */
626 > #line 627 "conf_parser.c"
627   } YYSTYPE;
628   # define YYSTYPE_IS_TRIVIAL 1
629   # define yystype YYSTYPE /* obsolescent; will be withdrawn */
630   # define YYSTYPE_IS_DECLARED 1
631   #endif
632  
633 + extern YYSTYPE yylval;
634  
635 < /* Copy the second part of user declarations.  */
635 > #ifdef YYPARSE_PARAM
636 > #if defined __STDC__ || defined __cplusplus
637 > int yyparse (void *YYPARSE_PARAM);
638 > #else
639 > int yyparse ();
640 > #endif
641 > #else /* ! YYPARSE_PARAM */
642 > #if defined __STDC__ || defined __cplusplus
643 > int yyparse (void);
644 > #else
645 > int yyparse ();
646 > #endif
647 > #endif /* ! YYPARSE_PARAM */
648 >
649 > #endif /* !YY_YY_Y_TAB_H_INCLUDED  */
650  
651 + /* Copy the second part of user declarations.  */
652  
653 < /* Line 343 of yacc.c  */
654 < #line 690 "conf_parser.c"
653 > /* Line 377 of yacc.c  */
654 > #line 655 "conf_parser.c"
655  
656   #ifdef short
657   # undef short
# Line 739 | Line 704 | typedef short int yytype_int16;
704   # if defined YYENABLE_NLS && YYENABLE_NLS
705   #  if ENABLE_NLS
706   #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
707 < #   define YY_(msgid) dgettext ("bison-runtime", msgid)
707 > #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
708   #  endif
709   # endif
710   # ifndef YY_
711 < #  define YY_(msgid) msgid
711 > #  define YY_(Msgid) Msgid
712   # endif
713   #endif
714  
715   /* Suppress unused-variable warnings by "using" E.  */
716   #if ! defined lint || defined __GNUC__
717 < # define YYUSE(e) ((void) (e))
717 > # define YYUSE(E) ((void) (E))
718   #else
719 < # define YYUSE(e) /* empty */
719 > # define YYUSE(E) /* empty */
720   #endif
721  
722   /* Identity function, used to suppress warnings about constant conditions.  */
723   #ifndef lint
724 < # define YYID(n) (n)
724 > # define YYID(N) (N)
725   #else
726   #if (defined __STDC__ || defined __C99__FUNC__ \
727       || defined __cplusplus || defined _MSC_VER)
# Line 792 | Line 757 | YYID (yyi)
757   #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
758       || defined __cplusplus || defined _MSC_VER)
759   #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
760 +      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
761   #     ifndef EXIT_SUCCESS
762   #      define EXIT_SUCCESS 0
763   #     endif
# Line 883 | Line 849 | union yyalloc
849   #endif
850  
851   #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
852 < /* Copy COUNT objects from FROM to TO.  The source and destination do
852 > /* Copy COUNT objects from SRC to DST.  The source and destination do
853     not overlap.  */
854   # ifndef YYCOPY
855   #  if defined __GNUC__ && 1 < __GNUC__
856 < #   define YYCOPY(To, From, Count) \
857 <      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
856 > #   define YYCOPY(Dst, Src, Count) \
857 >      __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
858   #  else
859 < #   define YYCOPY(To, From, Count)              \
860 <      do                                        \
861 <        {                                       \
862 <          YYSIZE_T yyi;                         \
863 <          for (yyi = 0; yyi < (Count); yyi++)   \
864 <            (To)[yyi] = (From)[yyi];            \
865 <        }                                       \
859 > #   define YYCOPY(Dst, Src, Count)              \
860 >      do                                        \
861 >        {                                       \
862 >          YYSIZE_T yyi;                         \
863 >          for (yyi = 0; yyi < (Count); yyi++)   \
864 >            (Dst)[yyi] = (Src)[yyi];            \
865 >        }                                       \
866        while (YYID (0))
867   #  endif
868   # endif
# Line 905 | Line 871 | union yyalloc
871   /* YYFINAL -- State number of the termination state.  */
872   #define YYFINAL  2
873   /* YYLAST -- Last index in YYTABLE.  */
874 < #define YYLAST   1256
874 > #define YYLAST   1180
875  
876   /* YYNTOKENS -- Number of terminals.  */
877 < #define YYNTOKENS  245
877 > #define YYNTOKENS  219
878   /* YYNNTS -- Number of nonterminals.  */
879 < #define YYNNTS  304
879 > #define YYNNTS  282
880   /* YYNRULES -- Number of rules.  */
881 < #define YYNRULES  666
881 > #define YYNRULES  625
882   /* YYNRULES -- Number of states.  */
883 < #define YYNSTATES  1306
883 > #define YYNSTATES  1223
884  
885   /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
886   #define YYUNDEFTOK  2
887 < #define YYMAXUTOK   494
887 > #define YYMAXUTOK   468
888  
889   #define YYTRANSLATE(YYX)                                                \
890    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
# Line 930 | Line 896 | static const yytype_uint8 yytranslate[]
896         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
897         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
898         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
899 <       2,     2,     2,     2,   244,     2,     2,     2,     2,     2,
900 <       2,     2,     2,     2,     2,     2,     2,     2,     2,   240,
901 <       2,   243,     2,     2,     2,     2,     2,     2,     2,     2,
899 >       2,     2,     2,     2,   218,     2,     2,     2,     2,     2,
900 >       2,     2,     2,     2,     2,     2,     2,     2,     2,   214,
901 >       2,   217,     2,     2,     2,     2,     2,     2,     2,     2,
902         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
903         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
904         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
905         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
906         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
907 <       2,     2,     2,   242,     2,   241,     2,     2,     2,     2,
907 >       2,     2,     2,   216,     2,   215,     2,     2,     2,     2,
908         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
909         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
910         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
# Line 972 | Line 938 | static const yytype_uint8 yytranslate[]
938       175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
939       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
940       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
941 <     205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
976 <     215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
977 <     225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
978 <     235,   236,   237,   238,   239
941 >     205,   206,   207,   208,   209,   210,   211,   212,   213
942   };
943  
944   #if YYDEBUG
# Line 985 | Line 948 | static const yytype_uint16 yyprhs[] =
948   {
949         0,     0,     3,     4,     7,     9,    11,    13,    15,    17,
950        19,    21,    23,    25,    27,    29,    31,    33,    35,    37,
951 <      39,    41,    43,    45,    47,    49,    52,    55,    56,    58,
952 <      61,    65,    69,    73,    77,    81,    82,    84,    87,    91,
953 <      95,    99,   105,   108,   110,   112,   114,   117,   122,   127,
954 <     133,   136,   138,   140,   142,   144,   146,   148,   150,   152,
955 <     154,   156,   158,   160,   162,   164,   166,   168,   171,   176,
956 <     181,   185,   187,   189,   191,   195,   197,   199,   201,   206,
957 <     211,   216,   221,   226,   231,   236,   241,   246,   251,   256,
958 <     261,   266,   272,   275,   277,   279,   281,   283,   286,   291,
959 <     296,   301,   307,   310,   312,   314,   316,   319,   324,   325,
960 <     332,   335,   337,   339,   341,   343,   346,   351,   356,   361,
961 <     362,   368,   372,   374,   376,   378,   380,   382,   384,   386,
962 <     388,   389,   396,   399,   401,   403,   405,   407,   409,   411,
963 <     413,   415,   417,   420,   425,   430,   435,   440,   445,   450,
964 <     451,   457,   461,   463,   465,   467,   469,   471,   473,   475,
951 >      39,    41,    43,    45,    47,    50,    53,    54,    56,    59,
952 >      63,    67,    71,    75,    79,    80,    82,    85,    89,    93,
953 >      97,   103,   106,   108,   110,   112,   115,   120,   125,   131,
954 >     134,   136,   138,   140,   142,   144,   146,   148,   150,   152,
955 >     154,   156,   158,   160,   162,   164,   166,   169,   174,   179,
956 >     183,   185,   187,   189,   193,   195,   197,   199,   204,   209,
957 >     214,   219,   224,   229,   234,   239,   244,   249,   254,   259,
958 >     264,   270,   273,   275,   277,   279,   281,   284,   289,   294,
959 >     299,   305,   308,   310,   312,   314,   317,   322,   323,   330,
960 >     333,   335,   337,   339,   341,   344,   349,   354,   359,   360,
961 >     366,   370,   372,   374,   376,   378,   380,   382,   384,   386,
962 >     387,   394,   397,   399,   401,   403,   405,   407,   409,   411,
963 >     413,   415,   418,   423,   428,   433,   438,   443,   448,   449,
964 >     455,   459,   461,   463,   465,   467,   469,   471,   473,   475,
965       477,   479,   481,   483,   485,   487,   489,   491,   493,   495,
966 <     497,   499,   501,   503,   504,   510,   514,   516,   518,   520,
966 >     497,   499,   501,   502,   508,   512,   514,   516,   518,   520,
967       522,   524,   526,   528,   530,   532,   534,   536,   538,   540,
968       542,   544,   546,   548,   550,   552,   553,   560,   563,   565,
969       567,   569,   571,   573,   575,   577,   579,   581,   583,   585,
# Line 1020 | Line 983 | static const yytype_uint16 yyprhs[] =
983       997,   999,  1001,  1003,  1005,  1007,  1009,  1010,  1017,  1020,
984      1022,  1024,  1026,  1028,  1030,  1032,  1034,  1036,  1038,  1040,
985      1042,  1044,  1046,  1048,  1051,  1056,  1061,  1066,  1071,  1076,
986 <    1081,  1086,  1091,  1092,  1098,  1102,  1104,  1106,  1108,  1110,
987 <    1112,  1117,  1122,  1127,  1132,  1137,  1138,  1145,  1146,  1152,
988 <    1156,  1158,  1160,  1163,  1165,  1167,  1169,  1171,  1173,  1178,
989 <    1183,  1184,  1191,  1194,  1196,  1198,  1200,  1202,  1207,  1212,
990 <    1218,  1221,  1223,  1225,  1227,  1232,  1233,  1240,  1241,  1247,
991 <    1251,  1253,  1255,  1258,  1260,  1262,  1264,  1266,  1268,  1273,
992 <    1278,  1284,  1287,  1289,  1291,  1293,  1295,  1297,  1299,  1301,
986 >    1081,  1086,  1091,  1092,  1098,  1102,  1104,  1106,  1108,  1113,
987 >    1118,  1123,  1128,  1133,  1134,  1141,  1142,  1148,  1152,  1154,
988 >    1156,  1159,  1161,  1163,  1165,  1167,  1169,  1174,  1179,  1180,
989 >    1187,  1190,  1192,  1194,  1196,  1198,  1203,  1208,  1214,  1217,
990 >    1219,  1221,  1223,  1228,  1229,  1236,  1237,  1243,  1247,  1249,
991 >    1251,  1254,  1256,  1258,  1260,  1262,  1264,  1269,  1274,  1280,
992 >    1283,  1285,  1287,  1289,  1291,  1293,  1295,  1297,  1299,  1301,
993      1303,  1305,  1307,  1309,  1311,  1313,  1315,  1317,  1319,  1321,
994      1323,  1325,  1327,  1329,  1331,  1333,  1335,  1337,  1339,  1341,
995      1343,  1345,  1347,  1349,  1351,  1353,  1355,  1357,  1359,  1361,
996      1363,  1365,  1367,  1369,  1371,  1373,  1375,  1377,  1379,  1381,
997 <    1383,  1385,  1387,  1389,  1391,  1393,  1398,  1403,  1408,  1413,
998 <    1418,  1423,  1428,  1433,  1438,  1443,  1448,  1453,  1458,  1463,
999 <    1468,  1473,  1478,  1483,  1488,  1493,  1498,  1503,  1508,  1513,
1000 <    1518,  1523,  1528,  1533,  1538,  1543,  1548,  1553,  1558,  1563,
1001 <    1568,  1573,  1578,  1583,  1588,  1593,  1598,  1603,  1608,  1613,
1002 <    1618,  1623,  1628,  1629,  1635,  1639,  1641,  1643,  1645,  1647,
1003 <    1649,  1651,  1653,  1655,  1657,  1659,  1661,  1663,  1665,  1667,
1004 <    1669,  1671,  1673,  1675,  1677,  1679,  1681,  1682,  1688,  1692,
1005 <    1694,  1696,  1698,  1700,  1702,  1704,  1706,  1708,  1710,  1712,
1006 <    1714,  1716,  1718,  1720,  1722,  1724,  1726,  1728,  1730,  1732,
1007 <    1734,  1739,  1744,  1749,  1754,  1755,  1762,  1765,  1767,  1769,
1008 <    1771,  1773,  1775,  1777,  1779,  1781,  1786,  1791,  1792,  1798,
1009 <    1802,  1804,  1806,  1808,  1813,  1818,  1819,  1825,  1829,  1831,
1010 <    1833,  1835,  1841,  1844,  1846,  1848,  1850,  1852,  1854,  1856,
1011 <    1858,  1860,  1862,  1864,  1866,  1868,  1870,  1872,  1874,  1876,
1049 <    1878,  1880,  1882,  1887,  1892,  1897,  1902,  1907,  1912,  1917,
1050 <    1922,  1927,  1932,  1937,  1942,  1947,  1952,  1957,  1962,  1967,
1051 <    1973,  1976,  1978,  1980,  1982,  1984,  1986,  1988,  1990,  1992,
1052 <    1994,  1999,  2004,  2009,  2014,  2019,  2024
997 >    1383,  1385,  1390,  1395,  1400,  1405,  1410,  1415,  1420,  1425,
998 >    1430,  1435,  1440,  1445,  1450,  1455,  1460,  1465,  1470,  1475,
999 >    1480,  1485,  1490,  1495,  1500,  1505,  1510,  1515,  1520,  1525,
1000 >    1530,  1535,  1540,  1545,  1550,  1555,  1560,  1565,  1570,  1575,
1001 >    1580,  1585,  1590,  1595,  1600,  1605,  1610,  1615,  1616,  1622,
1002 >    1626,  1628,  1630,  1632,  1634,  1636,  1638,  1640,  1642,  1644,
1003 >    1646,  1648,  1650,  1652,  1654,  1656,  1658,  1660,  1662,  1664,
1004 >    1666,  1668,  1669,  1675,  1679,  1681,  1683,  1685,  1687,  1689,
1005 >    1691,  1693,  1695,  1697,  1699,  1701,  1703,  1705,  1707,  1709,
1006 >    1711,  1713,  1715,  1717,  1719,  1721,  1726,  1731,  1736,  1742,
1007 >    1745,  1747,  1749,  1751,  1753,  1755,  1757,  1759,  1761,  1763,
1008 >    1765,  1767,  1769,  1771,  1773,  1775,  1777,  1782,  1787,  1792,
1009 >    1797,  1802,  1807,  1812,  1817,  1822,  1827,  1832,  1837,  1842,
1010 >    1847,  1853,  1856,  1858,  1860,  1862,  1864,  1866,  1868,  1870,
1011 >    1872,  1877,  1882,  1887,  1892,  1897
1012   };
1013  
1014   /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1015   static const yytype_int16 yyrhs[] =
1016   {
1017 <     246,     0,    -1,    -1,   246,   247,    -1,   279,    -1,   285,
1018 <      -1,   299,    -1,   519,    -1,   317,    -1,   334,    -1,   348,
1019 <      -1,   257,    -1,   539,    -1,   363,    -1,   370,    -1,   374,
1020 <      -1,   384,    -1,   393,    -1,   413,    -1,   423,    -1,   429,
1021 <      -1,   443,    -1,   503,    -1,   433,    -1,   252,    -1,     1,
1022 <     240,    -1,     1,   241,    -1,    -1,   249,    -1,   109,   248,
1023 <      -1,   109,   152,   248,    -1,   109,   153,   248,    -1,   109,
1024 <     154,   248,    -1,   109,   155,   248,    -1,   109,   156,   248,
1025 <      -1,    -1,   251,    -1,   109,   250,    -1,   109,    13,   250,
1026 <      -1,   109,    14,   250,    -1,   109,    15,   250,    -1,    98,
1027 <     242,   253,   241,   240,    -1,   253,   254,    -1,   254,    -1,
1028 <     255,    -1,   256,    -1,     1,   240,    -1,    97,   243,   130,
1029 <     240,    -1,   125,   243,   130,   240,    -1,   160,   242,   258,
1030 <     241,   240,    -1,   258,   259,    -1,   259,    -1,   270,    -1,
1031 <     275,    -1,   278,    -1,   272,    -1,   273,    -1,   274,    -1,
1032 <     277,    -1,   268,    -1,   267,    -1,   276,    -1,   271,    -1,
1033 <     266,    -1,   260,    -1,   261,    -1,   269,    -1,     1,   240,
1034 <      -1,   146,   243,   262,   240,    -1,   147,   243,   264,   240,
1035 <      -1,   262,   244,   263,    -1,   263,    -1,   148,    -1,   149,
1036 <      -1,   264,   244,   265,    -1,   265,    -1,   148,    -1,   149,
1037 <      -1,   144,   243,   130,   240,    -1,   142,   243,   130,   240,
1038 <      -1,   145,   243,   130,   240,    -1,   187,   243,   130,   240,
1039 <      -1,    99,   243,   130,   240,    -1,   161,   243,   130,   240,
1040 <      -1,    30,   243,   130,   240,    -1,   102,   243,   130,   240,
1041 <      -1,   101,   243,   130,   240,    -1,   233,   243,   130,   240,
1042 <      -1,   234,   243,   130,   240,    -1,   199,   243,   109,   240,
1043 <      -1,    66,   243,   175,   240,    -1,     5,   242,   280,   241,
1044 <     240,    -1,   280,   281,    -1,   281,    -1,   282,    -1,   284,
1045 <      -1,   283,    -1,     1,   240,    -1,    99,   243,   130,   240,
1046 <      -1,    40,   243,   130,   240,    -1,    30,   243,   130,   240,
1047 <      -1,    82,   242,   286,   241,   240,    -1,   286,   287,    -1,
1048 <     287,    -1,   288,    -1,   289,    -1,     1,   240,    -1,   231,
1049 <     243,   175,   240,    -1,    -1,   290,   239,   242,   291,   241,
1050 <     240,    -1,   291,   292,    -1,   292,    -1,   293,    -1,   295,
1051 <      -1,   294,    -1,     1,   240,    -1,    99,   243,   130,   240,
1052 <      -1,   238,   243,   251,   240,    -1,   238,   243,   211,   240,
1053 <      -1,    -1,   165,   296,   243,   297,   240,    -1,   297,   244,
1054 <     298,    -1,   298,    -1,   226,    -1,   114,    -1,    50,    -1,
1055 <     191,    -1,    73,    -1,    71,    -1,   190,    -1,    -1,   114,
1056 <     300,   242,   301,   241,   240,    -1,   301,   302,    -1,   302,
1057 <      -1,   303,    -1,   304,    -1,   305,    -1,   309,    -1,   308,
1058 <      -1,   306,    -1,   307,    -1,   313,    -1,     1,   240,    -1,
1059 <      99,   243,   130,   240,    -1,   226,   243,   130,   240,    -1,
1060 <     124,   243,   130,   240,    -1,    42,   243,   175,   240,    -1,
1061 <     143,   243,   130,   240,    -1,    23,   243,   130,   240,    -1,
1062 <      -1,   208,   310,   243,   311,   240,    -1,   311,   244,   312,
1063 <      -1,   312,    -1,   182,    -1,   185,    -1,   186,    -1,   189,
1064 <      -1,   190,    -1,   194,    -1,    60,    -1,   205,    -1,   200,
1065 <      -1,   202,    -1,   209,    -1,   206,    -1,   193,    -1,   201,
1066 <      -1,   204,    -1,   195,    -1,   215,    -1,   183,    -1,   184,
1067 <      -1,   198,    -1,    -1,    46,   314,   243,   315,   240,    -1,
1068 <     315,   244,   316,    -1,   316,    -1,    56,    -1,   138,    -1,
1069 <      73,    -1,   225,    -1,   191,    -1,   210,    -1,   235,    -1,
1070 <      50,    -1,    31,    -1,   216,    -1,   136,    -1,     5,    -1,
1071 <     104,    -1,   201,    -1,   214,    -1,   118,    -1,   139,    -1,
1072 <      97,    -1,    -1,    23,   318,   242,   319,   241,   240,    -1,
1073 <     319,   320,    -1,   320,    -1,   321,    -1,   331,    -1,   332,
1074 <      -1,   322,    -1,   323,    -1,   333,    -1,   324,    -1,   325,
1075 <      -1,   326,    -1,   327,    -1,   328,    -1,   329,    -1,   330,
1076 <      -1,     1,   240,    -1,    99,   243,   130,   240,    -1,   127,
1077 <     243,   249,   240,    -1,   128,   243,   249,   240,    -1,   112,
1078 <     243,   109,   240,    -1,    25,   243,   249,   240,    -1,    91,
1079 <     243,   109,   240,    -1,    86,   243,   109,   240,    -1,    88,
1080 <     243,   109,   240,    -1,    87,   243,   109,   240,    -1,   157,
1081 <     243,   251,   240,    -1,    21,   243,   109,   240,    -1,    22,
1082 <     243,   109,   240,    -1,   111,   243,   109,   240,    -1,    -1,
1083 <      81,   335,   242,   340,   241,   240,    -1,    -1,    46,   337,
1084 <     243,   338,   240,    -1,   338,   244,   339,    -1,   339,    -1,
1085 <     207,    -1,    60,    -1,   203,    -1,   340,   341,    -1,   341,
1086 <      -1,   342,    -1,   336,    -1,   346,    -1,   347,    -1,     1,
1087 <     240,    -1,    -1,   129,   243,   344,   343,   240,    -1,   344,
1088 <     244,   345,    -1,   345,    -1,   109,    -1,   109,   180,   109,
1089 <      -1,    70,   243,   130,   240,    -1,    65,   243,   130,   240,
1090 <      -1,    -1,    57,   349,   242,   350,   241,   240,    -1,   350,
1091 <     351,    -1,   351,    -1,   352,    -1,   353,    -1,   354,    -1,
1092 <     356,    -1,   360,    -1,   361,    -1,   362,    -1,   355,    -1,
1093 <       1,   240,    -1,   226,   243,   130,   240,    -1,   124,   243,
1094 <     130,   240,    -1,    23,   243,   130,   240,    -1,    42,   243,
1095 <     175,   240,    -1,    -1,    46,   357,   243,   358,   240,    -1,
1096 <     358,   244,   359,    -1,   359,    -1,   169,    -1,    43,    -1,
1097 <      74,    -1,    58,    -1,    19,    -1,   108,    -1,    52,    -1,
1098 <     151,    -1,   100,    -1,   168,   243,   130,   240,    -1,   134,
1099 <     243,   130,   240,    -1,   133,   243,   109,   240,    -1,    -1,
1100 <     150,   364,   242,   365,   241,   240,    -1,   365,   366,    -1,
1101 <     366,    -1,   367,    -1,   368,    -1,   369,    -1,     1,   240,
1102 <      -1,   132,   243,   130,   240,    -1,    20,   243,   130,   240,
1103 <      -1,   103,   243,   130,   240,    -1,   217,   242,   371,   241,
1104 <     240,    -1,   371,   372,    -1,   372,    -1,   373,    -1,     1,
1105 <      -1,    99,   243,   130,   240,    -1,    -1,   163,   375,   242,
1106 <     376,   241,   240,    -1,   376,   377,    -1,   377,    -1,   378,
1107 <      -1,   379,    -1,   380,    -1,     1,   240,    -1,    99,   243,
1108 <     130,   240,    -1,   226,   243,   130,   240,    -1,    -1,   165,
1109 <     381,   243,   382,   240,    -1,   382,   244,   383,    -1,   383,
1110 <      -1,    73,    -1,   225,    -1,   191,    -1,   210,    -1,   235,
1111 <      -1,   213,    -1,   150,    -1,   212,    -1,   198,    -1,   181,
1112 <      -1,    -1,   164,   385,   242,   386,   241,   240,    -1,   386,
1113 <     387,    -1,   387,    -1,   388,    -1,   389,    -1,     1,   240,
1114 <      -1,    99,   243,   130,   240,    -1,    -1,   165,   390,   243,
1115 <     391,   240,    -1,   391,   244,   392,    -1,   392,    -1,    73,
1116 <      -1,   225,    -1,   191,    -1,   210,    -1,   235,    -1,   213,
1117 <      -1,   150,    -1,   212,    -1,   198,    -1,   181,    -1,    -1,
1118 <      24,   394,   242,   395,   241,   240,    -1,   395,   396,    -1,
1119 <     396,    -1,   397,    -1,   398,    -1,   399,    -1,   400,    -1,
1120 <     401,    -1,   403,    -1,   402,    -1,   412,    -1,   404,    -1,
1121 <     409,    -1,   410,    -1,   411,    -1,   408,    -1,     1,   240,
1122 <      -1,    99,   243,   130,   240,    -1,    65,   243,   130,   240,
1123 <      -1,   233,   243,   130,   240,    -1,   158,   243,   130,   240,
1124 <      -1,     3,   243,   130,   240,    -1,   129,   243,   109,   240,
1125 <      -1,     6,   243,   196,   240,    -1,     6,   243,   197,   240,
1126 <      -1,    -1,    46,   405,   243,   406,   240,    -1,   406,   244,
1127 <     407,    -1,   407,    -1,    10,    -1,    12,    -1,   220,    -1,
1128 <     207,    -1,    42,   243,   175,   240,    -1,    67,   243,   130,
1129 <     240,    -1,    79,   243,   130,   240,    -1,    23,   243,   130,
1130 <     240,    -1,   187,   243,   130,   240,    -1,    -1,    71,   414,
1131 <     242,   419,   241,   240,    -1,    -1,   165,   416,   243,   417,
1132 <     240,    -1,   417,   244,   418,    -1,   418,    -1,   135,    -1,
1133 <     419,   420,    -1,   420,    -1,   421,    -1,   422,    -1,   415,
1134 <      -1,     1,    -1,   226,   243,   130,   240,    -1,   132,   243,
1135 <     130,   240,    -1,    -1,    29,   424,   242,   425,   241,   240,
1136 <      -1,   425,   426,    -1,   426,    -1,   427,    -1,   428,    -1,
1137 <       1,    -1,    70,   243,   130,   240,    -1,   132,   243,   130,
1138 <     240,    -1,    44,   242,   430,   241,   240,    -1,   430,   431,
1139 <      -1,   431,    -1,   432,    -1,     1,    -1,    70,   243,   130,
1140 <     240,    -1,    -1,    48,   434,   242,   439,   241,   240,    -1,
1141 <      -1,   165,   436,   243,   437,   240,    -1,   437,   244,   438,
1142 <      -1,   438,    -1,   135,    -1,   439,   440,    -1,   440,    -1,
1143 <     441,    -1,   442,    -1,   435,    -1,     1,    -1,    99,   243,
1144 <     130,   240,    -1,   132,   243,   130,   240,    -1,    49,   242,
1145 <     444,   241,   240,    -1,   444,   445,    -1,   445,    -1,   453,
1146 <      -1,   454,    -1,   456,    -1,   457,    -1,   458,    -1,   459,
1147 <      -1,   460,    -1,   461,    -1,   462,    -1,   463,    -1,   452,
1148 <      -1,   465,    -1,   466,    -1,   467,    -1,   468,    -1,   483,
1149 <      -1,   470,    -1,   472,    -1,   474,    -1,   473,    -1,   477,
1150 <      -1,   471,    -1,   478,    -1,   479,    -1,   480,    -1,   481,
1151 <      -1,   482,    -1,   495,    -1,   484,    -1,   485,    -1,   486,
1152 <      -1,   491,    -1,   475,    -1,   476,    -1,   501,    -1,   499,
1153 <      -1,   500,    -1,   455,    -1,   502,    -1,   490,    -1,   464,
1154 <      -1,   488,    -1,   489,    -1,   451,    -1,   447,    -1,   448,
1155 <      -1,   449,    -1,   450,    -1,   469,    -1,   446,    -1,   487,
1156 <      -1,     1,    -1,    93,   243,   109,   240,    -1,    54,   243,
1157 <     109,   240,    -1,    55,   243,   109,   240,    -1,   232,   243,
1158 <     175,   240,    -1,   137,   243,   249,   240,    -1,   162,   243,
1159 <     175,   240,    -1,    72,   243,   249,   240,    -1,    64,   243,
1160 <     175,   240,    -1,    68,   243,   175,   240,    -1,    36,   243,
1161 <     175,   240,    -1,    45,   243,   175,   240,    -1,     8,   243,
1162 <     175,   240,    -1,    90,   243,   249,   240,    -1,    89,   243,
1163 <     109,   240,    -1,    83,   243,   109,   240,    -1,     9,   243,
1164 <     249,   240,    -1,   179,   243,   249,   240,    -1,   178,   243,
1165 <     249,   240,    -1,    59,   243,   109,   240,    -1,    76,   243,
1166 <     175,   240,    -1,    75,   243,   130,   240,    -1,    69,   243,
1167 <     175,   240,    -1,   237,   243,   175,   240,    -1,   170,   243,
1168 <     175,   240,    -1,   173,   243,   175,   240,    -1,   174,   243,
1169 <     175,   240,    -1,   172,   243,   175,   240,    -1,   172,   243,
1170 <     176,   240,    -1,   171,   243,   175,   240,    -1,   171,   243,
1171 <     176,   240,    -1,   122,   243,   249,   240,    -1,    18,   243,
1172 <     249,   240,    -1,   115,   243,   175,   240,    -1,   123,   243,
1173 <     249,   240,    -1,   166,   243,   175,   240,    -1,   107,   243,
1174 <     175,   240,    -1,   221,   243,   175,   240,    -1,   117,   243,
1175 <     175,   240,    -1,    94,   243,   130,   240,    -1,    37,   243,
1176 <     109,   240,    -1,    92,   243,   109,   240,    -1,   227,   243,
1177 <     175,   240,    -1,    39,   243,   130,   240,    -1,   218,   243,
1178 <     130,   240,    -1,   126,   243,   175,   240,    -1,    32,   243,
1179 <     175,   240,    -1,   219,   243,   249,   240,    -1,    -1,   119,
1180 <     492,   243,   493,   240,    -1,   493,   244,   494,    -1,   494,
1181 <      -1,   182,    -1,   185,    -1,   186,    -1,   189,    -1,   190,
1182 <      -1,   194,    -1,    60,    -1,   205,    -1,   200,    -1,   202,
1183 <      -1,   209,    -1,   206,    -1,   193,    -1,   201,    -1,   204,
1184 <      -1,   195,    -1,   215,    -1,   183,    -1,   184,    -1,   198,
1185 <      -1,    -1,   116,   496,   243,   497,   240,    -1,   497,   244,
1186 <     498,    -1,   498,    -1,   182,    -1,   185,    -1,   186,    -1,
1187 <     189,    -1,   190,    -1,   194,    -1,   205,    -1,    60,    -1,
1188 <     200,    -1,   202,    -1,   209,    -1,   206,    -1,   193,    -1,
1189 <     201,    -1,   204,    -1,   195,    -1,   215,    -1,   183,    -1,
1190 <     184,    -1,   198,    -1,    95,   243,   109,   240,    -1,    96,
1191 <     243,   109,   240,    -1,    26,   243,   109,   240,    -1,   188,
1192 <     243,   251,   240,    -1,    -1,    51,   504,   242,   505,   241,
1193 <     240,    -1,   505,   506,    -1,   506,    -1,   507,    -1,   508,
1194 <      -1,   509,    -1,   513,    -1,   514,    -1,   515,    -1,     1,
1195 <      -1,    41,   243,   175,   240,    -1,    38,   243,   249,   240,
1196 <      -1,    -1,    82,   510,   243,   511,   240,    -1,   511,   244,
1197 <     512,    -1,   512,    -1,   177,    -1,    11,    -1,   226,   243,
1198 <     130,   240,    -1,    99,   243,   130,   240,    -1,    -1,     4,
1199 <     516,   243,   517,   240,    -1,   517,   244,   518,    -1,   518,
1200 <      -1,   177,    -1,    11,    -1,    20,   242,   520,   241,   240,
1201 <      -1,   520,   521,    -1,   521,    -1,   524,    -1,   525,    -1,
1202 <     526,    -1,   527,    -1,   532,    -1,   528,    -1,   529,    -1,
1203 <     530,    -1,   531,    -1,   533,    -1,   534,    -1,   535,    -1,
1204 <     523,    -1,   536,    -1,   537,    -1,   538,    -1,   522,    -1,
1205 <       1,    -1,    33,   243,   175,   240,    -1,   140,   243,   175,
1206 <     240,    -1,    35,   243,   175,   240,    -1,   228,   243,   175,
1207 <     240,    -1,   229,   243,   175,   240,    -1,   230,   243,   175,
1249 <     240,    -1,    77,   243,   249,   240,    -1,    78,   243,   249,
1250 <     240,    -1,    85,   243,   109,   240,    -1,   131,   243,   175,
1251 <     240,    -1,    84,   243,   109,   240,    -1,    28,   243,   109,
1252 <     240,    -1,    27,   243,   109,   240,    -1,   105,   243,   175,
1253 <     240,    -1,   106,   243,   175,   240,    -1,   120,   243,   109,
1254 <     240,    -1,   121,   243,   249,   240,    -1,   159,   242,   540,
1255 <     241,   240,    -1,   540,   541,    -1,   541,    -1,   542,    -1,
1256 <     543,    -1,   545,    -1,   547,    -1,   546,    -1,   544,    -1,
1257 <     548,    -1,     1,    -1,    47,   243,   175,   240,    -1,    63,
1258 <     243,   175,   240,    -1,    61,   243,   130,   240,    -1,    80,
1259 <     243,   249,   240,    -1,    60,   243,   175,   240,    -1,    34,
1260 <     243,   175,   240,    -1,    62,   243,   175,   240,    -1
1017 >     220,     0,    -1,    -1,   220,   221,    -1,   253,    -1,   259,
1018 >      -1,   273,    -1,   475,    -1,   291,    -1,   308,    -1,   322,
1019 >      -1,   231,    -1,   492,    -1,   337,    -1,   344,    -1,   348,
1020 >      -1,   358,    -1,   367,    -1,   387,    -1,   397,    -1,   403,
1021 >      -1,   417,    -1,   407,    -1,   226,    -1,     1,   214,    -1,
1022 >       1,   215,    -1,    -1,   223,    -1,    99,   222,    -1,    99,
1023 >     137,   222,    -1,    99,   138,   222,    -1,    99,   139,   222,
1024 >      -1,    99,   140,   222,    -1,    99,   141,   222,    -1,    -1,
1025 >     225,    -1,    99,   224,    -1,    99,     9,   224,    -1,    99,
1026 >      10,   224,    -1,    99,    11,   224,    -1,    88,   216,   227,
1027 >     215,   214,    -1,   227,   228,    -1,   228,    -1,   229,    -1,
1028 >     230,    -1,     1,   214,    -1,    87,   217,   117,   214,    -1,
1029 >     113,   217,   117,   214,    -1,   145,   216,   232,   215,   214,
1030 >      -1,   232,   233,    -1,   233,    -1,   244,    -1,   249,    -1,
1031 >     252,    -1,   246,    -1,   247,    -1,   248,    -1,   251,    -1,
1032 >     242,    -1,   241,    -1,   250,    -1,   245,    -1,   240,    -1,
1033 >     234,    -1,   235,    -1,   243,    -1,     1,   214,    -1,   131,
1034 >     217,   236,   214,    -1,   132,   217,   238,   214,    -1,   236,
1035 >     218,   237,    -1,   237,    -1,   133,    -1,   134,    -1,   238,
1036 >     218,   239,    -1,   239,    -1,   133,    -1,   134,    -1,   129,
1037 >     217,   117,   214,    -1,   127,   217,   117,   214,    -1,   130,
1038 >     217,   117,   214,    -1,   170,   217,   117,   214,    -1,    89,
1039 >     217,   117,   214,    -1,   146,   217,   117,   214,    -1,    24,
1040 >     217,   117,   214,    -1,    92,   217,   117,   214,    -1,    91,
1041 >     217,   117,   214,    -1,   208,   217,   117,   214,    -1,   209,
1042 >     217,   117,   214,    -1,   180,   217,    99,   214,    -1,    57,
1043 >     217,   159,   214,    -1,     4,   216,   254,   215,   214,    -1,
1044 >     254,   255,    -1,   255,    -1,   256,    -1,   258,    -1,   257,
1045 >      -1,     1,   214,    -1,    89,   217,   117,   214,    -1,    31,
1046 >     217,   117,   214,    -1,    24,   217,   117,   214,    -1,    71,
1047 >     216,   260,   215,   214,    -1,   260,   261,    -1,   261,    -1,
1048 >     262,    -1,   263,    -1,     1,   214,    -1,   207,   217,   159,
1049 >     214,    -1,    -1,   264,   213,   216,   265,   215,   214,    -1,
1050 >     265,   266,    -1,   266,    -1,   267,    -1,   269,    -1,   268,
1051 >      -1,     1,   214,    -1,    89,   217,   117,   214,    -1,   212,
1052 >     217,   225,   214,    -1,   212,   217,   194,   214,    -1,    -1,
1053 >     150,   270,   217,   271,   214,    -1,   271,   218,   272,    -1,
1054 >     272,    -1,   205,    -1,   102,    -1,    40,    -1,   173,    -1,
1055 >      64,    -1,    62,    -1,   172,    -1,    -1,   102,   274,   216,
1056 >     275,   215,   214,    -1,   275,   276,    -1,   276,    -1,   277,
1057 >      -1,   278,    -1,   279,    -1,   283,    -1,   282,    -1,   280,
1058 >      -1,   281,    -1,   287,    -1,     1,   214,    -1,    89,   217,
1059 >     117,   214,    -1,   205,   217,   117,   214,    -1,   112,   217,
1060 >     117,   214,    -1,    32,   217,   159,   214,    -1,   128,   217,
1061 >     117,   214,    -1,    17,   217,   117,   214,    -1,    -1,   191,
1062 >     284,   217,   285,   214,    -1,   285,   218,   286,    -1,   286,
1063 >      -1,   165,    -1,   168,    -1,   169,    -1,   171,    -1,   172,
1064 >      -1,   175,    -1,    51,    -1,   188,    -1,   181,    -1,   184,
1065 >      -1,   192,    -1,   189,    -1,   174,    -1,   182,    -1,   186,
1066 >      -1,   176,    -1,   198,    -1,   166,    -1,   167,    -1,   179,
1067 >      -1,    -1,    36,   288,   217,   289,   214,    -1,   289,   218,
1068 >     290,    -1,   290,    -1,    47,    -1,   124,    -1,    64,    -1,
1069 >     204,    -1,   173,    -1,   193,    -1,   210,    -1,    40,    -1,
1070 >      25,    -1,   199,    -1,   123,    -1,     4,    -1,    94,    -1,
1071 >     182,    -1,   197,    -1,   106,    -1,   125,    -1,   187,    -1,
1072 >      87,    -1,    -1,    17,   292,   216,   293,   215,   214,    -1,
1073 >     293,   294,    -1,   294,    -1,   295,    -1,   305,    -1,   306,
1074 >      -1,   296,    -1,   307,    -1,   297,    -1,   298,    -1,   299,
1075 >      -1,   300,    -1,   301,    -1,   302,    -1,   303,    -1,   304,
1076 >      -1,     1,   214,    -1,    89,   217,   117,   214,    -1,   115,
1077 >     217,   223,   214,    -1,   101,   217,    99,   214,    -1,    19,
1078 >     217,   223,   214,    -1,    81,   217,    99,   214,    -1,    76,
1079 >     217,    99,   214,    -1,    78,   217,    99,   214,    -1,    77,
1080 >     217,    99,   214,    -1,   142,   217,   225,   214,    -1,   183,
1081 >     217,   225,   214,    -1,    15,   217,    99,   214,    -1,    16,
1082 >     217,    99,   214,    -1,   100,   217,    99,   214,    -1,    -1,
1083 >      70,   309,   216,   314,   215,   214,    -1,    -1,    36,   311,
1084 >     217,   312,   214,    -1,   312,   218,   313,    -1,   313,    -1,
1085 >     190,    -1,    51,    -1,   185,    -1,   314,   315,    -1,   315,
1086 >      -1,   316,    -1,   310,    -1,   320,    -1,   321,    -1,     1,
1087 >     214,    -1,    -1,   116,   217,   318,   317,   214,    -1,   318,
1088 >     218,   319,    -1,   319,    -1,    99,    -1,    99,   163,    99,
1089 >      -1,    61,   217,   117,   214,    -1,    56,   217,   117,   214,
1090 >      -1,    -1,    48,   323,   216,   324,   215,   214,    -1,   324,
1091 >     325,    -1,   325,    -1,   326,    -1,   327,    -1,   328,    -1,
1092 >     330,    -1,   334,    -1,   335,    -1,   336,    -1,   329,    -1,
1093 >       1,   214,    -1,   205,   217,   117,   214,    -1,   112,   217,
1094 >     117,   214,    -1,    17,   217,   117,   214,    -1,    32,   217,
1095 >     159,   214,    -1,    -1,    36,   331,   217,   332,   214,    -1,
1096 >     332,   218,   333,    -1,   333,    -1,   153,    -1,    33,    -1,
1097 >      65,    -1,    49,    -1,    13,    -1,    98,    -1,    43,    -1,
1098 >     136,    -1,    90,    -1,   152,   217,   117,   214,    -1,   121,
1099 >     217,   117,   214,    -1,   120,   217,    99,   214,    -1,    -1,
1100 >     135,   338,   216,   339,   215,   214,    -1,   339,   340,    -1,
1101 >     340,    -1,   341,    -1,   342,    -1,   343,    -1,     1,   214,
1102 >      -1,   119,   217,   117,   214,    -1,    14,   217,   117,   214,
1103 >      -1,    93,   217,   117,   214,    -1,   200,   216,   345,   215,
1104 >     214,    -1,   345,   346,    -1,   346,    -1,   347,    -1,     1,
1105 >      -1,    89,   217,   117,   214,    -1,    -1,   148,   349,   216,
1106 >     350,   215,   214,    -1,   350,   351,    -1,   351,    -1,   352,
1107 >      -1,   353,    -1,   354,    -1,     1,   214,    -1,    89,   217,
1108 >     117,   214,    -1,   205,   217,   117,   214,    -1,    -1,   150,
1109 >     355,   217,   356,   214,    -1,   356,   218,   357,    -1,   357,
1110 >      -1,    64,    -1,   204,    -1,   173,    -1,   193,    -1,   210,
1111 >      -1,   196,    -1,   135,    -1,   195,    -1,   179,    -1,   164,
1112 >      -1,    -1,   149,   359,   216,   360,   215,   214,    -1,   360,
1113 >     361,    -1,   361,    -1,   362,    -1,   363,    -1,     1,   214,
1114 >      -1,    89,   217,   117,   214,    -1,    -1,   150,   364,   217,
1115 >     365,   214,    -1,   365,   218,   366,    -1,   366,    -1,    64,
1116 >      -1,   204,    -1,   173,    -1,   193,    -1,   210,    -1,   196,
1117 >      -1,   135,    -1,   195,    -1,   179,    -1,   164,    -1,    -1,
1118 >      18,   368,   216,   369,   215,   214,    -1,   369,   370,    -1,
1119 >     370,    -1,   371,    -1,   372,    -1,   373,    -1,   374,    -1,
1120 >     375,    -1,   377,    -1,   376,    -1,   386,    -1,   378,    -1,
1121 >     383,    -1,   384,    -1,   385,    -1,   382,    -1,     1,   214,
1122 >      -1,    89,   217,   117,   214,    -1,    56,   217,   117,   214,
1123 >      -1,   208,   217,   117,   214,    -1,   143,   217,   117,   214,
1124 >      -1,     3,   217,   117,   214,    -1,   116,   217,    99,   214,
1125 >      -1,     5,   217,   177,   214,    -1,     5,   217,   178,   214,
1126 >      -1,    -1,    36,   379,   217,   380,   214,    -1,   380,   218,
1127 >     381,    -1,   381,    -1,     8,    -1,   190,    -1,    32,   217,
1128 >     159,   214,    -1,    58,   217,   117,   214,    -1,    68,   217,
1129 >     117,   214,    -1,    17,   217,   117,   214,    -1,   170,   217,
1130 >     117,   214,    -1,    -1,    62,   388,   216,   393,   215,   214,
1131 >      -1,    -1,   150,   390,   217,   391,   214,    -1,   391,   218,
1132 >     392,    -1,   392,    -1,   122,    -1,   393,   394,    -1,   394,
1133 >      -1,   395,    -1,   396,    -1,   389,    -1,     1,    -1,   205,
1134 >     217,   117,   214,    -1,   119,   217,   117,   214,    -1,    -1,
1135 >      23,   398,   216,   399,   215,   214,    -1,   399,   400,    -1,
1136 >     400,    -1,   401,    -1,   402,    -1,     1,    -1,    61,   217,
1137 >     117,   214,    -1,   119,   217,   117,   214,    -1,    34,   216,
1138 >     404,   215,   214,    -1,   404,   405,    -1,   405,    -1,   406,
1139 >      -1,     1,    -1,    61,   217,   117,   214,    -1,    -1,    38,
1140 >     408,   216,   413,   215,   214,    -1,    -1,   150,   410,   217,
1141 >     411,   214,    -1,   411,   218,   412,    -1,   412,    -1,   122,
1142 >      -1,   413,   414,    -1,   414,    -1,   415,    -1,   416,    -1,
1143 >     409,    -1,     1,    -1,    89,   217,   117,   214,    -1,   119,
1144 >     217,   117,   214,    -1,    39,   216,   418,   215,   214,    -1,
1145 >     418,   419,    -1,   419,    -1,   428,    -1,   429,    -1,   431,
1146 >      -1,   432,    -1,   433,    -1,   434,    -1,   435,    -1,   436,
1147 >      -1,   437,    -1,   438,    -1,   427,    -1,   440,    -1,   441,
1148 >      -1,   456,    -1,   443,    -1,   445,    -1,   447,    -1,   446,
1149 >      -1,   450,    -1,   444,    -1,   451,    -1,   452,    -1,   453,
1150 >      -1,   454,    -1,   455,    -1,   468,    -1,   457,    -1,   458,
1151 >      -1,   459,    -1,   464,    -1,   448,    -1,   449,    -1,   474,
1152 >      -1,   472,    -1,   473,    -1,   430,    -1,   463,    -1,   439,
1153 >      -1,   461,    -1,   462,    -1,   426,    -1,   421,    -1,   422,
1154 >      -1,   423,    -1,   424,    -1,   425,    -1,   442,    -1,   420,
1155 >      -1,   460,    -1,     1,    -1,    83,   217,    99,   214,    -1,
1156 >      42,   217,   159,   214,    -1,    41,   217,   223,   214,    -1,
1157 >      44,   217,   223,   214,    -1,    45,   217,    99,   214,    -1,
1158 >      46,   217,    99,   214,    -1,   147,   217,   159,   214,    -1,
1159 >      63,   217,   223,   214,    -1,    55,   217,   159,   214,    -1,
1160 >      59,   217,   159,   214,    -1,    28,   217,   159,   214,    -1,
1161 >      35,   217,   159,   214,    -1,     6,   217,   159,   214,    -1,
1162 >      80,   217,   223,   214,    -1,    79,   217,    99,   214,    -1,
1163 >      72,   217,    99,   214,    -1,     7,   217,   223,   214,    -1,
1164 >     162,   217,   223,   214,    -1,   161,   217,   223,   214,    -1,
1165 >      50,   217,    99,   214,    -1,    60,   217,   159,   214,    -1,
1166 >     211,   217,   159,   214,    -1,   154,   217,   159,   214,    -1,
1167 >     157,   217,   159,   214,    -1,   158,   217,   159,   214,    -1,
1168 >     156,   217,   159,   214,    -1,   156,   217,   160,   214,    -1,
1169 >     155,   217,   159,   214,    -1,   155,   217,   160,   214,    -1,
1170 >     110,   217,   223,   214,    -1,    12,   217,   223,   214,    -1,
1171 >     103,   217,   159,   214,    -1,   111,   217,   223,   214,    -1,
1172 >     151,   217,   159,   214,    -1,    97,   217,   159,   214,    -1,
1173 >     203,   217,   159,   214,    -1,   105,   217,   159,   214,    -1,
1174 >      84,   217,   117,   214,    -1,    29,   217,    99,   214,    -1,
1175 >      82,   217,    99,   214,    -1,   206,   217,   159,   214,    -1,
1176 >      30,   217,   117,   214,    -1,   201,   217,   117,   214,    -1,
1177 >     114,   217,   159,   214,    -1,    26,   217,   159,   214,    -1,
1178 >     202,   217,   223,   214,    -1,    -1,   107,   465,   217,   466,
1179 >     214,    -1,   466,   218,   467,    -1,   467,    -1,   165,    -1,
1180 >     168,    -1,   169,    -1,   171,    -1,   172,    -1,   175,    -1,
1181 >      51,    -1,   188,    -1,   181,    -1,   184,    -1,   192,    -1,
1182 >     189,    -1,   174,    -1,   182,    -1,   186,    -1,   176,    -1,
1183 >     198,    -1,   166,    -1,   167,    -1,   179,    -1,    -1,   104,
1184 >     469,   217,   470,   214,    -1,   470,   218,   471,    -1,   471,
1185 >      -1,   165,    -1,   168,    -1,   169,    -1,   171,    -1,   172,
1186 >      -1,   175,    -1,   188,    -1,    51,    -1,   181,    -1,   184,
1187 >      -1,   192,    -1,   189,    -1,   174,    -1,   182,    -1,   186,
1188 >      -1,   176,    -1,   198,    -1,   166,    -1,   167,    -1,   179,
1189 >      -1,    85,   217,    99,   214,    -1,    86,   217,    99,   214,
1190 >      -1,    20,   217,    99,   214,    -1,    14,   216,   476,   215,
1191 >     214,    -1,   476,   477,    -1,   477,    -1,   485,    -1,   480,
1192 >      -1,   481,    -1,   482,    -1,   483,    -1,   484,    -1,   486,
1193 >      -1,   487,    -1,   488,    -1,   479,    -1,   489,    -1,   490,
1194 >      -1,   491,    -1,   478,    -1,     1,    -1,    27,   217,   159,
1195 >     214,    -1,   126,   217,   159,   214,    -1,    66,   217,   223,
1196 >     214,    -1,    67,   217,   223,   214,    -1,    75,   217,    99,
1197 >     214,    -1,    74,   217,    99,   214,    -1,   118,   217,   159,
1198 >     214,    -1,    73,   217,    99,   214,    -1,    22,   217,    99,
1199 >     214,    -1,    21,   217,    99,   214,    -1,    95,   217,   159,
1200 >     214,    -1,    96,   217,   159,   214,    -1,   108,   217,    99,
1201 >     214,    -1,   109,   217,   223,   214,    -1,   144,   216,   493,
1202 >     215,   214,    -1,   493,   494,    -1,   494,    -1,   495,    -1,
1203 >     496,    -1,   498,    -1,   499,    -1,   497,    -1,   500,    -1,
1204 >       1,    -1,    37,   217,   159,   214,    -1,    54,   217,   159,
1205 >     214,    -1,    52,   217,   117,   214,    -1,    69,   217,   223,
1206 >     214,    -1,    51,   217,   159,   214,    -1,    53,   217,   159,
1207 >     214,    -1
1208   };
1209  
1210   /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
1211   static const yytype_uint16 yyrline[] =
1212   {
1213 <       0,   353,   353,   354,   357,   358,   359,   360,   361,   362,
1214 <     363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
1215 <     373,   374,   375,   376,   377,   378,   379,   383,   383,   384,
1216 <     388,   392,   396,   400,   404,   410,   410,   411,   412,   413,
1217 <     414,   421,   424,   424,   425,   425,   425,   427,   433,   440,
1218 <     442,   442,   443,   443,   444,   444,   445,   445,   446,   446,
1219 <     447,   447,   448,   448,   449,   449,   450,   451,   454,   455,
1220 <     457,   457,   458,   464,   472,   472,   473,   479,   487,   526,
1221 <     585,   613,   621,   636,   651,   660,   674,   683,   711,   741,
1222 <     764,   773,   775,   775,   776,   776,   777,   777,   779,   788,
1223 <     797,   809,   810,   810,   812,   812,   813,   815,   822,   822,
1224 <     832,   833,   835,   835,   836,   836,   838,   843,   846,   852,
1225 <     851,   857,   857,   858,   862,   866,   870,   874,   878,   882,
1226 <     893,   892,   990,   990,   991,   991,   991,   992,   992,   992,
1227 <     993,   993,   993,   995,  1004,  1041,  1053,  1064,  1106,  1116,
1228 <    1115,  1121,  1121,  1122,  1126,  1130,  1134,  1138,  1142,  1146,
1229 <    1150,  1154,  1158,  1162,  1166,  1170,  1174,  1178,  1182,  1186,
1230 <    1190,  1194,  1198,  1205,  1204,  1210,  1210,  1211,  1215,  1219,
1231 <    1223,  1227,  1231,  1235,  1239,  1243,  1247,  1251,  1255,  1259,
1232 <    1263,  1267,  1271,  1275,  1279,  1290,  1289,  1339,  1339,  1340,
1233 <    1341,  1341,  1342,  1343,  1344,  1345,  1346,  1347,  1348,  1349,
1234 <    1350,  1351,  1352,  1354,  1363,  1369,  1375,  1381,  1387,  1393,
1235 <    1399,  1405,  1411,  1417,  1423,  1429,  1439,  1438,  1455,  1454,
1236 <    1459,  1459,  1460,  1464,  1468,  1476,  1476,  1477,  1477,  1477,
1237 <    1477,  1477,  1479,  1479,  1481,  1481,  1483,  1497,  1517,  1526,
1238 <    1539,  1538,  1607,  1607,  1608,  1608,  1608,  1608,  1609,  1609,
1239 <    1609,  1610,  1610,  1612,  1647,  1660,  1669,  1681,  1680,  1684,
1240 <    1684,  1685,  1689,  1693,  1697,  1701,  1705,  1709,  1713,  1717,
1241 <    1724,  1743,  1753,  1767,  1766,  1782,  1782,  1783,  1783,  1783,
1242 <    1783,  1785,  1794,  1809,  1822,  1824,  1824,  1825,  1825,  1827,
1243 <    1843,  1842,  1858,  1858,  1859,  1859,  1859,  1859,  1861,  1870,
1244 <    1893,  1892,  1898,  1898,  1899,  1903,  1907,  1911,  1915,  1919,
1245 <    1923,  1927,  1931,  1935,  1945,  1944,  1961,  1961,  1962,  1962,
1246 <    1962,  1964,  1971,  1970,  1976,  1976,  1977,  1981,  1985,  1989,
1247 <    1993,  1997,  2001,  2005,  2009,  2013,  2023,  2022,  2073,  2073,
1248 <    2074,  2074,  2074,  2075,  2075,  2076,  2076,  2076,  2077,  2077,
1249 <    2077,  2078,  2078,  2079,  2081,  2090,  2099,  2125,  2143,  2161,
1250 <    2167,  2171,  2180,  2179,  2183,  2183,  2184,  2188,  2192,  2196,
1251 <    2202,  2213,  2224,  2235,  2244,  2263,  2262,  2328,  2327,  2331,
1252 <    2331,  2332,  2338,  2338,  2339,  2339,  2339,  2339,  2341,  2360,
1253 <    2370,  2369,  2394,  2394,  2395,  2395,  2395,  2397,  2403,  2412,
1254 <    2414,  2414,  2415,  2415,  2417,  2436,  2435,  2483,  2482,  2486,
1255 <    2486,  2487,  2493,  2493,  2494,  2494,  2494,  2494,  2496,  2502,
1256 <    2511,  2514,  2514,  2515,  2515,  2516,  2516,  2517,  2517,  2518,
1257 <    2518,  2519,  2519,  2520,  2520,  2521,  2521,  2522,  2522,  2523,
1258 <    2523,  2524,  2524,  2525,  2525,  2526,  2526,  2527,  2527,  2528,
1259 <    2529,  2529,  2530,  2530,  2531,  2531,  2532,  2532,  2533,  2533,
1260 <    2534,  2535,  2536,  2536,  2537,  2538,  2539,  2539,  2540,  2540,
1261 <    2541,  2541,  2542,  2542,  2543,  2546,  2551,  2556,  2561,  2566,
1262 <    2571,  2576,  2581,  2586,  2591,  2596,  2601,  2606,  2611,  2616,
1263 <    2621,  2626,  2631,  2637,  2648,  2653,  2662,  2667,  2672,  2677,
1264 <    2682,  2687,  2690,  2695,  2698,  2703,  2708,  2713,  2718,  2723,
1265 <    2728,  2733,  2738,  2743,  2754,  2759,  2764,  2769,  2778,  2787,
1266 <    2792,  2797,  2803,  2802,  2807,  2807,  2808,  2811,  2814,  2817,
1267 <    2820,  2823,  2826,  2829,  2832,  2835,  2838,  2841,  2844,  2847,
1268 <    2850,  2853,  2856,  2859,  2862,  2865,  2871,  2870,  2875,  2875,
1269 <    2876,  2879,  2882,  2885,  2888,  2891,  2894,  2897,  2900,  2903,
1270 <    2906,  2909,  2912,  2915,  2918,  2921,  2924,  2927,  2930,  2933,
1271 <    2938,  2943,  2948,  2953,  2963,  2962,  2986,  2986,  2987,  2988,
1272 <    2989,  2990,  2991,  2992,  2993,  2995,  3001,  3008,  3007,  3012,
1273 <    3012,  3013,  3017,  3023,  3057,  3067,  3066,  3116,  3116,  3117,
1274 <    3121,  3130,  3133,  3133,  3134,  3134,  3135,  3135,  3136,  3136,
1275 <    3137,  3137,  3138,  3138,  3139,  3140,  3140,  3141,  3142,  3142,
1329 <    3143,  3143,  3145,  3150,  3155,  3160,  3165,  3170,  3175,  3180,
1330 <    3185,  3190,  3195,  3200,  3205,  3210,  3215,  3220,  3225,  3233,
1331 <    3236,  3236,  3237,  3237,  3238,  3239,  3240,  3240,  3241,  3242,
1332 <    3244,  3250,  3256,  3265,  3279,  3285,  3291
1213 >       0,   328,   328,   329,   332,   333,   334,   335,   336,   337,
1214 >     338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
1215 >     348,   349,   350,   351,   352,   353,   357,   357,   358,   362,
1216 >     366,   370,   374,   378,   384,   384,   385,   386,   387,   388,
1217 >     395,   398,   398,   399,   399,   399,   401,   407,   414,   416,
1218 >     416,   417,   417,   418,   418,   419,   419,   420,   420,   421,
1219 >     421,   422,   422,   423,   423,   424,   425,   428,   429,   431,
1220 >     431,   432,   438,   446,   446,   447,   453,   461,   500,   559,
1221 >     587,   595,   610,   625,   634,   648,   657,   685,   715,   738,
1222 >     747,   749,   749,   750,   750,   751,   751,   753,   762,   771,
1223 >     783,   784,   784,   786,   786,   787,   789,   796,   796,   806,
1224 >     807,   809,   809,   810,   810,   812,   817,   820,   826,   825,
1225 >     831,   831,   832,   836,   840,   844,   848,   852,   856,   867,
1226 >     866,   958,   958,   959,   959,   959,   960,   960,   960,   961,
1227 >     961,   961,   963,   972,  1009,  1021,  1032,  1074,  1084,  1083,
1228 >    1089,  1089,  1090,  1094,  1098,  1102,  1106,  1110,  1114,  1118,
1229 >    1122,  1126,  1130,  1134,  1138,  1142,  1146,  1150,  1154,  1158,
1230 >    1162,  1166,  1173,  1172,  1178,  1178,  1179,  1183,  1187,  1191,
1231 >    1195,  1199,  1203,  1207,  1211,  1215,  1219,  1223,  1227,  1231,
1232 >    1235,  1239,  1243,  1247,  1251,  1262,  1261,  1307,  1307,  1308,
1233 >    1309,  1309,  1310,  1311,  1312,  1313,  1314,  1315,  1316,  1317,
1234 >    1318,  1318,  1319,  1321,  1330,  1336,  1342,  1348,  1354,  1360,
1235 >    1366,  1372,  1378,  1385,  1391,  1397,  1407,  1406,  1423,  1422,
1236 >    1427,  1427,  1428,  1432,  1436,  1444,  1444,  1445,  1445,  1445,
1237 >    1445,  1445,  1447,  1447,  1449,  1449,  1451,  1465,  1485,  1494,
1238 >    1507,  1506,  1569,  1569,  1570,  1570,  1570,  1570,  1571,  1571,
1239 >    1571,  1572,  1572,  1574,  1609,  1622,  1631,  1643,  1642,  1646,
1240 >    1646,  1647,  1651,  1655,  1659,  1663,  1667,  1671,  1675,  1679,
1241 >    1685,  1704,  1714,  1728,  1727,  1743,  1743,  1744,  1744,  1744,
1242 >    1744,  1746,  1755,  1770,  1783,  1785,  1785,  1786,  1786,  1788,
1243 >    1804,  1803,  1818,  1818,  1819,  1819,  1819,  1819,  1821,  1830,
1244 >    1853,  1852,  1858,  1858,  1859,  1863,  1867,  1871,  1875,  1879,
1245 >    1883,  1887,  1891,  1895,  1905,  1904,  1920,  1920,  1921,  1921,
1246 >    1921,  1923,  1930,  1929,  1935,  1935,  1936,  1940,  1944,  1948,
1247 >    1952,  1956,  1960,  1964,  1968,  1972,  1982,  1981,  2030,  2030,
1248 >    2031,  2031,  2031,  2032,  2032,  2033,  2033,  2033,  2034,  2034,
1249 >    2034,  2035,  2035,  2036,  2038,  2047,  2056,  2082,  2100,  2118,
1250 >    2124,  2128,  2137,  2136,  2140,  2140,  2141,  2145,  2151,  2162,
1251 >    2173,  2184,  2193,  2212,  2211,  2275,  2274,  2278,  2278,  2279,
1252 >    2285,  2285,  2286,  2286,  2286,  2286,  2288,  2307,  2317,  2316,
1253 >    2339,  2339,  2340,  2340,  2340,  2342,  2348,  2357,  2359,  2359,
1254 >    2360,  2360,  2362,  2381,  2380,  2427,  2426,  2430,  2430,  2431,
1255 >    2437,  2437,  2438,  2438,  2438,  2438,  2440,  2446,  2455,  2458,
1256 >    2458,  2459,  2459,  2460,  2460,  2461,  2461,  2462,  2462,  2463,
1257 >    2463,  2464,  2465,  2466,  2466,  2467,  2467,  2468,  2468,  2469,
1258 >    2469,  2470,  2470,  2471,  2471,  2472,  2473,  2473,  2474,  2474,
1259 >    2475,  2475,  2476,  2476,  2477,  2477,  2478,  2479,  2479,  2480,
1260 >    2481,  2482,  2482,  2483,  2483,  2484,  2485,  2486,  2487,  2487,
1261 >    2488,  2491,  2496,  2502,  2508,  2514,  2519,  2524,  2529,  2534,
1262 >    2539,  2544,  2549,  2554,  2559,  2564,  2569,  2574,  2579,  2584,
1263 >    2590,  2601,  2606,  2611,  2616,  2621,  2626,  2629,  2634,  2637,
1264 >    2642,  2647,  2652,  2657,  2662,  2667,  2672,  2677,  2682,  2693,
1265 >    2698,  2703,  2708,  2717,  2726,  2731,  2736,  2742,  2741,  2746,
1266 >    2746,  2747,  2750,  2753,  2756,  2759,  2762,  2765,  2768,  2771,
1267 >    2774,  2777,  2780,  2783,  2786,  2789,  2792,  2795,  2798,  2801,
1268 >    2804,  2810,  2809,  2814,  2814,  2815,  2818,  2821,  2824,  2827,
1269 >    2830,  2833,  2836,  2839,  2842,  2845,  2848,  2851,  2854,  2857,
1270 >    2860,  2863,  2866,  2869,  2872,  2877,  2882,  2887,  2896,  2899,
1271 >    2899,  2900,  2901,  2901,  2902,  2902,  2903,  2903,  2904,  2905,
1272 >    2905,  2906,  2907,  2907,  2908,  2908,  2910,  2915,  2920,  2925,
1273 >    2930,  2935,  2940,  2945,  2950,  2955,  2960,  2965,  2970,  2975,
1274 >    2983,  2986,  2986,  2987,  2987,  2988,  2989,  2989,  2990,  2991,
1275 >    2993,  2999,  3005,  3014,  3028,  3034
1276   };
1277   #endif
1278  
1279 < #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
1279 > #if YYDEBUG || YYERROR_VERBOSE || 0
1280   /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1281     First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
1282   static const char *const yytname[] =
1283   {
1284 <  "$end", "error", "$undefined", "ACCEPT_PASSWORD", "ACTION", "ADMIN",
1285 <  "AFTYPE", "T_ALLOW", "ANTI_NICK_FLOOD", "ANTI_SPAM_EXIT_MESSAGE_TIME",
1286 <  "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BYTES", "KBYTES", "MBYTES",
1344 <  "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1284 >  "$end", "error", "$undefined", "ACCEPT_PASSWORD", "ADMIN", "AFTYPE",
1285 >  "ANTI_NICK_FLOOD", "ANTI_SPAM_EXIT_MESSAGE_TIME", "AUTOCONN", "BYTES",
1286 >  "KBYTES", "MBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1287    "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CLASS", "CONNECT",
1288    "CONNECTFREQ", "DEFAULT_FLOODCOUNT", "DEFAULT_SPLIT_SERVER_COUNT",
1289    "DEFAULT_SPLIT_USER_COUNT", "DENY", "DESCRIPTION", "DIE", "DISABLE_AUTH",
1290 <  "DISABLE_FAKE_CHANNELS", "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS",
1291 <  "DISABLE_REMOTE_COMMANDS", "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH",
1350 <  "EMAIL", "ENABLE", "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT",
1290 >  "DISABLE_FAKE_CHANNELS", "DISABLE_REMOTE_COMMANDS", "DOTS_IN_IDENT",
1291 >  "EGDPOOL_PATH", "EMAIL", "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT",
1292    "FAILED_OPER_NOTICE", "IRCD_FLAGS", "FLATTEN_LINKS", "GECOS", "GENERAL",
1293 <  "GLINE", "GLINES", "GLINE_EXEMPT", "GLINE_TIME", "GLINE_MIN_CIDR",
1294 <  "GLINE_MIN_CIDR6", "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT",
1295 <  "HAVENT_READ_CONF", "HIDDEN", "HIDDEN_NAME", "HIDE_SERVER_IPS",
1296 <  "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK",
1297 <  "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT", "IP", "KILL",
1298 <  "KILL_CHASE_TIME_LIMIT", "KLINE", "KLINE_EXEMPT", "KLINE_REASON",
1299 <  "KLINE_WITH_REASON", "KNOCK_DELAY", "KNOCK_DELAY_CHANNEL", "LEAF_MASK",
1300 <  "LINKS_DELAY", "LISTEN", "T_LOG", "MAX_ACCEPT", "MAX_BANS",
1293 >  "GLINE", "GLINE_DURATION", "GLINE_ENABLE", "GLINE_EXEMPT",
1294 >  "GLINE_REQUEST_DURATION", "GLINE_MIN_CIDR", "GLINE_MIN_CIDR6",
1295 >  "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT", "HAVENT_READ_CONF", "HIDDEN",
1296 >  "HIDDEN_NAME", "HIDE_SERVER_IPS", "HIDE_SERVERS", "HIDE_SPOOF_IPS",
1297 >  "HOST", "HUB", "HUB_MASK", "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT",
1298 >  "IP", "KILL", "KILL_CHASE_TIME_LIMIT", "KLINE", "KLINE_EXEMPT",
1299 >  "KNOCK_DELAY", "KNOCK_DELAY_CHANNEL", "LEAF_MASK", "LINKS_DELAY",
1300 >  "LISTEN", "T_LOG", "MAX_ACCEPT", "MAX_BANS", "MAX_CHANS_PER_OPER",
1301    "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1302    "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER", "MAX_TARGETS",
1303    "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1304    "MIN_NONWILDCARD_SIMPLE", "MODULE", "MODULES", "NAME", "NEED_PASSWORD",
1305    "NETWORK_DESC", "NETWORK_NAME", "NICK", "NICK_CHANGES",
1306    "NO_CREATE_ON_SPLIT", "NO_JOIN_ON_SPLIT", "NO_OPER_FLOOD", "NO_TILDE",
1307 <  "NUMBER", "NUMBER_PER_IDENT", "NUMBER_PER_CIDR", "NUMBER_PER_IP",
1308 <  "NUMBER_PER_IP_GLOBAL", "OPERATOR", "OPERS_BYPASS_CALLERID",
1309 <  "OPER_ONLY_UMODES", "OPER_PASS_RESV", "OPER_SPY_T", "OPER_UMODES",
1310 <  "JOIN_FLOOD_COUNT", "JOIN_FLOOD_TIME", "PACE_WAIT", "PACE_WAIT_SIMPLE",
1311 <  "PASSWORD", "PATH", "PING_COOKIE", "PING_TIME", "PING_WARNING", "PORT",
1312 <  "QSTRING", "QUIET_ON_BAN", "REASON", "REDIRPORT", "REDIRSERV", "REGEX_T",
1313 <  "REHASH", "TREJECT_HOLD_TIME", "REMOTE", "REMOTEBAN",
1314 <  "RESTRICT_CHANNELS", "RESTRICTED", "RSA_PRIVATE_KEY_FILE",
1315 <  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "SSL_DH_PARAM_FILE",
1316 <  "T_SSL_CLIENT_METHOD", "T_SSL_SERVER_METHOD", "T_SSLV3", "T_TLSV1",
1317 <  "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS",
1318 <  "SENDQ", "SEND_PASSWORD", "SERVERHIDE", "SERVERINFO", "IRCD_SID",
1319 <  "TKLINE_EXPIRE_NOTICES", "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD",
1320 <  "SILENT", "SPOOF", "SPOOF_NOTICE", "STATS_E_DISABLED",
1321 <  "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY",
1322 <  "STATS_P_OPER_ONLY", "TBOOL", "TMASKED", "T_REJECT", "TS_MAX_DELTA",
1323 <  "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS", "T_SOFTCALLERID",
1324 <  "T_CALLERID", "T_CCONN", "T_CCONN_FULL", "T_SSL_CIPHER_LIST",
1325 <  "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DLINE", "T_DRONE",
1326 <  "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS",
1327 <  "T_MAX_CLIENTS", "T_NCHANGE", "T_OPERWALL", "T_REJ", "T_SERVER",
1328 <  "T_SERVNOTICE", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES", "T_UNAUTH",
1329 <  "T_UNDLINE", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE", "T_GLOBOPS",
1330 <  "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME", "THROTTLE_TIME",
1331 <  "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE", "TRESV",
1332 <  "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX", "USE_KNOCK",
1333 <  "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6", "XLINE", "WARN",
1334 <  "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'", "'{'", "'='", "','",
1394 <  "$accept", "conf", "conf_item", "timespec_", "timespec", "sizespec_",
1395 <  "sizespec", "modules_entry", "modules_items", "modules_item",
1396 <  "modules_module", "modules_path", "serverinfo_entry", "serverinfo_items",
1307 >  "NUMBER", "NUMBER_PER_CIDR", "NUMBER_PER_IP", "OPERATOR",
1308 >  "OPERS_BYPASS_CALLERID", "OPER_ONLY_UMODES", "OPER_PASS_RESV",
1309 >  "OPER_SPY_T", "OPER_UMODES", "JOIN_FLOOD_COUNT", "JOIN_FLOOD_TIME",
1310 >  "PACE_WAIT", "PACE_WAIT_SIMPLE", "PASSWORD", "PATH", "PING_COOKIE",
1311 >  "PING_TIME", "PORT", "QSTRING", "QUIET_ON_BAN", "REASON", "REDIRPORT",
1312 >  "REDIRSERV", "REGEX_T", "REHASH", "REMOTE", "REMOTEBAN",
1313 >  "RESTRICT_CHANNELS", "RSA_PRIVATE_KEY_FILE", "RSA_PUBLIC_KEY_FILE",
1314 >  "SSL_CERTIFICATE_FILE", "SSL_DH_PARAM_FILE", "T_SSL_CLIENT_METHOD",
1315 >  "T_SSL_SERVER_METHOD", "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT",
1316 >  "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD",
1317 >  "SERVERHIDE", "SERVERINFO", "IRCD_SID", "TKLINE_EXPIRE_NOTICES",
1318 >  "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD", "SPOOF", "SPOOF_NOTICE",
1319 >  "STATS_E_DISABLED", "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY",
1320 >  "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL", "TMASKED",
1321 >  "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS",
1322 >  "T_SOFTCALLERID", "T_CALLERID", "T_CCONN", "T_CCONN_FULL",
1323 >  "T_SSL_CIPHER_LIST", "T_DEAF", "T_DEBUG", "T_DLINE", "T_EXTERNAL",
1324 >  "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS", "T_MAX_CLIENTS",
1325 >  "T_NCHANGE", "T_OPERWALL", "T_RECVQ", "T_REJ", "T_SERVER",
1326 >  "T_SERVNOTICE", "T_SET", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES",
1327 >  "T_UNAUTH", "T_UNDLINE", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE",
1328 >  "T_GLOBOPS", "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME",
1329 >  "THROTTLE_TIME", "TRUE_NO_OPER_FLOOD", "UNKLINE", "USER", "USE_EGD",
1330 >  "USE_LOGGING", "VHOST", "VHOST6", "XLINE", "WARN_NO_NLINE", "T_SIZE",
1331 >  "T_FILE", "';'", "'}'", "'{'", "'='", "','", "$accept", "conf",
1332 >  "conf_item", "timespec_", "timespec", "sizespec_", "sizespec",
1333 >  "modules_entry", "modules_items", "modules_item", "modules_module",
1334 >  "modules_path", "serverinfo_entry", "serverinfo_items",
1335    "serverinfo_item", "serverinfo_ssl_client_method",
1336    "serverinfo_ssl_server_method", "client_method_types",
1337    "client_method_type_item", "server_method_types",
# Line 1413 | Line 1351 | static const char *const yytname[] =
1351    "oper_umodes", "$@4", "oper_umodes_items", "oper_umodes_item",
1352    "oper_flags", "$@5", "oper_flags_items", "oper_flags_item",
1353    "class_entry", "$@6", "class_items", "class_item", "class_name",
1354 <  "class_ping_time", "class_ping_warning", "class_number_per_ip",
1355 <  "class_connectfreq", "class_max_number", "class_max_global",
1356 <  "class_max_local", "class_max_ident", "class_sendq",
1354 >  "class_ping_time", "class_number_per_ip", "class_connectfreq",
1355 >  "class_max_number", "class_max_global", "class_max_local",
1356 >  "class_max_ident", "class_sendq", "class_recvq",
1357    "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1358    "class_number_per_cidr", "listen_entry", "$@7", "listen_flags", "$@8",
1359    "listen_flags_items", "listen_flags_item", "listen_items", "listen_item",
# Line 1443 | Line 1381 | static const char *const yytname[] =
1381    "gecos_flags", "$@23", "gecos_flags_items", "gecos_flags_item",
1382    "gecos_items", "gecos_item", "gecos_name", "gecos_reason",
1383    "general_entry", "general_items", "general_item", "general_max_watch",
1384 <  "general_gline_min_cidr", "general_gline_min_cidr6",
1385 <  "general_use_whois_actually", "general_reject_hold_time",
1386 <  "general_tkline_expire_notices", "general_kill_chase_time_limit",
1387 <  "general_hide_spoof_ips", "general_ignore_bogus_ts",
1388 <  "general_disable_remote_commands", "general_failed_oper_notice",
1389 <  "general_anti_nick_flood", "general_max_nick_time",
1390 <  "general_max_nick_changes", "general_max_accept",
1391 <  "general_anti_spam_exit_message_time", "general_ts_warn_delta",
1392 <  "general_ts_max_delta", "general_havent_read_conf",
1393 <  "general_kline_with_reason", "general_kline_reason",
1394 <  "general_invisible_on_connect", "general_warn_no_nline",
1395 <  "general_stats_e_disabled", "general_stats_o_oper_only",
1396 <  "general_stats_P_oper_only", "general_stats_k_oper_only",
1397 <  "general_stats_i_oper_only", "general_pace_wait",
1398 <  "general_caller_id_wait", "general_opers_bypass_callerid",
1399 <  "general_pace_wait_simple", "general_short_motd",
1400 <  "general_no_oper_flood", "general_true_no_oper_flood",
1401 <  "general_oper_pass_resv", "general_message_locale",
1402 <  "general_dots_in_ident", "general_max_targets", "general_use_egd",
1403 <  "general_egdpool_path", "general_services_name", "general_ping_cookie",
1404 <  "general_disable_auth", "general_throttle_time", "general_oper_umodes",
1405 <  "$@24", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1406 <  "$@25", "umode_items", "umode_item", "general_min_nonwildcard",
1407 <  "general_min_nonwildcard_simple", "general_default_floodcount",
1408 <  "general_client_flood", "gline_entry", "$@26", "gline_items",
1409 <  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@27",
1472 <  "gline_logging_types", "gline_logging_type_item", "gline_user",
1473 <  "gline_server", "gline_action", "$@28", "gdeny_types", "gdeny_type_item",
1474 <  "channel_entry", "channel_items", "channel_item",
1475 <  "channel_disable_fake_channels", "channel_restrict_channels",
1476 <  "channel_disable_local_channels", "channel_use_except",
1477 <  "channel_use_invex", "channel_use_knock", "channel_knock_delay",
1384 >  "general_gline_enable", "general_gline_duration",
1385 >  "general_gline_request_duration", "general_gline_min_cidr",
1386 >  "general_gline_min_cidr6", "general_tkline_expire_notices",
1387 >  "general_kill_chase_time_limit", "general_hide_spoof_ips",
1388 >  "general_ignore_bogus_ts", "general_disable_remote_commands",
1389 >  "general_failed_oper_notice", "general_anti_nick_flood",
1390 >  "general_max_nick_time", "general_max_nick_changes",
1391 >  "general_max_accept", "general_anti_spam_exit_message_time",
1392 >  "general_ts_warn_delta", "general_ts_max_delta",
1393 >  "general_havent_read_conf", "general_invisible_on_connect",
1394 >  "general_warn_no_nline", "general_stats_e_disabled",
1395 >  "general_stats_o_oper_only", "general_stats_P_oper_only",
1396 >  "general_stats_k_oper_only", "general_stats_i_oper_only",
1397 >  "general_pace_wait", "general_caller_id_wait",
1398 >  "general_opers_bypass_callerid", "general_pace_wait_simple",
1399 >  "general_short_motd", "general_no_oper_flood",
1400 >  "general_true_no_oper_flood", "general_oper_pass_resv",
1401 >  "general_message_locale", "general_dots_in_ident", "general_max_targets",
1402 >  "general_use_egd", "general_egdpool_path", "general_services_name",
1403 >  "general_ping_cookie", "general_disable_auth", "general_throttle_time",
1404 >  "general_oper_umodes", "$@24", "umode_oitems", "umode_oitem",
1405 >  "general_oper_only_umodes", "$@25", "umode_items", "umode_item",
1406 >  "general_min_nonwildcard", "general_min_nonwildcard_simple",
1407 >  "general_default_floodcount", "channel_entry", "channel_items",
1408 >  "channel_item", "channel_disable_fake_channels",
1409 >  "channel_restrict_channels", "channel_knock_delay",
1410    "channel_knock_delay_channel", "channel_max_chans_per_user",
1411 <  "channel_quiet_on_ban", "channel_max_bans",
1411 >  "channel_max_chans_per_oper", "channel_quiet_on_ban", "channel_max_bans",
1412    "channel_default_split_user_count", "channel_default_split_server_count",
1413    "channel_no_create_on_split", "channel_no_join_on_split",
1414    "channel_jflood_count", "channel_jflood_time", "serverhide_entry",
1415    "serverhide_items", "serverhide_item", "serverhide_flatten_links",
1416    "serverhide_hide_servers", "serverhide_hidden_name",
1417    "serverhide_links_delay", "serverhide_hidden",
1418 <  "serverhide_disable_hidden", "serverhide_hide_server_ips", 0
1418 >  "serverhide_hide_server_ips", YY_NULL
1419   };
1420   #endif
1421  
# Line 1513 | Line 1445 | static const yytype_uint16 yytoknum[] =
1445       435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
1446       445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
1447       455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
1448 <     465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
1517 <     475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
1518 <     485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
1519 <      59,   125,   123,    61,    44
1448 >     465,   466,   467,   468,    59,   125,   123,    61,    44
1449   };
1450   # endif
1451  
1452   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1453   static const yytype_uint16 yyr1[] =
1454   {
1455 <       0,   245,   246,   246,   247,   247,   247,   247,   247,   247,
1456 <     247,   247,   247,   247,   247,   247,   247,   247,   247,   247,
1457 <     247,   247,   247,   247,   247,   247,   247,   248,   248,   249,
1458 <     249,   249,   249,   249,   249,   250,   250,   251,   251,   251,
1459 <     251,   252,   253,   253,   254,   254,   254,   255,   256,   257,
1460 <     258,   258,   259,   259,   259,   259,   259,   259,   259,   259,
1461 <     259,   259,   259,   259,   259,   259,   259,   259,   260,   261,
1462 <     262,   262,   263,   263,   264,   264,   265,   265,   266,   267,
1463 <     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
1464 <     278,   279,   280,   280,   281,   281,   281,   281,   282,   283,
1465 <     284,   285,   286,   286,   287,   287,   287,   288,   290,   289,
1466 <     291,   291,   292,   292,   292,   292,   293,   294,   294,   296,
1467 <     295,   297,   297,   298,   298,   298,   298,   298,   298,   298,
1468 <     300,   299,   301,   301,   302,   302,   302,   302,   302,   302,
1469 <     302,   302,   302,   303,   304,   305,   306,   307,   308,   310,
1470 <     309,   311,   311,   312,   312,   312,   312,   312,   312,   312,
1471 <     312,   312,   312,   312,   312,   312,   312,   312,   312,   312,
1472 <     312,   312,   312,   314,   313,   315,   315,   316,   316,   316,
1473 <     316,   316,   316,   316,   316,   316,   316,   316,   316,   316,
1474 <     316,   316,   316,   316,   316,   318,   317,   319,   319,   320,
1475 <     320,   320,   320,   320,   320,   320,   320,   320,   320,   320,
1476 <     320,   320,   320,   321,   322,   323,   324,   325,   326,   327,
1477 <     328,   329,   330,   331,   332,   333,   335,   334,   337,   336,
1478 <     338,   338,   339,   339,   339,   340,   340,   341,   341,   341,
1479 <     341,   341,   343,   342,   344,   344,   345,   345,   346,   347,
1480 <     349,   348,   350,   350,   351,   351,   351,   351,   351,   351,
1481 <     351,   351,   351,   352,   353,   354,   355,   357,   356,   358,
1482 <     358,   359,   359,   359,   359,   359,   359,   359,   359,   359,
1483 <     360,   361,   362,   364,   363,   365,   365,   366,   366,   366,
1484 <     366,   367,   368,   369,   370,   371,   371,   372,   372,   373,
1485 <     375,   374,   376,   376,   377,   377,   377,   377,   378,   379,
1486 <     381,   380,   382,   382,   383,   383,   383,   383,   383,   383,
1487 <     383,   383,   383,   383,   385,   384,   386,   386,   387,   387,
1488 <     387,   388,   390,   389,   391,   391,   392,   392,   392,   392,
1489 <     392,   392,   392,   392,   392,   392,   394,   393,   395,   395,
1490 <     396,   396,   396,   396,   396,   396,   396,   396,   396,   396,
1491 <     396,   396,   396,   396,   397,   398,   399,   400,   401,   402,
1492 <     403,   403,   405,   404,   406,   406,   407,   407,   407,   407,
1493 <     408,   409,   410,   411,   412,   414,   413,   416,   415,   417,
1494 <     417,   418,   419,   419,   420,   420,   420,   420,   421,   422,
1495 <     424,   423,   425,   425,   426,   426,   426,   427,   428,   429,
1496 <     430,   430,   431,   431,   432,   434,   433,   436,   435,   437,
1497 <     437,   438,   439,   439,   440,   440,   440,   440,   441,   442,
1498 <     443,   444,   444,   445,   445,   445,   445,   445,   445,   445,
1499 <     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1500 <     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1501 <     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1502 <     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1503 <     445,   445,   445,   445,   445,   446,   447,   448,   449,   450,
1504 <     451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
1505 <     461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
1506 <     471,   472,   472,   473,   473,   474,   475,   476,   477,   478,
1507 <     479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
1508 <     489,   490,   492,   491,   493,   493,   494,   494,   494,   494,
1509 <     494,   494,   494,   494,   494,   494,   494,   494,   494,   494,
1510 <     494,   494,   494,   494,   494,   494,   496,   495,   497,   497,
1511 <     498,   498,   498,   498,   498,   498,   498,   498,   498,   498,
1512 <     498,   498,   498,   498,   498,   498,   498,   498,   498,   498,
1513 <     499,   500,   501,   502,   504,   503,   505,   505,   506,   506,
1514 <     506,   506,   506,   506,   506,   507,   508,   510,   509,   511,
1515 <     511,   512,   512,   513,   514,   516,   515,   517,   517,   518,
1516 <     518,   519,   520,   520,   521,   521,   521,   521,   521,   521,
1517 <     521,   521,   521,   521,   521,   521,   521,   521,   521,   521,
1589 <     521,   521,   522,   523,   524,   525,   526,   527,   528,   529,
1590 <     530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
1591 <     540,   540,   541,   541,   541,   541,   541,   541,   541,   541,
1592 <     542,   543,   544,   545,   546,   547,   548
1455 >       0,   219,   220,   220,   221,   221,   221,   221,   221,   221,
1456 >     221,   221,   221,   221,   221,   221,   221,   221,   221,   221,
1457 >     221,   221,   221,   221,   221,   221,   222,   222,   223,   223,
1458 >     223,   223,   223,   223,   224,   224,   225,   225,   225,   225,
1459 >     226,   227,   227,   228,   228,   228,   229,   230,   231,   232,
1460 >     232,   233,   233,   233,   233,   233,   233,   233,   233,   233,
1461 >     233,   233,   233,   233,   233,   233,   233,   234,   235,   236,
1462 >     236,   237,   237,   238,   238,   239,   239,   240,   241,   242,
1463 >     243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1464 >     253,   254,   254,   255,   255,   255,   255,   256,   257,   258,
1465 >     259,   260,   260,   261,   261,   261,   262,   264,   263,   265,
1466 >     265,   266,   266,   266,   266,   267,   268,   268,   270,   269,
1467 >     271,   271,   272,   272,   272,   272,   272,   272,   272,   274,
1468 >     273,   275,   275,   276,   276,   276,   276,   276,   276,   276,
1469 >     276,   276,   277,   278,   279,   280,   281,   282,   284,   283,
1470 >     285,   285,   286,   286,   286,   286,   286,   286,   286,   286,
1471 >     286,   286,   286,   286,   286,   286,   286,   286,   286,   286,
1472 >     286,   286,   288,   287,   289,   289,   290,   290,   290,   290,
1473 >     290,   290,   290,   290,   290,   290,   290,   290,   290,   290,
1474 >     290,   290,   290,   290,   290,   292,   291,   293,   293,   294,
1475 >     294,   294,   294,   294,   294,   294,   294,   294,   294,   294,
1476 >     294,   294,   294,   295,   296,   297,   298,   299,   300,   301,
1477 >     302,   303,   304,   305,   306,   307,   309,   308,   311,   310,
1478 >     312,   312,   313,   313,   313,   314,   314,   315,   315,   315,
1479 >     315,   315,   317,   316,   318,   318,   319,   319,   320,   321,
1480 >     323,   322,   324,   324,   325,   325,   325,   325,   325,   325,
1481 >     325,   325,   325,   326,   327,   328,   329,   331,   330,   332,
1482 >     332,   333,   333,   333,   333,   333,   333,   333,   333,   333,
1483 >     334,   335,   336,   338,   337,   339,   339,   340,   340,   340,
1484 >     340,   341,   342,   343,   344,   345,   345,   346,   346,   347,
1485 >     349,   348,   350,   350,   351,   351,   351,   351,   352,   353,
1486 >     355,   354,   356,   356,   357,   357,   357,   357,   357,   357,
1487 >     357,   357,   357,   357,   359,   358,   360,   360,   361,   361,
1488 >     361,   362,   364,   363,   365,   365,   366,   366,   366,   366,
1489 >     366,   366,   366,   366,   366,   366,   368,   367,   369,   369,
1490 >     370,   370,   370,   370,   370,   370,   370,   370,   370,   370,
1491 >     370,   370,   370,   370,   371,   372,   373,   374,   375,   376,
1492 >     377,   377,   379,   378,   380,   380,   381,   381,   382,   383,
1493 >     384,   385,   386,   388,   387,   390,   389,   391,   391,   392,
1494 >     393,   393,   394,   394,   394,   394,   395,   396,   398,   397,
1495 >     399,   399,   400,   400,   400,   401,   402,   403,   404,   404,
1496 >     405,   405,   406,   408,   407,   410,   409,   411,   411,   412,
1497 >     413,   413,   414,   414,   414,   414,   415,   416,   417,   418,
1498 >     418,   419,   419,   419,   419,   419,   419,   419,   419,   419,
1499 >     419,   419,   419,   419,   419,   419,   419,   419,   419,   419,
1500 >     419,   419,   419,   419,   419,   419,   419,   419,   419,   419,
1501 >     419,   419,   419,   419,   419,   419,   419,   419,   419,   419,
1502 >     419,   419,   419,   419,   419,   419,   419,   419,   419,   419,
1503 >     419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
1504 >     429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
1505 >     439,   440,   441,   442,   443,   444,   445,   445,   446,   446,
1506 >     447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
1507 >     457,   458,   459,   460,   461,   462,   463,   465,   464,   466,
1508 >     466,   467,   467,   467,   467,   467,   467,   467,   467,   467,
1509 >     467,   467,   467,   467,   467,   467,   467,   467,   467,   467,
1510 >     467,   469,   468,   470,   470,   471,   471,   471,   471,   471,
1511 >     471,   471,   471,   471,   471,   471,   471,   471,   471,   471,
1512 >     471,   471,   471,   471,   471,   472,   473,   474,   475,   476,
1513 >     476,   477,   477,   477,   477,   477,   477,   477,   477,   477,
1514 >     477,   477,   477,   477,   477,   477,   478,   479,   480,   481,
1515 >     482,   483,   484,   485,   486,   487,   488,   489,   490,   491,
1516 >     492,   493,   493,   494,   494,   494,   494,   494,   494,   494,
1517 >     495,   496,   497,   498,   499,   500
1518   };
1519  
1520   /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 1597 | Line 1522 | static const yytype_uint8 yyr2[] =
1522   {
1523         0,     2,     0,     2,     1,     1,     1,     1,     1,     1,
1524         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1525 <       1,     1,     1,     1,     1,     2,     2,     0,     1,     2,
1526 <       3,     3,     3,     3,     3,     0,     1,     2,     3,     3,
1527 <       3,     5,     2,     1,     1,     1,     2,     4,     4,     5,
1528 <       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1529 <       1,     1,     1,     1,     1,     1,     1,     2,     4,     4,
1530 <       3,     1,     1,     1,     3,     1,     1,     1,     4,     4,
1525 >       1,     1,     1,     1,     2,     2,     0,     1,     2,     3,
1526 >       3,     3,     3,     3,     0,     1,     2,     3,     3,     3,
1527 >       5,     2,     1,     1,     1,     2,     4,     4,     5,     2,
1528 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1529 >       1,     1,     1,     1,     1,     1,     2,     4,     4,     3,
1530 >       1,     1,     1,     3,     1,     1,     1,     4,     4,     4,
1531         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1532 <       4,     5,     2,     1,     1,     1,     1,     2,     4,     4,
1533 <       4,     5,     2,     1,     1,     1,     2,     4,     0,     6,
1534 <       2,     1,     1,     1,     1,     2,     4,     4,     4,     0,
1535 <       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1536 <       0,     6,     2,     1,     1,     1,     1,     1,     1,     1,
1537 <       1,     1,     2,     4,     4,     4,     4,     4,     4,     0,
1538 <       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1532 >       5,     2,     1,     1,     1,     1,     2,     4,     4,     4,
1533 >       5,     2,     1,     1,     1,     2,     4,     0,     6,     2,
1534 >       1,     1,     1,     1,     2,     4,     4,     4,     0,     5,
1535 >       3,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1536 >       6,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1537 >       1,     2,     4,     4,     4,     4,     4,     4,     0,     5,
1538 >       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1539         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1540 <       1,     1,     1,     0,     5,     3,     1,     1,     1,     1,
1540 >       1,     1,     0,     5,     3,     1,     1,     1,     1,     1,
1541         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1542         1,     1,     1,     1,     1,     0,     6,     2,     1,     1,
1543         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 1632 | Line 1557 | static const yytype_uint8 yyr2[] =
1557         1,     1,     1,     1,     1,     1,     0,     6,     2,     1,
1558         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1559         1,     1,     1,     2,     4,     4,     4,     4,     4,     4,
1560 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1561 <       4,     4,     4,     4,     4,     0,     6,     0,     5,     3,
1562 <       1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1563 <       0,     6,     2,     1,     1,     1,     1,     4,     4,     5,
1564 <       2,     1,     1,     1,     4,     0,     6,     0,     5,     3,
1565 <       1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1641 <       5,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1560 >       4,     4,     0,     5,     3,     1,     1,     1,     4,     4,
1561 >       4,     4,     4,     0,     6,     0,     5,     3,     1,     1,
1562 >       2,     1,     1,     1,     1,     1,     4,     4,     0,     6,
1563 >       2,     1,     1,     1,     1,     4,     4,     5,     2,     1,
1564 >       1,     1,     4,     0,     6,     0,     5,     3,     1,     1,
1565 >       2,     1,     1,     1,     1,     1,     4,     4,     5,     2,
1566         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1567         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1568         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1569         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1570 <       1,     1,     1,     1,     1,     4,     4,     4,     4,     4,
1571 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1570 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1571 >       1,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1572         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1573         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1574         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1575 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1575 >       4,     4,     4,     4,     4,     4,     4,     0,     5,     3,
1576         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1653       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1577         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1578 +       1,     0,     5,     3,     1,     1,     1,     1,     1,     1,
1579         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1580 <       4,     4,     4,     4,     0,     6,     2,     1,     1,     1,
1657 <       1,     1,     1,     1,     1,     4,     4,     0,     5,     3,
1658 <       1,     1,     1,     4,     4,     0,     5,     3,     1,     1,
1659 <       1,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1580 >       1,     1,     1,     1,     1,     4,     4,     4,     5,     2,
1581         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1582 <       1,     1,     4,     4,     4,     4,     4,     4,     4,     4,
1583 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     5,
1584 <       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1585 <       4,     4,     4,     4,     4,     4,     4
1582 >       1,     1,     1,     1,     1,     1,     4,     4,     4,     4,
1583 >       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1584 >       5,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1585 >       4,     4,     4,     4,     4,     4
1586   };
1587  
1588   /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
# Line 1669 | Line 1590 | static const yytype_uint8 yyr2[] =
1590     means the default is an error.  */
1591   static const yytype_uint16 yydefact[] =
1592   {
1593 <       2,     0,     1,     0,     0,     0,   195,   346,   400,     0,
1594 <     415,     0,   584,   250,   385,   226,     0,     0,   130,   283,
1595 <       0,     0,   300,   324,     0,     3,    24,    11,     4,     5,
1596 <       6,     8,     9,    10,    13,    14,    15,    16,    17,    18,
1597 <      19,    20,    23,    21,    22,     7,    12,    25,    26,     0,
1593 >       2,     0,     1,     0,     0,     0,   195,   346,   398,     0,
1594 >     413,     0,   250,   383,   226,     0,     0,   129,   283,     0,
1595 >       0,   300,   324,     0,     3,    23,    11,     4,     5,     6,
1596 >       8,     9,    10,    13,    14,    15,    16,    17,    18,    19,
1597 >      20,    22,    21,     7,    12,    24,    25,     0,     0,     0,
1598         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1599         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1600 <       0,     0,     0,     0,     0,    93,    94,    96,    95,   631,
1600 >       0,     0,    92,    93,    95,    94,   595,     0,     0,     0,
1601         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1602 <       0,     0,     0,     0,     0,     0,     0,     0,   613,   630,
1603 <     626,   614,   615,   616,   617,   619,   620,   621,   622,   618,
1604 <     623,   624,   625,   627,   628,   629,     0,     0,     0,   413,
1684 <       0,     0,   411,   412,     0,   484,     0,     0,     0,     0,
1602 >       0,     0,   580,   594,   590,   582,   583,   584,   585,   586,
1603 >     581,   587,   588,   589,   591,   592,   593,     0,     0,     0,
1604 >     411,     0,     0,   409,   410,     0,   480,     0,     0,     0,
1605         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1606         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1607 <       0,     0,     0,     0,   556,     0,   532,     0,     0,     0,
1607 >       0,     0,     0,     0,     0,     0,   551,     0,   527,     0,
1608         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1609 <       0,     0,     0,     0,     0,     0,     0,     0,   432,   482,
1610 <     477,   478,   479,   480,   476,   443,   433,   434,   470,   435,
1611 <     436,   437,   438,   439,   440,   441,   442,   473,   444,   445,
1612 <     446,   447,   481,   449,   454,   450,   452,   451,   465,   466,
1613 <     453,   455,   456,   457,   458,   459,   448,   461,   462,   463,
1614 <     483,   474,   475,   472,   464,   460,   468,   469,   467,   471,
1615 <       0,     0,     0,     0,     0,     0,     0,   103,   104,   105,
1616 <       0,     0,     0,     0,     0,    43,    44,    45,     0,     0,
1617 <     659,     0,     0,     0,     0,     0,     0,     0,     0,   651,
1618 <     652,   653,   657,   654,   656,   655,   658,     0,     0,     0,
1609 >       0,     0,     0,     0,     0,     0,     0,   430,   478,   472,
1610 >     473,   474,   475,   476,   471,   441,   431,   432,   466,   433,
1611 >     434,   435,   436,   437,   438,   439,   440,   468,   442,   443,
1612 >     477,   445,   450,   446,   448,   447,   461,   462,   449,   451,
1613 >     452,   453,   454,   455,   444,   457,   458,   459,   479,   469,
1614 >     470,   467,   460,   456,   464,   465,   463,     0,     0,     0,
1615 >       0,     0,     0,   102,   103,   104,     0,     0,     0,     0,
1616 >       0,    42,    43,    44,     0,     0,   619,     0,     0,     0,
1617 >       0,     0,     0,     0,   612,   613,   614,   617,   615,   616,
1618 >     618,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1619 >       0,     0,     0,     0,     0,     0,     0,     0,    50,    63,
1620 >      64,    62,    59,    58,    65,    51,    61,    54,    55,    56,
1621 >      52,    60,    57,    53,     0,     0,   298,     0,     0,   296,
1622 >     297,    96,     0,     0,     0,     0,    91,     0,     0,     0,
1623         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1624 <       0,     0,     0,     0,    51,    64,    65,    63,    60,    59,
1625 <      66,    52,    62,    55,    56,    57,    53,    61,    58,    54,
1626 <       0,     0,   298,     0,     0,   296,   297,    97,     0,     0,
1627 <       0,     0,    92,     0,     0,     0,     0,     0,     0,     0,
1624 >       0,     0,   579,     0,     0,     0,     0,     0,     0,     0,
1625 >       0,     0,     0,     0,     0,     0,     0,     0,   198,   199,
1626 >     202,   204,   205,   206,   207,   208,   209,   210,   211,   200,
1627 >     201,   203,     0,     0,     0,     0,     0,   372,     0,     0,
1628 >       0,     0,     0,     0,     0,     0,     0,   349,   350,   351,
1629 >     352,   353,   354,   356,   355,   358,   362,   359,   360,   361,
1630 >     357,   404,     0,     0,     0,   401,   402,   403,     0,     0,
1631 >     408,   425,     0,     0,   415,   424,     0,   421,   422,   423,
1632         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1705       0,   612,     0,     0,     0,     0,     0,     0,     0,     0,
1706       0,     0,     0,     0,     0,     0,     0,   198,   199,   202,
1707     203,   205,   206,   207,   208,   209,   210,   211,   200,   201,
1708     204,     0,     0,     0,     0,     0,   372,     0,     0,     0,
1709       0,     0,     0,     0,     0,     0,   349,   350,   351,   352,
1710     353,   354,   356,   355,   358,   362,   359,   360,   361,   357,
1711     406,     0,     0,     0,   403,   404,   405,     0,     0,   410,
1712     427,     0,     0,   417,   426,     0,   423,   424,   425,     0,
1633         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1634         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1635         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1636         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1637 +     429,     0,     0,     0,   267,     0,     0,     0,     0,     0,
1638 +       0,   253,   254,   255,   256,   261,   257,   258,   259,   260,
1639 +     395,     0,   385,     0,   394,     0,   391,   392,   393,     0,
1640 +     228,     0,     0,     0,   238,     0,   236,   237,   239,   240,
1641 +     105,     0,     0,   101,     0,    45,     0,     0,     0,    41,
1642 +       0,     0,     0,   172,     0,     0,     0,   148,     0,     0,
1643 +     132,   133,   134,   135,   138,   139,   137,   136,   140,     0,
1644 +       0,     0,     0,     0,   286,   287,   288,   289,     0,     0,
1645 +       0,     0,     0,     0,     0,   611,    66,     0,     0,     0,
1646         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1647 <       0,   431,   594,   605,     0,     0,   597,     0,     0,     0,
1648 <     587,   588,   589,   590,   591,   592,   593,     0,     0,     0,
1649 <     267,     0,     0,     0,     0,     0,     0,   253,   254,   255,
1650 <     256,   261,   257,   258,   259,   260,   397,     0,   387,     0,
1651 <     396,     0,   393,   394,   395,     0,   228,     0,     0,     0,
1723 <     238,     0,   236,   237,   239,   240,   106,     0,     0,   102,
1724 <       0,    46,     0,     0,     0,    42,     0,     0,     0,   173,
1725 <       0,     0,     0,   149,     0,     0,   133,   134,   135,   136,
1726 <     139,   140,   138,   137,   141,     0,     0,     0,     0,     0,
1727 <     286,   287,   288,   289,     0,     0,     0,     0,     0,     0,
1728 <       0,     0,   650,    67,     0,     0,     0,     0,     0,     0,
1729 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1730 <      50,     0,     0,   310,     0,     0,   303,   304,   305,   306,
1731 <       0,     0,   332,     0,   327,   328,   329,     0,     0,   295,
1732 <       0,     0,     0,    91,     0,     0,     0,     0,    27,     0,
1733 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1734 <       0,     0,   611,   212,     0,     0,     0,     0,     0,     0,
1647 >       0,     0,     0,    49,     0,     0,   310,     0,     0,   303,
1648 >     304,   305,   306,     0,     0,   332,     0,   327,   328,   329,
1649 >       0,     0,   295,     0,     0,     0,    90,     0,     0,     0,
1650 >      26,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1651 >       0,     0,   578,   212,     0,     0,     0,     0,     0,     0,
1652         0,     0,     0,     0,     0,     0,     0,     0,   197,   363,
1653         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1654 <       0,     0,     0,     0,   348,     0,     0,     0,   402,     0,
1655 <     409,     0,     0,     0,     0,   422,     0,     0,     0,     0,
1654 >       0,     0,     0,     0,   348,     0,     0,     0,   400,     0,
1655 >     407,     0,     0,     0,     0,   420,     0,     0,     0,     0,
1656         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1657         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1658         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1659         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1660 <       0,     0,    35,     0,     0,     0,     0,     0,     0,     0,
1661 <     430,     0,     0,     0,     0,     0,     0,     0,   586,   262,
1662 <       0,     0,     0,     0,     0,     0,     0,     0,     0,   252,
1663 <       0,     0,     0,     0,   392,   241,     0,     0,     0,     0,
1664 <       0,   235,     0,   101,     0,     0,     0,    41,   142,     0,
1665 <       0,     0,     0,     0,     0,     0,     0,     0,   132,   290,
1666 <       0,     0,     0,     0,   285,     0,     0,     0,     0,     0,
1667 <       0,     0,   649,     0,     0,     0,     0,     0,     0,     0,
1668 <       0,    72,    73,     0,    71,    76,    77,     0,    75,     0,
1669 <       0,     0,     0,     0,    49,   307,     0,     0,     0,     0,
1670 <     302,   330,     0,     0,     0,   326,     0,   294,   100,    99,
1671 <      98,   644,   643,   632,   634,    27,    27,    27,    27,    27,
1755 <      29,    28,   638,   639,   642,   640,   645,   646,   647,   648,
1756 <     641,   633,   635,   636,   637,     0,     0,     0,     0,     0,
1757 <       0,     0,     0,     0,     0,     0,     0,     0,   196,     0,
1660 >       0,     0,     0,     0,     0,     0,     0,   428,   262,     0,
1661 >       0,     0,     0,     0,     0,     0,     0,     0,   252,     0,
1662 >       0,     0,     0,   390,   241,     0,     0,     0,     0,     0,
1663 >     235,     0,   100,     0,     0,     0,    40,   141,     0,     0,
1664 >       0,     0,     0,     0,     0,     0,     0,   131,   290,     0,
1665 >       0,     0,     0,   285,     0,     0,     0,     0,     0,     0,
1666 >     610,     0,     0,     0,     0,     0,     0,     0,     0,    71,
1667 >      72,     0,    70,    75,    76,     0,    74,     0,     0,     0,
1668 >       0,     0,    48,   307,     0,     0,     0,     0,   302,   330,
1669 >       0,     0,     0,   326,     0,   294,    99,    98,    97,   605,
1670 >     604,   596,    26,    26,    26,    26,    26,    28,    27,   598,
1671 >     599,   603,   601,   600,   606,   607,   608,   609,   602,   597,
1672         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1673 <       0,     0,     0,   347,     0,     0,   401,   414,     0,     0,
1674 <       0,   416,   496,   500,   516,   582,   530,   494,   524,   527,
1675 <     495,   486,   487,   503,   492,   493,   506,   491,   505,   504,
1676 <     499,   498,   497,   525,   485,   523,   580,   581,   520,   517,
1677 <     567,   560,   577,   578,   561,   562,   563,   564,   572,   565,
1678 <     575,   579,   568,   573,   569,   574,   566,   571,   570,   576,
1679 <       0,   559,   522,   542,   536,   553,   554,   537,   538,   539,
1680 <     540,   548,   541,   551,   555,   544,   549,   545,   550,   543,
1681 <     547,   546,   552,     0,   535,   515,   518,   529,   489,   490,
1682 <     519,   508,   513,   514,   511,   512,   509,   510,   502,   501,
1683 <      35,    35,    35,    37,    36,   583,   528,   531,   521,   526,
1684 <     488,   507,     0,     0,     0,     0,     0,     0,   585,     0,
1685 <       0,     0,     0,     0,     0,     0,     0,   251,     0,     0,
1686 <       0,   386,     0,     0,     0,   246,   242,   245,   227,   107,
1687 <       0,     0,   119,     0,     0,   111,   112,   114,   113,    47,
1688 <      48,     0,     0,     0,     0,     0,     0,     0,     0,   131,
1689 <       0,     0,     0,   284,   665,   660,   664,   662,   666,   661,
1690 <     663,    84,    90,    82,    86,    85,    79,    78,    80,    68,
1691 <       0,    69,     0,    83,    81,    89,    87,    88,     0,     0,
1692 <       0,   301,     0,     0,   325,   299,    30,    31,    32,    33,
1693 <      34,   223,   224,   217,   219,   221,   220,   218,   213,   225,
1694 <     216,   214,   215,   222,   368,   370,   371,   383,   380,   376,
1695 <     377,   379,   378,     0,   375,   365,   381,   382,   364,   369,
1696 <     367,   384,   366,   407,   408,   428,   429,   421,     0,   420,
1697 <     557,     0,   533,     0,    38,    39,    40,   610,   609,     0,
1698 <     608,   596,   595,   602,   601,     0,   600,   604,   603,   265,
1699 <     266,   275,   272,   277,   274,   273,   279,   276,   278,   271,
1700 <       0,   270,   264,   282,   281,   280,   263,   399,   391,     0,
1701 <     390,   398,   233,   234,   232,     0,   231,   249,   248,     0,
1702 <       0,     0,   115,     0,     0,     0,     0,   110,   148,   146,
1703 <     188,   185,   184,   177,   179,   194,   189,   192,   187,   178,
1704 <     193,   181,   190,   182,   191,   186,   180,   183,     0,   176,
1705 <     143,   145,   147,   159,   153,   170,   171,   154,   155,   156,
1706 <     157,   165,   158,   168,   172,   161,   166,   162,   167,   160,
1707 <     164,   163,   169,     0,   152,   144,   292,   293,   291,    70,
1794 <      74,   308,   314,   320,   323,   316,   322,   317,   321,   319,
1673 >       0,    34,     0,     0,   196,     0,     0,     0,     0,     0,
1674 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   347,
1675 >       0,     0,   399,   412,     0,     0,     0,   414,   493,   497,
1676 >     511,   577,   525,   491,   519,   522,   492,   483,   482,   484,
1677 >     485,   486,   500,   489,   490,   501,   488,   496,   495,   494,
1678 >     520,   481,   518,   575,   576,   515,   512,   562,   555,   572,
1679 >     573,   556,   557,   558,   559,   567,   560,   570,   574,   563,
1680 >     568,   564,   569,   561,   566,   565,   571,     0,   554,   517,
1681 >     537,   531,   548,   549,   532,   533,   534,   535,   543,   536,
1682 >     546,   550,   539,   544,   540,   545,   538,   542,   541,   547,
1683 >       0,   530,   510,   513,   524,   487,   514,   503,   508,   509,
1684 >     506,   507,   504,   505,   499,   498,   523,   526,   516,   521,
1685 >     502,     0,     0,     0,     0,     0,     0,     0,     0,   251,
1686 >       0,     0,     0,   384,     0,     0,     0,   246,   242,   245,
1687 >     227,   106,     0,     0,   118,     0,     0,   110,   111,   113,
1688 >     112,    46,    47,     0,     0,     0,     0,     0,     0,     0,
1689 >       0,   130,     0,     0,     0,   284,   620,   624,   622,   625,
1690 >     621,   623,    83,    89,    81,    85,    84,    78,    77,    79,
1691 >      67,     0,    68,     0,    82,    80,    88,    86,    87,     0,
1692 >       0,     0,   301,     0,     0,   325,   299,    29,    30,    31,
1693 >      32,    33,   223,   224,   216,   218,   220,   219,   217,   213,
1694 >     225,   215,   214,    34,    34,    34,    36,    35,   221,   222,
1695 >     368,   370,   371,   381,   378,   376,   377,     0,   375,   365,
1696 >     379,   380,   364,   369,   367,   382,   366,   405,   406,   426,
1697 >     427,   419,     0,   418,   552,     0,   528,     0,   265,   266,
1698 >     275,   272,   277,   274,   273,   279,   276,   278,   271,     0,
1699 >     270,   264,   282,   281,   280,   263,   397,   389,     0,   388,
1700 >     396,   233,   234,   232,     0,   231,   249,   248,     0,     0,
1701 >       0,   114,     0,     0,     0,     0,   109,   147,   145,   187,
1702 >     184,   183,   176,   178,   194,   188,   191,   186,   177,   192,
1703 >     180,   189,   193,   181,   190,   185,   179,   182,     0,   175,
1704 >     142,   144,   146,   158,   152,   169,   170,   153,   154,   155,
1705 >     156,   164,   157,   167,   171,   160,   165,   161,   166,   159,
1706 >     163,   162,   168,     0,   151,   143,   292,   293,   291,    69,
1707 >      73,   308,   314,   320,   323,   316,   322,   317,   321,   319,
1708       315,   318,     0,   313,   309,   331,   336,   342,   345,   338,
1709 <     344,   339,   343,   341,   337,   340,     0,   335,   373,     0,
1710 <     418,     0,   558,   534,   606,     0,   598,     0,   268,     0,
1711 <     388,     0,   229,     0,   247,   244,   243,     0,     0,     0,
1712 <       0,   109,   174,     0,   150,     0,   311,     0,   333,     0,
1713 <     374,   419,   607,   599,   269,   389,   230,   116,   125,   128,
1714 <     127,   124,   129,   126,   123,     0,   122,   118,   117,   175,
1715 <     151,   312,   334,   120,     0,   121
1709 >     344,   339,   343,   341,   337,   340,     0,   335,    37,    38,
1710 >      39,   373,     0,   416,     0,   553,   529,   268,     0,   386,
1711 >       0,   229,     0,   247,   244,   243,     0,     0,     0,     0,
1712 >     108,   173,     0,   149,     0,   311,     0,   333,     0,   374,
1713 >     417,   269,   387,   230,   115,   124,   127,   126,   123,   128,
1714 >     125,   122,     0,   121,   117,   116,   174,   150,   312,   334,
1715 >     119,     0,   120
1716   };
1717  
1718   /* YYDEFGOTO[NTERM-NUM].  */
1719   static const yytype_int16 yydefgoto[] =
1720   {
1721 <      -1,     1,    25,   830,   831,   973,   974,    26,   244,   245,
1722 <     246,   247,    27,   283,   284,   285,   286,   793,   794,   797,
1723 <     798,   287,   288,   289,   290,   291,   292,   293,   294,   295,
1724 <     296,   297,   298,   299,    28,    74,    75,    76,    77,    78,
1725 <      29,   236,   237,   238,   239,   240,  1014,  1015,  1016,  1017,
1726 <    1018,  1164,  1295,  1296,    30,    63,   535,   536,   537,   538,
1727 <     539,   540,   541,   542,   543,   765,  1213,  1214,   544,   761,
1728 <    1188,  1189,    31,    51,   346,   347,   348,   349,   350,   351,
1729 <     352,   353,   354,   355,   356,   357,   358,   359,   360,    32,
1730 <      60,   510,   746,  1155,  1156,   511,   512,   513,  1161,  1006,
1731 <    1007,   514,   515,    33,    58,   486,   487,   488,   489,   490,
1732 <     491,   492,   732,  1140,  1141,   493,   494,   495,    34,    64,
1733 <     549,   550,   551,   552,   553,    35,   304,   305,   306,    36,
1734 <      67,   585,   586,   587,   588,   589,   807,  1232,  1233,    37,
1735 <      68,   593,   594,   595,   596,   813,  1246,  1247,    38,    52,
1736 <     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1737 <     644,  1093,  1094,   385,   386,   387,   388,   389,    39,    59,
1738 <     500,   741,  1149,  1150,   501,   502,   503,   504,    40,    53,
1739 <     393,   394,   395,   396,    41,   121,   122,   123,    42,    55,
1740 <     404,   663,  1108,  1109,   405,   406,   407,   408,    43,   177,
1741 <     178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
1742 <     188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
1743 <     198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
1744 <     208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
1745 <     218,   219,   220,   221,   222,   223,   224,   439,   953,   954,
1746 <     225,   437,   930,   931,   226,   227,   228,   229,    44,    57,
1747 <     469,   470,   471,   472,   473,   724,  1125,  1126,   474,   475,
1748 <     476,   721,  1119,  1120,    45,    97,    98,    99,   100,   101,
1749 <     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
1837 <     112,   113,   114,   115,    46,   258,   259,   260,   261,   262,
1838 <     263,   264,   265,   266
1721 >      -1,     1,    24,   777,   778,  1016,  1017,    25,   230,   231,
1722 >     232,   233,    26,   267,   268,   269,   270,   741,   742,   745,
1723 >     746,   271,   272,   273,   274,   275,   276,   277,   278,   279,
1724 >     280,   281,   282,   283,    27,    71,    72,    73,    74,    75,
1725 >      28,   222,   223,   224,   225,   226,   946,   947,   948,   949,
1726 >     950,  1083,  1212,  1213,    29,    60,   499,   500,   501,   502,
1727 >     503,   504,   505,   506,   507,   714,  1133,  1134,   508,   710,
1728 >    1108,  1109,    30,    49,   327,   328,   329,   330,   331,   332,
1729 >     333,   334,   335,   336,   337,   338,   339,   340,   341,    31,
1730 >      57,   474,   695,  1074,  1075,   475,   476,   477,  1080,   938,
1731 >     939,   478,   479,    32,    55,   450,   451,   452,   453,   454,
1732 >     455,   456,   681,  1059,  1060,   457,   458,   459,    33,    61,
1733 >     513,   514,   515,   516,   517,    34,   288,   289,   290,    35,
1734 >      64,   548,   549,   550,   551,   552,   755,  1152,  1153,    36,
1735 >      65,   556,   557,   558,   559,   761,  1166,  1167,    37,    50,
1736 >     356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
1737 >     604,  1027,  1028,   366,   367,   368,   369,   370,    38,    56,
1738 >     464,   690,  1068,  1069,   465,   466,   467,   468,    39,    51,
1739 >     374,   375,   376,   377,    40,   112,   113,   114,    41,    53,
1740 >     385,   623,  1042,  1043,   386,   387,   388,   389,    42,   166,
1741 >     167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1742 >     177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1743 >     187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1744 >     197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1745 >     207,   208,   209,   210,   211,   212,   421,   900,   901,   213,
1746 >     419,   877,   878,   214,   215,   216,    43,    91,    92,    93,
1747 >      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
1748 >     104,   105,   106,    44,   243,   244,   245,   246,   247,   248,
1749 >     249,   250
1750   };
1751  
1752   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1753     STATE-NUM.  */
1754 < #define YYPACT_NINF -872
1754 > #define YYPACT_NINF -745
1755   static const yytype_int16 yypact[] =
1756   {
1757 <    -872,   684,  -872,  -194,  -227,  -225,  -872,  -872,  -872,  -207,
1758 <    -872,  -202,  -872,  -872,  -872,  -872,  -190,  -185,  -872,  -872,
1759 <    -182,  -174,  -872,  -872,  -166,  -872,  -872,  -872,  -872,  -872,
1760 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1761 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,    11,
1762 <     596,  -152,  -133,  -131,    10,  -128,   420,  -125,  -122,  -111,
1763 <     -97,     2,    66,   -76,   -61,   339,   379,   -48,   -35,     5,
1764 <    -212,   -25,   -18,    -3,     4,  -872,  -872,  -872,  -872,  -872,
1765 <      29,    40,    57,    63,    72,    82,    90,    92,   108,   113,
1766 <     121,   127,   146,   149,   150,   153,   154,   196,  -872,  -872,
1767 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1768 <    -872,  -872,  -872,  -872,  -872,  -872,   693,   505,    26,  -872,
1769 <     160,    80,  -872,  -872,    54,  -872,   168,   179,   184,   187,
1770 <     190,   192,   193,   197,   200,   201,   205,   206,   207,   208,
1771 <     210,   215,   218,   220,   223,   224,   225,   227,   228,   230,
1772 <     234,   239,   240,   242,  -872,   243,  -872,   247,   254,   255,
1773 <     256,   258,   262,   264,   274,   275,   276,   277,   279,   287,
1774 <     289,   290,   301,   302,   306,   307,   309,   120,  -872,  -872,
1775 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1776 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1777 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1778 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1779 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1780 <     129,   308,    22,    32,   -20,   310,    36,  -872,  -872,  -872,
1781 <      16,   138,   311,   312,    15,  -872,  -872,  -872,   348,   328,
1782 <    -872,   316,   318,   322,   324,   325,   326,   330,     9,  -872,
1783 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,   155,   333,   334,
1784 <     336,   337,   338,   344,   345,   352,   353,   357,   358,   359,
1785 <     360,   362,   364,   221,  -872,  -872,  -872,  -872,  -872,  -872,
1786 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1787 <     172,    35,  -872,   366,    38,  -872,  -872,  -872,   280,   304,
1788 <     374,   199,  -872,   298,   355,   396,   435,   502,   502,   506,
1789 <     507,   439,   442,   509,   502,   444,   445,   446,   450,   451,
1790 <     387,  -872,   388,   389,   390,   393,   397,   399,   400,   401,
1791 <     402,   405,   406,   407,   410,   411,   177,  -872,  -872,  -872,
1792 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1793 <    -872,   416,   415,   417,   419,   421,  -872,   422,   424,   425,
1794 <     427,   432,   436,   443,   447,    19,  -872,  -872,  -872,  -872,
1795 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1796 <    -872,   448,   453,    37,  -872,  -872,  -872,   529,   438,  -872,
1797 <    -872,   456,   457,  -872,  -872,    17,  -872,  -872,  -872,   512,
1798 <     502,   502,   573,   513,   518,   597,   575,   534,   610,   612,
1799 <     613,   548,   550,   551,   502,   600,   556,   628,   630,   502,
1800 <     631,   633,   614,   636,   637,   576,   577,   510,   581,   514,
1801 <     502,   502,   584,   502,   585,   586,   587,   -83,   -53,   588,
1802 <     592,   502,   502,   639,   620,   502,   594,   595,   598,   599,
1803 <     531,  -872,  -872,  -872,   532,   535,  -872,   540,   542,    44,
1804 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,   536,   543,   544,
1805 <    -872,   545,   546,   547,   552,   553,     8,  -872,  -872,  -872,
1806 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,   554,  -872,   557,
1807 <    -872,    28,  -872,  -872,  -872,   537,  -872,   558,   559,   560,
1808 <    -872,    18,  -872,  -872,  -872,  -872,  -872,   616,   566,  -872,
1809 <     565,  -872,   663,   664,   568,  -872,   569,   567,   570,  -872,
1810 <     571,   572,   574,  -872,   579,   261,  -872,  -872,  -872,  -872,
1811 <    -872,  -872,  -872,  -872,  -872,   578,   580,   589,   590,    12,
1812 <    -872,  -872,  -872,  -872,   641,   644,   652,   681,   653,   654,
1813 <     502,   591,  -872,  -872,   682,   655,   705,   706,   707,   708,
1814 <     709,   710,   164,   235,   711,   712,   736,   716,   719,   617,
1815 <    -872,   621,   622,  -872,   623,     6,  -872,  -872,  -872,  -872,
1816 <     632,   625,  -872,    20,  -872,  -872,  -872,   726,   640,  -872,
1817 <     642,   643,   645,  -872,   651,   656,   660,   667,   260,   671,
1818 <     672,   674,   675,   676,   677,   678,   680,   686,   687,   690,
1819 <     691,   695,  -872,  -872,   751,   767,   502,   768,   770,   772,
1820 <     783,   765,   794,   827,   502,   502,   639,   698,  -872,  -872,
1821 <     812,   191,   816,   774,   713,   817,   820,   821,   822,   844,
1822 <     825,   828,   829,   717,  -872,   830,   831,   722,  -872,   723,
1823 <    -872,   834,   835,   724,   728,  -872,   729,   730,   731,   732,
1824 <     733,   734,   735,   737,   738,   740,   741,   742,   743,   744,
1825 <     745,   746,   747,   748,   749,   750,   752,   753,   754,   755,
1826 <     756,   757,   758,   759,   669,   760,   704,   761,   762,   763,
1827 <     764,   766,   769,   771,   773,   775,   776,   777,   778,   779,
1828 <     780,   781,   282,   782,   784,   785,   786,   787,   788,   789,
1829 <    -872,   790,   502,   791,   792,   846,   849,   796,  -872,  -872,
1830 <     861,   832,   795,   875,   899,   880,   882,   884,   797,  -872,
1831 <     893,   798,   900,   799,  -872,  -872,   800,   901,   902,   925,
1832 <     802,  -872,   804,  -872,   167,   805,   806,  -872,  -872,   910,
1833 <     872,   807,   918,   919,   921,   809,   923,   814,  -872,  -872,
1834 <     926,   927,   928,   815,  -872,   819,   823,   824,   826,   833,
1835 <     836,   837,  -872,   838,   839,   840,   841,   842,   843,   845,
1836 <     847,  -872,  -872,  -214,  -872,  -872,  -872,  -191,  -872,   848,
1837 <     850,   851,   852,   853,  -872,  -872,   930,   818,   932,   854,
1838 <    -872,  -872,   935,   855,   856,  -872,   857,  -872,  -872,  -872,
1839 <    -872,  -872,  -872,  -872,  -872,   502,   502,   502,   502,   502,
1840 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1841 <    -872,  -872,  -872,  -872,  -872,   859,   860,   862,   863,   864,
1842 <     865,   866,   867,   868,   869,   870,   871,   873,  -872,   874,
1843 <     876,   877,   878,   879,   152,   881,   883,   885,   886,   887,
1844 <     888,   889,   890,  -872,   891,   892,  -872,  -872,   894,   895,
1845 <     933,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1846 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1847 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1848 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1849 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1850 <    -181,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1851 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1852 <    -872,  -872,  -872,  -178,  -872,  -872,  -872,  -872,  -872,  -872,
1853 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1854 <     639,   639,   639,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1855 <    -872,  -872,     3,   896,   897,    13,   898,   903,  -872,   904,
1856 <     905,   603,   906,   907,   908,   909,   911,  -872,   912,   934,
1857 <     913,  -872,    -2,   914,   915,   940,   916,  -872,  -872,  -872,
1858 <     917,   858,  -872,   920,    73,  -872,  -872,  -872,  -872,  -872,
1859 <    -872,   922,   924,   533,   929,   931,   936,   739,   937,  -872,
1860 <     938,   939,   941,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1861 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1862 <     164,  -872,   235,  -872,  -872,  -872,  -872,  -872,   942,   350,
1863 <     943,  -872,   944,   485,  -872,  -872,  -872,  -872,  -872,  -872,
1864 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1865 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1866 <    -872,  -872,  -872,  -167,  -872,  -872,  -872,  -872,  -872,  -872,
1867 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -165,  -872,
1868 <    -872,   669,  -872,   704,  -872,  -872,  -872,  -872,  -872,  -153,
1869 <    -872,  -872,  -872,  -872,  -872,   -89,  -872,  -872,  -872,  -872,
1870 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1871 <     -36,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,   -23,
1872 <    -872,  -872,  -872,  -872,  -872,   -14,  -872,  -872,  -872,   958,
1873 <     925,   945,  -872,   954,   946,  -105,   947,  -872,  -872,  -872,
1874 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1875 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,    84,  -872,
1876 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1877 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1878 <    -872,  -872,  -872,    86,  -872,  -872,  -872,  -872,  -872,  -872,
1879 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1969 <    -872,  -872,   118,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1970 <    -872,  -872,  -872,  -872,  -872,  -872,   135,  -872,  -872,   152,
1971 <    -872,   933,  -872,  -872,  -872,     3,  -872,    13,  -872,   603,
1972 <    -872,   934,  -872,    -2,  -872,  -872,  -872,   948,   303,   950,
1973 <     951,  -872,  -872,   533,  -872,   739,  -872,   350,  -872,   485,
1974 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1975 <    -872,  -872,  -872,  -872,  -872,   137,  -872,  -872,  -872,  -872,
1976 <    -872,  -872,  -872,  -872,   303,  -872
1757 >    -745,   615,  -745,  -209,  -208,  -192,  -745,  -745,  -745,  -190,
1758 >    -745,  -183,  -745,  -745,  -745,  -169,  -167,  -745,  -745,  -144,
1759 >    -137,  -745,  -745,  -132,  -745,  -745,  -745,  -745,  -745,  -745,
1760 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1761 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,   292,   784,  -111,
1762 >    -102,   -93,    22,   -90,   389,   -80,   -74,   -72,    50,    15,
1763 >     -65,   -60,   299,   388,   -54,   -34,    18,  -176,   -58,   -32,
1764 >     -22,     3,  -745,  -745,  -745,  -745,  -745,   -15,    -9,    26,
1765 >      38,    67,    69,    75,    80,    82,    88,    90,    93,   100,
1766 >     107,   195,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1767 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,   569,   505,    13,
1768 >    -745,   115,    12,  -745,  -745,   258,  -745,   117,   122,   129,
1769 >     131,   140,   141,   144,   145,   146,   154,   155,   156,   159,
1770 >     161,   165,   166,   168,   170,   174,   175,   176,   177,   180,
1771 >     190,   194,   197,   199,   203,   204,  -745,   205,  -745,   206,
1772 >     209,   211,   212,   215,   219,   221,   224,   225,   229,   230,
1773 >     233,   234,   236,   237,   239,   240,    36,  -745,  -745,  -745,
1774 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1775 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1776 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1777 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1778 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,   343,    60,   284,
1779 >    -157,   241,    43,  -745,  -745,  -745,    66,   113,   242,   245,
1780 >      99,  -745,  -745,  -745,   348,    62,  -745,   249,   253,   264,
1781 >     266,   267,   271,    16,  -745,  -745,  -745,  -745,  -745,  -745,
1782 >    -745,   268,   273,   274,   280,   281,   285,   287,   290,   294,
1783 >     295,   296,   297,   306,   307,   308,   309,    74,  -745,  -745,
1784 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1785 >    -745,  -745,  -745,  -745,   220,   277,  -745,   310,    20,  -745,
1786 >    -745,  -745,   252,   370,   384,   302,  -745,   410,   430,   371,
1787 >     432,   432,   433,   434,   436,   379,   390,   453,   432,   395,
1788 >     396,   342,  -745,   345,   349,   350,   352,   354,   355,   357,
1789 >     360,   361,   362,   363,   365,   366,   369,   152,  -745,  -745,
1790 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1791 >    -745,  -745,   346,   372,   381,   385,   386,  -745,   392,   393,
1792 >     397,   400,   401,   405,   407,   408,   270,  -745,  -745,  -745,
1793 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1794 >    -745,  -745,   409,   413,    51,  -745,  -745,  -745,   445,   351,
1795 >    -745,  -745,   414,   417,  -745,  -745,     8,  -745,  -745,  -745,
1796 >     428,   432,   432,   502,   446,   447,   508,   495,   454,   432,
1797 >     461,   432,   528,   536,   537,   480,   485,   493,   432,   556,
1798 >     557,   432,   562,   563,   548,   567,   568,   512,   513,   456,
1799 >     519,   459,   432,   432,   521,   522,   523,   524,    14,    54,
1800 >     530,   532,   432,   432,   570,   432,   533,   535,   538,   474,
1801 >    -745,   481,   479,   483,  -745,   484,   488,   492,   498,   501,
1802 >     128,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1803 >    -745,   503,  -745,   506,  -745,    19,  -745,  -745,  -745,   514,
1804 >    -745,   515,   518,   520,  -745,   116,  -745,  -745,  -745,  -745,
1805 >    -745,   539,   516,  -745,   496,  -745,   602,   612,   526,  -745,
1806 >     527,   531,   534,  -745,   540,   544,   545,  -745,   553,   183,
1807 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,   541,
1808 >     560,   561,   573,    11,  -745,  -745,  -745,  -745,   572,   575,
1809 >     621,   584,   585,   432,   542,  -745,  -745,   629,   586,   630,
1810 >     632,   636,   637,   663,   670,   112,   196,   684,   691,   674,
1811 >     696,   701,   605,  -745,   619,   617,  -745,   622,    59,  -745,
1812 >    -745,  -745,  -745,   627,   626,  -745,   110,  -745,  -745,  -745,
1813 >     719,   633,  -745,   635,   638,   639,  -745,   641,   642,   646,
1814 >     265,   647,   648,   649,   650,   651,   652,   653,   654,   655,
1815 >     657,   658,  -745,  -745,   771,   774,   432,   775,   776,   777,
1816 >     778,   761,   782,   783,   432,   785,   785,   669,  -745,  -745,
1817 >     768,   164,   769,   728,   671,   772,   773,   779,   780,   792,
1818 >     781,   786,   787,   680,  -745,   788,   789,   681,  -745,   685,
1819 >    -745,   790,   791,   683,   687,  -745,   695,   697,   698,   699,
1820 >     700,   702,   703,   704,   705,   706,   707,   708,   709,   710,
1821 >     711,   712,   713,   714,   715,   716,   717,   718,   720,   721,
1822 >     722,   723,   724,   725,   726,   600,   727,   628,   729,   730,
1823 >     731,   732,   733,   734,   735,   736,   737,   738,   739,   740,
1824 >     741,   742,   743,   744,   745,   746,   747,  -745,  -745,   798,
1825 >     803,   748,   816,   843,   846,   847,   849,   753,  -745,   851,
1826 >     752,   853,   757,  -745,  -745,   755,   856,   857,   876,   762,
1827 >    -745,   763,  -745,   187,   764,   765,  -745,  -745,   863,   822,
1828 >     766,   865,   867,   868,   770,   869,   793,  -745,  -745,   871,
1829 >     872,   873,   794,  -745,   795,   796,   797,   799,   800,   801,
1830 >    -745,   802,   804,   805,   806,   807,   808,   809,   810,  -745,
1831 >    -745,  -196,  -745,  -745,  -745,  -179,  -745,   811,   812,   813,
1832 >     814,   815,  -745,  -745,   874,   817,   875,   818,  -745,  -745,
1833 >     877,   819,   821,  -745,   823,  -745,  -745,  -745,  -745,  -745,
1834 >    -745,  -745,   432,   432,   432,   432,   432,  -745,  -745,  -745,
1835 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1836 >     824,   825,   826,   827,   828,   829,   830,   831,   832,   833,
1837 >     834,    79,   835,   836,  -745,   837,   838,   839,   840,   841,
1838 >      -1,   842,   844,   845,   848,   850,   852,   854,   855,  -745,
1839 >     858,   859,  -745,  -745,   860,   861,   878,  -745,  -745,  -745,
1840 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1841 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1842 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1843 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1844 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -178,  -745,  -745,
1845 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1846 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1847 >    -173,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1848 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1849 >    -745,   862,   864,   693,   866,   870,   879,   880,   881,  -745,
1850 >     882,   883,   884,  -745,   -36,   885,   886,   894,   887,  -745,
1851 >    -745,  -745,   888,   889,  -745,   890,    86,  -745,  -745,  -745,
1852 >    -745,  -745,  -745,   895,   896,   517,   897,   898,   899,   656,
1853 >     900,  -745,   901,   902,   903,  -745,  -745,  -745,  -745,  -745,
1854 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1855 >    -745,   112,  -745,   196,  -745,  -745,  -745,  -745,  -745,   904,
1856 >     464,   905,  -745,   906,   529,  -745,  -745,  -745,  -745,  -745,
1857 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1858 >    -745,  -745,  -745,   785,   785,   785,  -745,  -745,  -745,  -745,
1859 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -168,  -745,  -745,
1860 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1861 >    -745,  -745,  -160,  -745,  -745,   600,  -745,   628,  -745,  -745,
1862 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -159,
1863 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,   -57,  -745,
1864 >    -745,  -745,  -745,  -745,   -38,  -745,  -745,  -745,   907,   876,
1865 >     908,  -745,   913,   891,   -88,   909,  -745,  -745,  -745,  -745,
1866 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1867 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,    -7,  -745,
1868 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1869 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1870 >    -745,  -745,  -745,    63,  -745,  -745,  -745,  -745,  -745,  -745,
1871 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1872 >    -745,  -745,    94,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1873 >    -745,  -745,  -745,  -745,  -745,  -745,   101,  -745,  -745,  -745,
1874 >    -745,  -745,    -1,  -745,   878,  -745,  -745,  -745,   693,  -745,
1875 >     883,  -745,   -36,  -745,  -745,  -745,   910,   403,   911,   912,
1876 >    -745,  -745,   517,  -745,   656,  -745,   464,  -745,   529,  -745,
1877 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1878 >    -745,  -745,   104,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1879 >    -745,   403,  -745
1880   };
1881  
1882   /* YYPGOTO[NTERM-NUM].  */
1883   static const yytype_int16 yypgoto[] =
1884   {
1885 <    -872,  -872,  -872,  -483,  -316,  -871,  -453,  -872,  -872,   949,
1886 <    -872,  -872,  -872,  -872,   803,  -872,  -872,  -872,    21,  -872,
1887 <      23,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1888 <    -872,  -872,  -872,  -872,  -872,  -872,   996,  -872,  -872,  -872,
1889 <    -872,  -872,   956,  -872,  -872,  -872,  -872,    58,  -872,  -872,
1890 <    -872,  -872,  -872,  -230,  -872,  -872,  -872,   604,  -872,  -872,
1891 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -186,  -872,  -872,
1892 <    -872,  -161,  -872,  -872,  -872,   810,  -872,  -872,  -872,  -872,
1893 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1894 <    -872,  -872,  -872,  -872,  -168,  -872,   611,  -872,  -872,  -872,
1895 <     -45,  -872,  -872,  -872,  -872,  -872,   638,  -872,  -872,  -872,
1896 <    -872,  -872,  -872,  -872,  -126,  -872,  -872,  -872,  -872,  -872,
1897 <    -872,   593,  -872,  -872,  -872,  -872,  -872,   952,  -872,  -872,
1898 <    -872,  -872,   555,  -872,  -872,  -872,  -872,  -872,  -136,  -872,
1899 <    -872,  -872,   582,  -872,  -872,  -872,  -872,  -129,  -872,  -872,
1900 <    -872,   793,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1901 <    -872,  -872,   -91,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1902 <    -872,  -872,  -872,  -102,  -872,   665,  -872,  -872,  -872,  -872,
1903 <    -872,   801,  -872,  -872,  -872,  -872,  1040,  -872,  -872,  -872,
1904 <    -872,  -872,  -872,   -86,  -872,   808,  -872,  -872,  -872,  -872,
1905 <     990,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1906 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1907 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1908 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
1909 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,    59,
1910 <    -872,  -872,  -872,    62,  -872,  -872,  -872,  -872,  -872,  -872,
1911 <    -872,   701,  -872,  -872,  -872,  -872,  -872,   -77,  -872,  -872,
1912 <    -872,  -872,  -872,   -81,  -872,  -872,  1089,  -872,  -872,  -872,
1913 <    -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,  -872,
2011 <    -872,  -872,  -872,  -872,  -872,  -872,   953,  -872,  -872,  -872,
2012 <    -872,  -872,  -872,  -872
1885 >    -745,  -745,  -745,  -744,  -298,  -659,  -595,  -745,  -745,   767,
1886 >    -745,  -745,  -745,  -745,   750,  -745,  -745,  -745,    17,  -745,
1887 >      10,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1888 >    -745,  -745,  -745,  -745,  -745,  -745,   924,  -745,  -745,  -745,
1889 >    -745,  -745,   914,  -745,  -745,  -745,  -745,    53,  -745,  -745,
1890 >    -745,  -745,  -745,  -225,  -745,  -745,  -745,   504,  -745,  -745,
1891 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -193,  -745,  -745,
1892 >    -745,  -188,  -745,  -745,  -745,   675,  -745,  -745,  -745,  -745,
1893 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1894 >    -745,  -745,  -745,  -745,  -170,  -745,   558,  -745,  -745,  -745,
1895 >     -48,  -745,  -745,  -745,  -745,  -745,   610,  -745,  -745,  -745,
1896 >    -745,  -745,  -745,  -745,  -117,  -745,  -745,  -745,  -745,  -745,
1897 >    -745,   550,  -745,  -745,  -745,  -745,  -745,   892,  -745,  -745,
1898 >    -745,  -745,   543,  -745,  -745,  -745,  -745,  -745,  -131,  -745,
1899 >    -745,  -745,   511,  -745,  -745,  -745,  -745,  -128,  -745,  -745,
1900 >    -745,   820,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1901 >    -745,  -745,  -101,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1902 >    -745,  -745,  -745,  -103,  -745,   614,  -745,  -745,  -745,  -745,
1903 >    -745,   754,  -745,  -745,  -745,  -745,   969,  -745,  -745,  -745,
1904 >    -745,  -745,  -745,   -92,  -745,   749,  -745,  -745,  -745,  -745,
1905 >     917,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1906 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1907 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1908 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1909 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,    39,  -745,
1910 >    -745,  -745,    40,  -745,  -745,  -745,  -745,  -745,   996,  -745,
1911 >    -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
1912 >    -745,  -745,  -745,  -745,  -745,   915,  -745,  -745,  -745,  -745,
1913 >    -745,  -745
1914   };
1915  
1916   /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
1917     positive, shift that token.  If negative, reduce the rule which
1918     number is the opposite.  If YYTABLE_NINF, syntax error.  */
1919 < #define YYTABLE_NINF -109
1919 > #define YYTABLE_NINF -108
1920   static const yytype_int16 yytable[] =
1921   {
1922 <     713,   609,   610,   234,   712,    70,   302,   581,   616,   477,
1923 <     250,   119,    70,   545,  1117,    49,   241,    50,   400,   505,
1924 <     361,   590,   362,   496,  1123,   363,  1049,   390,   307,   496,
1925 <    1050,   478,   546,   505,    71,    54,   590,   234,   390,   302,
1926 <      56,    71,   364,   251,    72,   462,    47,    48,   463,  1051,
1927 <     479,    72,    61,  1052,   480,   400,   252,    62,  1152,  1110,
1928 <      65,   365,  1112,  1111,   506,   366,  1113,   241,    66,   253,
1929 <     254,   255,   256,  1248,  1010,  1250,    69,  1249,   506,  1251,
1930 <     120,   119,   464,   507,   367,   465,   368,  1254,   508,   257,
1931 <     116,  1255,   704,   705,   667,   668,   391,   507,   369,  1114,
1932 <    1115,  1116,   508,    73,   303,   582,  1269,   391,   681,   117,
1933 <      73,   118,   242,   686,   124,   547,   401,   230,   370,   591,
1934 <     231,   125,   706,   707,   697,   698,   466,   700,   126,   127,
1935 <     462,   232,   481,   463,   591,   710,   711,   303,   128,   715,
1936 <     243,   482,   483,   467,   548,   233,   129,   509,   371,   402,
1937 <     120,  1256,   130,   401,   497,  1257,   131,   132,   392,   133,
1938 <     497,   509,  1089,   242,  1090,   134,   248,   464,  1010,   392,
1939 <     465,   583,  1011,   581,   135,   136,   484,   372,   332,   137,
1940 <    1118,   249,   403,   857,   138,   592,   402,   498,   139,   140,
1941 <    1124,   243,   141,   498,   300,   142,   143,    79,   333,   334,
1942 <     592,  1153,   335,   144,  1258,  1154,   373,   301,  1259,   145,
1943 <     146,   466,   147,   148,   149,   150,   151,  1260,   308,   403,
1944 <     516,  1261,   267,    80,    81,   309,  1262,   152,   467,    82,
1945 <    1263,    83,   584,   235,   485,   153,   154,   155,  1012,   156,
1946 <     310,  -108,   157,   158,   781,   311,   159,   809,   499,   738,
1947 <     561,   268,   374,   773,   499,   520,   524,   160,   664,   750,
1948 <     653,   814,   526,   336,   337,   338,  1011,   235,   339,   743,
1949 <     468,   582,   313,    84,    85,  -108,   340,   518,   657,   598,
1950 <      86,    87,   161,   314,   527,   727,   162,   269,   341,   342,
1951 <     163,   164,   165,   166,   167,   970,   971,   972,   168,   169,
1952 <     315,    88,    89,   528,   343,   344,   316,   529,   170,   477,
1953 <     847,  1013,   791,   792,  1166,   317,    90,    91,   855,   856,
1954 <     270,   398,   271,   272,  1272,   318,  1274,    92,  1273,   545,
1955 <    1275,   478,  1012,   319,   345,   320,    93,   583,   171,   172,
1956 <     250,   173,  1066,  1067,  1068,  1069,  1070,   174,   546,   526,
1957 <     479,   321,   175,  1288,   480,   468,   322,   176,  1276,  1091,
1958 <     530,   460,  1277,   273,   323,   274,   275,   276,   277,   608,
1959 <     324,   527,  1092,   251,  1289,  1278,  1290,  1303,   521,  1279,
1960 <     267,  1304,   278,   795,   796,   531,   252,   860,   861,   325,
1961 <     528,   712,   326,   327,   529,   563,   328,   329,   584,   253,
1962 <     254,   255,   256,   397,   532,  1013,   983,   604,   279,   268,
1963 <     600,   409,   825,   826,   827,   828,   829,  1291,   637,   257,
1964 <     280,   125,   410,  1222,    94,    95,    96,   411,   126,   127,
1965 <     412,   547,   481,   413,   601,   414,   415,   330,   128,   603,
1966 <     416,   482,   483,   417,   418,   269,   129,   530,   419,   420,
1967 <     421,   422,   130,   423,   281,   282,   131,   132,   424,   133,
1968 <     548,   425,   579,   426,   605,   134,   427,   428,   429,   533,
1969 <     430,   431,   531,   432,   135,   136,   484,   433,   270,   137,
1970 <     271,   272,   434,   435,   138,   436,   438,   534,   139,   140,
1971 <     440,   532,   141,  1292,  1293,   142,   143,   441,   442,   443,
1972 <    1223,   444,   767,   144,   602,   445,   361,   446,   362,   145,
1973 <     146,   363,   147,   148,   149,   150,   151,   447,   448,   449,
1974 <     450,   273,   451,   274,   275,   276,   277,   152,   364,  1294,
1975 <     452,  1224,   453,   454,   485,   153,   154,   155,  1170,   156,
1976 <     278,  1225,   157,   158,   455,   456,   159,   365,  1226,   457,
1977 <     458,   366,   459,   517,   522,   523,   533,   160,  1236,   554,
1978 <    1227,   555,  1228,  1229,  1171,   556,   279,   557,   558,   559,
1979 <     367,   606,   368,   560,   534,  1230,   564,   565,   280,   566,
1980 <     567,   568,   161,  1172,   369,  1231,   162,   569,   570,  1173,
1981 <     163,   164,   165,   166,   167,   571,   572,    79,   168,   169,
1982 <     573,   574,   575,   576,   370,   577,  1174,   578,   170,   597,
1983 <     607,   608,   281,   282,   613,   611,   612,   614,   615,   617,
1984 <     618,   619,  1131,    80,    81,   620,   621,   622,   623,    82,
1985 <    1175,    83,   624,   625,   371,  1237,   626,  1176,   171,   172,
1986 <     627,   173,   628,   629,   630,   631,  1132,   174,   632,   633,
1987 <     634,  1177,   175,   635,   636,  1133,   639,   176,   640,   659,
1988 <     641,  1134,   642,   372,   643,   645,  1238,   646,   647,  1178,
1989 <     648,  1179,  1180,    84,    85,   649,  1239,  1135,   660,   650,
1990 <      86,    87,   669,  1240,     2,     3,   651,   666,   670,     4,
1991 <     652,   655,   373,   671,   332,  1241,   656,  1242,  1243,   661,
1992 <     662,    88,    89,  1136,     5,   673,   672,     6,     7,   674,
1993 <    1244,  1137,  1270,     8,   333,   334,    90,    91,   335,   675,
1994 <    1245,   676,   677,   678,  1181,   679,   680,    92,     9,   910,
1995 <     682,   683,    10,    11,  1182,    12,    93,   684,   374,   685,
1996 <     687,    13,   688,  1183,   689,   690,   691,  1184,   712,  1185,
1997 <     714,   692,   693,   694,  1138,    14,   695,   696,  1186,   699,
1998 <     701,   702,   703,   708,   933,    15,    16,   709,  1187,   716,
1999 <     717,   720,  1139,   718,   719,   722,   729,   745,   723,   336,
2000 <     337,   338,    17,   725,   339,   726,   730,   731,   733,   734,
2001 <     735,   752,   340,   755,   756,   736,   737,   740,    18,  1193,
2002 <     742,   747,   748,   749,   341,   342,   753,   754,   757,   758,
2003 <     759,   778,   783,   760,   762,   763,   775,   764,   769,   776,
2004 <     343,   344,   766,   770,    94,    95,    96,   777,   779,   780,
2005 <     784,   782,   771,   772,    19,   785,   786,   787,   788,   789,
2006 <     790,   799,   800,    20,    21,   801,   802,    22,    23,   803,
2007 <     345,   911,   912,   913,   914,   915,   816,   804,   916,   917,
2008 <     845,   805,   918,   919,   920,   806,   808,   921,   812,   922,
2009 <     923,   924,   811,   925,   926,   927,   846,   848,   928,   849,
2010 <     817,   850,   818,   819,   929,   820,   934,   935,   936,   937,
2011 <     938,   821,   851,   939,   940,   852,   822,   941,   942,   943,
2012 <     823,    24,   944,   853,   945,   946,   947,   824,   948,   949,
2013 <     950,   832,   833,   951,   834,   835,   836,   837,   838,   952,
2014 <     839,  1194,  1195,  1196,  1197,  1198,   840,   841,  1199,  1200,
2015 <     842,   843,  1201,  1202,  1203,   844,   854,  1204,   858,  1205,
2016 <    1206,  1207,   859,  1208,  1209,  1210,   862,   865,  1211,   863,
2017 <     866,   867,   868,   869,  1212,   870,   864,   873,   871,   872,
2018 <     874,   875,   876,   877,   878,   879,   984,   880,   881,   882,
2019 <     883,   884,   885,   886,   887,   888,   986,   889,   890,   987,
2020 <     891,   892,   893,   894,   895,   896,   897,   898,   899,   900,
2021 <     901,   989,   902,   903,   904,   905,   906,   907,   908,   909,
2022 <     932,   955,   956,   957,   958,   992,   959,   990,   993,   960,
2023 <     994,   961,   995,   962,   996,   963,   964,   965,   966,   967,
2024 <     968,   969,   975,   998,   976,   977,   978,   979,   980,   981,
2025 <    1000,  1003,  1004,   982,  1005,   985,   988,   997,   991,  1001,
2026 <    1021,   999,  1008,  1002,  1009,  1019,  1020,  1022,  1024,  1025,
2027 <    1023,  1026,  1027,  1028,  1029,  1033,  1030,  1031,  1032,  1034,
2028 <    1058,  1059,  1060,  1035,  1036,  1062,  1037,  1264,  1107,  1148,
2029 <     312,  1219,  1167,  1038,  1305,  1220,  1039,  1040,  1041,  1042,
2030 <    1043,  1044,  1045,  1046,  1267,  1047,   580,  1048,  1053,  1300,
2031 <    1054,  1055,  1056,  1057,  1061,  1286,  1064,  1065,  1063,  1071,
2032 <    1072,  1163,  1073,  1074,  1075,  1076,  1077,  1078,  1079,  1080,
2033 <    1081,  1082,  1299,  1083,  1084,  1265,  1085,  1086,  1087,  1088,
2034 <    1159,  1095,   751,  1096,   739,  1097,  1098,  1099,  1100,  1101,
2035 <    1102,  1103,  1104,  1284,  1105,  1106,  1121,  1122,  1127,   768,
2135 <     810,  1301,   774,  1128,  1129,  1130,  1142,  1143,  1144,  1145,
2136 <    1302,  1146,  1147,  1151,  1157,  1158,   638,  1162,  1280,  1285,
2137 <    1160,   399,  1168,  1165,  1169,  1281,   744,   461,   654,  1190,
2138 <     728,  1191,  1253,  1252,  1282,   815,  1192,  1215,  1216,  1217,
2139 <    1283,  1218,  1221,  1234,  1235,  1266,   331,  1271,  1287,  1268,
2140 <    1297,  1298,   519,   525,   658,     0,     0,     0,     0,     0,
2141 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2142 <       0,   562,     0,   665,     0,     0,     0,     0,     0,     0,
1922 >     802,   803,   571,   572,    67,    45,    46,  1025,    47,   381,
1923 >     579,   801,   509,   110,   371,  1071,   227,   236,   980,   286,
1924 >     460,   286,   981,   110,    48,   510,    52,    68,   997,   998,
1925 >     999,  1000,  1001,    54,    69,   982,  1044,   116,   291,   983,
1926 >    1045,  1046,   117,   118,   220,  1047,  1171,    58,   119,    59,
1927 >    1172,   220,   371,   237,  1173,  1177,   120,   480,  1174,  1178,
1928 >     544,   460,   121,   509,   122,   123,   124,   238,   239,   240,
1929 >     241,   125,    62,   111,   372,   251,   510,   126,   127,    63,
1930 >     128,   129,   130,   111,    66,   242,   131,   942,  1013,  1014,
1931 >    1015,   132,    70,   627,   628,   133,   134,   382,   252,   135,
1932 >     227,   635,   228,   637,   511,   107,  1188,   287,   136,   287,
1933 >     644,   553,   372,   647,   108,   137,   138,   469,   139,   140,
1934 >     141,   142,   143,   109,   658,   659,   115,   383,   229,   441,
1935 >     512,   253,   373,   144,   670,   671,   217,   673,   461,   145,
1936 >     146,   147,   218,   148,   219,   442,   149,   150,   545,  1072,
1937 >     151,   234,   470,   313,  1073,   511,   235,  1179,   384,   292,
1938 >     443,  1180,   284,   254,   444,   255,   256,   314,   315,   462,
1939 >     373,   316,   471,   664,   665,   943,  1181,   472,   801,   461,
1940 >    1182,   512,   285,   152,   490,   293,   228,   153,   942,  1026,
1941 >     154,   155,   156,   157,   158,   294,    76,   159,   160,   554,
1942 >     491,   257,   297,   258,   259,   260,   261,  1191,   298,   546,
1943 >     462,  1192,   229,   666,   667,   492,    77,    78,   295,   493,
1944 >     262,   544,    79,   624,   463,   729,   722,   379,   317,   318,
1945 >     319,   524,   473,   320,   692,   561,   944,   161,   162,   163,
1946 >     445,   321,   164,   299,   263,   739,   740,   165,   446,   447,
1947 >     221,   439,   322,   323,   264,   300,  -107,   221,   482,   381,
1948 >     555,    80,    81,  -107,   547,   463,   617,   324,    82,    83,
1949 >      84,   342,   494,   343,   757,   344,   943,  1193,   553,   484,
1950 >     448,  1194,   265,   266,   301,   469,   302,   345,   792,   542,
1951 >      85,    86,   303,    67,   325,   495,   800,   304,   945,   305,
1952 >     236,  1085,   346,    87,    88,   306,   347,   307,  1195,   545,
1953 >     308,   496,  1196,    89,   488,  1197,    68,   309,  1220,  1198,
1954 >     470,    90,  1221,    69,   310,   762,   348,   485,   349,   743,
1955 >     744,   699,   378,   449,   390,   326,   237,   944,   350,   391,
1956 >     471,   806,   807,   687,   441,   472,   392,   382,   393,   490,
1957 >     238,   239,   240,   241,  1168,  1169,  1170,   394,   395,   351,
1958 >     442,   396,   397,   398,   570,   491,   554,   597,   242,   563,
1959 >     546,   399,   400,   401,   497,   443,   402,   383,   403,   444,
1960 >     492,    70,   404,   405,   493,   406,   352,   407,   498,   251,
1961 >     116,   408,   409,   410,   411,   117,   118,   412,   716,   945,
1962 >     473,   119,   772,   773,   774,   775,   776,   413,   384,   120,
1963 >     311,   414,   252,   353,   415,   121,   416,   122,   123,   124,
1964 >     417,   418,   420,   422,   125,   547,   423,   555,   424,   425,
1965 >     126,   127,   426,   128,   129,   130,   427,   494,   428,   131,
1966 >     354,   429,   430,  1205,   132,   253,   431,   432,   133,   134,
1967 >     433,   434,   135,   435,   436,   445,   437,   438,   481,   486,
1968 >     495,   136,   487,   446,   447,  1206,   518,  1207,   137,   138,
1969 >     519,   139,   140,   141,   142,   143,   496,   254,   355,   255,
1970 >     256,   520,   526,   521,   522,   613,   144,   564,   523,  1189,
1971 >     527,   528,   145,   146,   147,   448,   148,   529,   530,   149,
1972 >     150,   565,   531,   151,   532,  1208,   342,   533,   343,   567,
1973 >     344,   534,   535,   536,   537,   257,   566,   258,   259,   260,
1974 >     261,  1089,   345,   538,   539,   540,   541,   560,  1142,   568,
1975 >     569,   570,   573,   574,   262,   575,   152,   346,   576,   497,
1976 >     153,   347,  1090,   154,   155,   156,   157,   158,   449,   577,
1977 >     159,   160,   578,   498,   580,   581,   582,  1091,   263,   583,
1978 >     599,   348,   619,   349,  1092,   620,   584,   585,   264,   586,
1979 >     313,   587,   588,   350,   589,  1209,  1210,   590,   591,   592,
1980 >     593,  1093,   594,   595,   314,   315,   596,   626,   316,   600,
1981 >     161,   162,   163,  1156,   351,   164,   265,   266,   601,  1143,
1982 >     165,   629,   602,   603,  1094,   630,   631,   632,  1211,   605,
1983 >     606,  1095,   633,   634,   607,     2,     3,   608,   609,     4,
1984 >     636,   352,   610,  1096,   611,   612,   615,   638,  1144,     5,
1985 >     616,   621,     6,     7,   622,   639,   640,  1145,     8,   641,
1986 >    1097,  1098,  1099,  1146,   642,   317,   318,   319,   353,     9,
1987 >     320,   857,   643,    10,    11,   645,   646,  1147,   321,  1148,
1988 >    1149,   648,   649,    12,  1157,   650,   651,   652,  1150,   322,
1989 >     323,   653,   654,   655,  1151,   354,   657,    13,   656,   880,
1990 >     660,   661,   662,   663,   324,    14,    15,   672,   677,   668,
1991 >    1100,   669,   674,  1158,   675,   678,   679,   676,   701,  1101,
1992 >     680,   682,  1159,    16,  1102,   683,  1050,  1113,  1160,   684,
1993 >    1103,   325,   703,   355,  1104,   685,  1105,    17,   686,   704,
1994 >     689,  1106,  1161,   691,  1162,  1163,  1051,  1107,   694,   705,
1995 >     702,   724,   696,  1164,   725,   697,  1052,   698,   726,  1165,
1996 >     706,   707,  1053,   727,   728,   732,   731,   733,   708,   734,
1997 >      18,   709,   326,   735,   736,   718,   730,   711,  1054,    19,
1998 >      20,   712,   713,    21,    22,   858,   859,   860,   861,   862,
1999 >     715,   863,   864,   749,   865,   866,   867,   719,   720,   868,
2000 >     737,   869,   870,  1055,   871,    76,   872,   738,   873,   874,
2001 >     721,  1056,   875,   881,   882,   883,   884,   885,   876,   886,
2002 >     887,   747,   888,   889,   890,    77,    78,   891,   748,   892,
2003 >     893,    79,   894,   750,   895,    23,   896,   897,   751,   752,
2004 >     898,  1114,  1115,  1116,  1117,  1118,   899,  1119,  1120,  1057,
2005 >    1121,  1122,  1123,   753,   754,  1124,   764,  1125,  1126,   756,
2006 >    1127,   759,  1128,   760,  1129,  1130,  1058,   765,  1131,   766,
2007 >      80,    81,   767,   768,  1132,   769,   770,    82,    83,    84,
2008 >     771,   779,   780,   781,   782,   783,   784,   785,   786,   787,
2009 >     790,   788,   789,   791,   793,   794,   795,   796,   797,    85,
2010 >      86,   798,   799,   804,   801,   805,   808,   809,   810,   811,
2011 >     812,   815,    87,    88,   819,   822,   813,   814,   816,   823,
2012 >     826,   827,    89,   817,   818,   820,   821,   824,   825,   828,
2013 >      90,   829,   830,   831,   832,   921,   833,   834,   835,   836,
2014 >     837,   838,   839,   840,   841,   842,   843,   844,   845,   846,
2015 >     847,   848,   849,   924,   850,   851,   852,   853,   854,   855,
2016 >     856,   879,   925,   902,   903,   904,   905,   906,   907,   908,
2017 >     909,   910,   911,   912,   913,   914,   915,   916,   917,   918,
2018 >     919,   920,   922,   926,   927,   923,   928,   929,   930,   931,
2019 >     932,   933,   934,   935,   936,   937,   940,   941,   951,   952,
2020 >     953,   954,   956,   955,   957,   958,   960,   959,   962,   963,
2021 >     964,   989,   991,  1140,   993,   296,  1222,   489,  1139,  1086,
2022 >    1041,  1217,   598,   717,  1216,  1067,  1183,   961,   965,   966,
2023 >     967,   968,  1203,   969,   970,   971,   972,   543,   973,   974,
2024 >     975,   976,   977,   978,   979,   984,   985,   986,   987,   988,
2025 >    1186,  1184,   992,   700,   990,   995,   994,   996,  1002,  1003,
2026 >    1004,  1005,  1006,  1007,  1008,  1009,  1010,  1011,  1012,  1018,
2027 >    1019,  1020,  1021,  1022,  1023,  1024,  1029,  1078,  1030,  1031,
2028 >     688,  1201,  1032,   723,  1033,  1218,  1034,   763,  1035,  1036,
2029 >    1219,  1199,  1037,  1038,  1039,  1040,  1048,  1202,  1049,   693,
2030 >    1061,   380,  1200,   440,  1062,  1175,  1176,   312,     0,     0,
2031 >       0,   758,     0,  1063,  1064,  1065,  1066,     0,  1070,  1076,
2032 >    1077,     0,  1081,     0,     0,  1079,  1082,  1084,  1187,  1087,
2033 >    1088,  1110,  1111,  1112,  1135,  1136,  1137,  1138,  1141,  1154,
2034 >    1155,     0,  1185,  1190,  1204,  1214,  1215,     0,   618,     0,
2035 >       0,     0,     0,     0,     0,   625,   483,     0,     0,     0,
2036         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2037 +       0,     0,     0,     0,     0,     0,     0,     0,   525,     0,
2038         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2039 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2040 <       0,     0,     0,     0,     0,     0,   599
2039 >       0,     0,     0,     0,     0,     0,   614,     0,     0,     0,
2040 >     562
2041   };
2042  
2043 < #define yypact_value_is_default(yystate) \
2044 <  ((yystate) == (-872))
2043 > #define yypact_value_is_default(Yystate) \
2044 >  (!!((Yystate) == (-745)))
2045  
2046 < #define yytable_value_is_error(yytable_value) \
2046 > #define yytable_value_is_error(Yytable_value) \
2047    YYID (0)
2048  
2049   static const yytype_int16 yycheck[] =
2050   {
2051 <     453,   317,   318,     1,   109,     1,     1,     1,   324,     1,
2052 <       1,     1,     1,     1,    11,   242,     1,   242,     1,     1,
2053 <       1,     1,     3,     1,    11,     6,   240,     1,   240,     1,
2054 <     244,    23,    20,     1,    30,   242,     1,     1,     1,     1,
2055 <     242,    30,    23,    34,    40,     1,   240,   241,     4,   240,
2056 <      42,    40,   242,   244,    46,     1,    47,   242,    60,   240,
2057 <     242,    42,   240,   244,    46,    46,   244,     1,   242,    60,
2058 <      61,    62,    63,   240,     1,   240,   242,   244,    46,   244,
2059 <      70,     1,    38,    65,    65,    41,    67,   240,    70,    80,
2060 <     242,   244,   175,   176,   410,   411,    70,    65,    79,   970,
2061 <     971,   972,    70,    99,    99,    99,   211,    70,   424,   242,
2062 <      99,   242,    97,   429,   242,   103,    99,   242,    99,    99,
2063 <     242,     1,   175,   176,   440,   441,    82,   443,     8,     9,
2064 <       1,   242,   124,     4,    99,   451,   452,    99,    18,   455,
2065 <     125,   133,   134,    99,   132,   242,    26,   129,   129,   132,
2066 <      70,   240,    32,    99,   132,   244,    36,    37,   132,    39,
2067 <     132,   129,    10,    97,    12,    45,   242,    38,     1,   132,
2068 <      41,   165,    99,     1,    54,    55,   168,   158,     1,    59,
2069 <     177,   242,   165,   636,    64,   165,   132,   165,    68,    69,
2070 <     177,   125,    72,   165,   242,    75,    76,     1,    21,    22,
2071 <     165,   203,    25,    83,   240,   207,   187,   242,   244,    89,
2072 <      90,    82,    92,    93,    94,    95,    96,   240,   243,   165,
2073 <     240,   244,     1,    27,    28,   243,   240,   107,    99,    33,
2074 <     244,    35,   226,   231,   226,   115,   116,   117,   165,   119,
2075 <     243,   239,   122,   123,   560,   241,   126,   241,   226,   241,
2076 <     241,    30,   233,   241,   226,   239,   241,   137,   241,   241,
2077 <     241,   241,     1,    86,    87,    88,    99,   231,    91,   241,
2078 <     226,    99,   243,    77,    78,   239,    99,   241,   241,   241,
2079 <      84,    85,   162,   243,    23,   241,   166,    66,   111,   112,
2080 <     170,   171,   172,   173,   174,    13,    14,    15,   178,   179,
2081 <     243,   105,   106,    42,   127,   128,   243,    46,   188,     1,
2082 <     626,   238,   148,   149,   241,   243,   120,   121,   634,   635,
2083 <      99,   241,   101,   102,   240,   243,   240,   131,   244,     1,
2084 <     244,    23,   165,   243,   157,   243,   140,   165,   218,   219,
2085 <       1,   221,   825,   826,   827,   828,   829,   227,    20,     1,
2086 <      42,   243,   232,    50,    46,   226,   243,   237,   240,   207,
2087 <      99,   241,   244,   142,   243,   144,   145,   146,   147,   109,
2088 <     243,    23,   220,    34,    71,   240,    73,   240,   240,   244,
2089 <       1,   244,   161,   148,   149,   124,    47,   196,   197,   243,
2090 <      42,   109,   243,   243,    46,   240,   243,   243,   226,    60,
2091 <      61,    62,    63,   243,   143,   238,   722,   109,   187,    30,
2092 <     130,   243,   152,   153,   154,   155,   156,   114,   241,    80,
2093 <     199,     1,   243,    73,   228,   229,   230,   243,     8,     9,
2094 <     243,   103,   124,   243,   130,   243,   243,   241,    18,   240,
2095 <     243,   133,   134,   243,   243,    66,    26,    99,   243,   243,
2096 <     243,   243,    32,   243,   233,   234,    36,    37,   243,    39,
2097 <     132,   243,   241,   243,   109,    45,   243,   243,   243,   208,
2098 <     243,   243,   124,   243,    54,    55,   168,   243,    99,    59,
2099 <     101,   102,   243,   243,    64,   243,   243,   226,    68,    69,
2100 <     243,   143,    72,   190,   191,    75,    76,   243,   243,   243,
2101 <     150,   243,   241,    83,   130,   243,     1,   243,     3,    89,
2102 <      90,     6,    92,    93,    94,    95,    96,   243,   243,   243,
2103 <     243,   142,   243,   144,   145,   146,   147,   107,    23,   226,
2104 <     243,   181,   243,   243,   226,   115,   116,   117,     5,   119,
2105 <     161,   191,   122,   123,   243,   243,   126,    42,   198,   243,
2106 <     243,    46,   243,   243,   243,   243,   208,   137,    73,   243,
2107 <     210,   243,   212,   213,    31,   243,   187,   243,   243,   243,
2108 <      65,   175,    67,   243,   226,   225,   243,   243,   199,   243,
2109 <     243,   243,   162,    50,    79,   235,   166,   243,   243,    56,
2110 <     170,   171,   172,   173,   174,   243,   243,     1,   178,   179,
2111 <     243,   243,   243,   243,    99,   243,    73,   243,   188,   243,
2112 <     175,   109,   233,   234,   175,   109,   109,   175,   109,   175,
2113 <     175,   175,    19,    27,    28,   175,   175,   240,   240,    33,
2114 <      97,    35,   243,   243,   129,   150,   243,   104,   218,   219,
2115 <     243,   221,   243,   243,   243,   243,    43,   227,   243,   243,
2116 <     243,   118,   232,   243,   243,    52,   240,   237,   243,   130,
2117 <     243,    58,   243,   158,   243,   243,   181,   243,   243,   136,
2118 <     243,   138,   139,    77,    78,   243,   191,    74,   240,   243,
2119 <      84,    85,   109,   198,     0,     1,   243,   175,   175,     5,
2120 <     243,   243,   187,   175,     1,   210,   243,   212,   213,   243,
2121 <     243,   105,   106,   100,    20,   130,   109,    23,    24,   175,
2122 <     225,   108,  1165,    29,    21,    22,   120,   121,    25,   109,
2123 <     235,   109,   109,   175,   191,   175,   175,   131,    44,    60,
2124 <     130,   175,    48,    49,   201,    51,   140,   109,   233,   109,
2125 <     109,    57,   109,   210,   130,   109,   109,   214,   109,   216,
2126 <     130,   175,   175,   243,   151,    71,   175,   243,   225,   175,
2127 <     175,   175,   175,   175,    60,    81,    82,   175,   235,   175,
2128 <     175,   240,   169,   175,   175,   243,   240,   240,   243,    86,
2129 <      87,    88,    98,   243,    91,   243,   243,   243,   243,   243,
2130 <     243,   175,    99,   130,   130,   243,   243,   243,   114,    60,
2131 <     243,   243,   243,   243,   111,   112,   240,   242,   240,   240,
2132 <     243,   130,   130,   243,   243,   243,   175,   243,   240,   175,
2133 <     127,   128,   243,   243,   228,   229,   230,   175,   175,   175,
2134 <     175,   240,   243,   243,   150,   130,   130,   130,   130,   130,
2135 <     130,   130,   130,   159,   160,   109,   130,   163,   164,   130,
2136 <     157,   182,   183,   184,   185,   186,   130,   240,   189,   190,
2137 <     109,   240,   193,   194,   195,   243,   243,   198,   243,   200,
2138 <     201,   202,   240,   204,   205,   206,   109,   109,   209,   109,
2139 <     240,   109,   240,   240,   215,   240,   182,   183,   184,   185,
2140 <     186,   240,   109,   189,   190,   130,   240,   193,   194,   195,
2141 <     240,   217,   198,   109,   200,   201,   202,   240,   204,   205,
2142 <     206,   240,   240,   209,   240,   240,   240,   240,   240,   215,
2143 <     240,   182,   183,   184,   185,   186,   240,   240,   189,   190,
2144 <     240,   240,   193,   194,   195,   240,   109,   198,   240,   200,
2145 <     201,   202,   130,   204,   205,   206,   130,   130,   209,   175,
2146 <     130,   130,   130,   109,   215,   130,   243,   240,   130,   130,
2147 <     130,   130,   240,   240,   130,   130,   175,   243,   240,   240,
2148 <     240,   240,   240,   240,   240,   240,   130,   240,   240,   130,
2149 <     240,   240,   240,   240,   240,   240,   240,   240,   240,   240,
2150 <     240,   130,   240,   240,   240,   240,   240,   240,   240,   240,
2151 <     240,   240,   240,   240,   240,   130,   240,   175,   109,   240,
2152 <     130,   240,   130,   240,   130,   240,   240,   240,   240,   240,
2153 <     240,   240,   240,   130,   240,   240,   240,   240,   240,   240,
2154 <     130,   130,   130,   243,   109,   243,   240,   240,   243,   240,
2155 <     130,   243,   240,   243,   240,   240,   240,   175,   130,   130,
2156 <     243,   130,   243,   130,   240,   240,   130,   130,   130,   240,
2157 <     130,   243,   130,   240,   240,   130,   240,   109,   135,   135,
2158 <      74,  1050,  1014,   240,  1304,  1052,   240,   240,   240,   240,
2159 <     240,   240,   240,   240,   130,   240,   283,   240,   240,  1275,
2160 <     240,   240,   240,   240,   240,  1263,   240,   240,   243,   240,
2161 <     240,   243,   240,   240,   240,   240,   240,   240,   240,   240,
2162 <     240,   240,  1273,   240,   240,  1160,   240,   240,   240,   240,
2163 <     180,   240,   511,   240,   486,   240,   240,   240,   240,   240,
2164 <     240,   240,   240,  1259,   240,   240,   240,   240,   240,   535,
2271 <     585,  1277,   549,   240,   240,   240,   240,   240,   240,   240,
2272 <    1279,   240,   240,   240,   240,   240,   346,   240,  1249,  1261,
2273 <     244,   121,   240,   243,   240,  1251,   501,   177,   375,   240,
2274 <     469,   240,  1113,  1111,  1255,   593,   240,   240,   240,   240,
2275 <    1257,   240,   240,   240,   240,   240,    97,   240,   240,   243,
2276 <     240,   240,   236,   244,   393,    -1,    -1,    -1,    -1,    -1,
2277 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2278 <      -1,   258,    -1,   405,    -1,    -1,    -1,    -1,    -1,    -1,
2051 >     595,   596,   300,   301,     1,   214,   215,     8,   216,     1,
2052 >     308,    99,     1,     1,     1,    51,     1,     1,   214,     1,
2053 >       1,     1,   218,     1,   216,    14,   216,    24,   772,   773,
2054 >     774,   775,   776,   216,    31,   214,   214,     1,   214,   218,
2055 >     218,   214,     6,     7,     1,   218,   214,   216,    12,   216,
2056 >     218,     1,     1,    37,   214,   214,    20,   214,   218,   218,
2057 >       1,     1,    26,     1,    28,    29,    30,    51,    52,    53,
2058 >      54,    35,   216,    61,    61,     1,    14,    41,    42,   216,
2059 >      44,    45,    46,    61,   216,    69,    50,     1,     9,    10,
2060 >      11,    55,    89,   391,   392,    59,    60,    89,    24,    63,
2061 >       1,   399,    87,   401,    93,   216,   194,    89,    72,    89,
2062 >     408,     1,    61,   411,   216,    79,    80,     1,    82,    83,
2063 >      84,    85,    86,   216,   422,   423,   216,   119,   113,     1,
2064 >     119,    57,   119,    97,   432,   433,   216,   435,   119,   103,
2065 >     104,   105,   216,   107,   216,    17,   110,   111,    89,   185,
2066 >     114,   216,    36,     1,   190,    93,   216,   214,   150,   217,
2067 >      32,   218,   216,    89,    36,    91,    92,    15,    16,   150,
2068 >     119,    19,    56,   159,   160,    89,   214,    61,    99,   119,
2069 >     218,   119,   216,   147,     1,   217,    87,   151,     1,   190,
2070 >     154,   155,   156,   157,   158,   217,     1,   161,   162,    89,
2071 >      17,   127,   217,   129,   130,   131,   132,   214,   217,   150,
2072 >     150,   218,   113,   159,   160,    32,    21,    22,   215,    36,
2073 >     146,     1,    27,   215,   205,   523,   215,   215,    76,    77,
2074 >      78,   215,   116,    81,   215,   215,   150,   201,   202,   203,
2075 >     112,    89,   206,   217,   170,   133,   134,   211,   120,   121,
2076 >     207,   215,   100,   101,   180,   217,   213,   207,   215,     1,
2077 >     150,    66,    67,   213,   205,   205,   215,   115,    73,    74,
2078 >      75,     1,    89,     3,   215,     5,    89,   214,     1,   213,
2079 >     152,   218,   208,   209,   217,     1,   217,    17,   586,   215,
2080 >      95,    96,   217,     1,   142,   112,   594,   217,   212,   217,
2081 >       1,   215,    32,   108,   109,   217,    36,   217,   214,    89,
2082 >     217,   128,   218,   118,   215,   214,    24,   217,   214,   218,
2083 >      36,   126,   218,    31,   217,   215,    56,   214,    58,   133,
2084 >     134,   215,   217,   205,   217,   183,    37,   150,    68,   217,
2085 >      56,   177,   178,   215,     1,    61,   217,    89,   217,     1,
2086 >      51,    52,    53,    54,  1013,  1014,  1015,   217,   217,    89,
2087 >      17,   217,   217,   217,    99,    17,    89,   215,    69,   117,
2088 >     150,   217,   217,   217,   191,    32,   217,   119,   217,    36,
2089 >      32,    89,   217,   217,    36,   217,   116,   217,   205,     1,
2090 >       1,   217,   217,   217,   217,     6,     7,   217,   215,   212,
2091 >     116,    12,   137,   138,   139,   140,   141,   217,   150,    20,
2092 >     215,   217,    24,   143,   217,    26,   217,    28,    29,    30,
2093 >     217,   217,   217,   217,    35,   205,   217,   150,   217,   217,
2094 >      41,    42,   217,    44,    45,    46,   217,    89,   217,    50,
2095 >     170,   217,   217,    40,    55,    57,   217,   217,    59,    60,
2096 >     217,   217,    63,   217,   217,   112,   217,   217,   217,   217,
2097 >     112,    72,   217,   120,   121,    62,   217,    64,    79,    80,
2098 >     217,    82,    83,    84,    85,    86,   128,    89,   208,    91,
2099 >      92,   217,   214,   217,   217,   215,    97,   117,   217,  1084,
2100 >     217,   217,   103,   104,   105,   152,   107,   217,   217,   110,
2101 >     111,   117,   217,   114,   217,   102,     1,   217,     3,    99,
2102 >       5,   217,   217,   217,   217,   127,   214,   129,   130,   131,
2103 >     132,     4,    17,   217,   217,   217,   217,   217,    64,    99,
2104 >     159,    99,    99,    99,   146,    99,   147,    32,   159,   191,
2105 >     151,    36,    25,   154,   155,   156,   157,   158,   205,   159,
2106 >     161,   162,    99,   205,   159,   159,   214,    40,   170,   214,
2107 >     214,    56,   117,    58,    47,   214,   217,   217,   180,   217,
2108 >       1,   217,   217,    68,   217,   172,   173,   217,   217,   217,
2109 >     217,    64,   217,   217,    15,    16,   217,   159,    19,   217,
2110 >     201,   202,   203,    64,    89,   206,   208,   209,   217,   135,
2111 >     211,    99,   217,   217,    87,   159,   159,    99,   205,   217,
2112 >     217,    94,   117,   159,   217,     0,     1,   217,   217,     4,
2113 >     159,   116,   217,   106,   217,   217,   217,    99,   164,    14,
2114 >     217,   217,    17,    18,   217,    99,    99,   173,    23,   159,
2115 >     123,   124,   125,   179,   159,    76,    77,    78,   143,    34,
2116 >      81,    51,   159,    38,    39,    99,    99,   193,    89,   195,
2117 >     196,    99,    99,    48,   135,   117,    99,    99,   204,   100,
2118 >     101,   159,   159,   217,   210,   170,   217,    62,   159,    51,
2119 >     159,   159,   159,   159,   115,    70,    71,   117,   214,   159,
2120 >     173,   159,   159,   164,   159,   214,   217,   159,   159,   182,
2121 >     217,   217,   173,    88,   187,   217,    13,    51,   179,   217,
2122 >     193,   142,   216,   208,   197,   217,   199,   102,   217,   117,
2123 >     217,   204,   193,   217,   195,   196,    33,   210,   214,   117,
2124 >     214,   159,   217,   204,   159,   217,    43,   217,   117,   210,
2125 >     214,   214,    49,   159,   159,   159,   117,   117,   217,   117,
2126 >     135,   217,   183,   117,   117,   214,   214,   217,    65,   144,
2127 >     145,   217,   217,   148,   149,   165,   166,   167,   168,   169,
2128 >     217,   171,   172,    99,   174,   175,   176,   217,   217,   179,
2129 >     117,   181,   182,    90,   184,     1,   186,   117,   188,   189,
2130 >     217,    98,   192,   165,   166,   167,   168,   169,   198,   171,
2131 >     172,   117,   174,   175,   176,    21,    22,   179,   117,   181,
2132 >     182,    27,   184,   117,   186,   200,   188,   189,   117,   214,
2133 >     192,   165,   166,   167,   168,   169,   198,   171,   172,   136,
2134 >     174,   175,   176,   214,   217,   179,   117,   181,   182,   217,
2135 >     184,   214,   186,   217,   188,   189,   153,   214,   192,   214,
2136 >      66,    67,   214,   214,   198,   214,   214,    73,    74,    75,
2137 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2138 >      99,   214,   214,    99,    99,    99,    99,    99,   117,    95,
2139 >      96,    99,    99,   214,    99,   117,   117,   159,   217,   117,
2140 >     117,    99,   108,   109,   214,   214,   117,   117,   117,   214,
2141 >     217,   214,   118,   117,   117,   117,   117,   117,   117,   214,
2142 >     126,   214,   214,   214,   214,   117,   214,   214,   214,   214,
2143 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2144 >     214,   214,   214,   117,   214,   214,   214,   214,   214,   214,
2145 >     214,   214,    99,   214,   214,   214,   214,   214,   214,   214,
2146 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2147 >     214,   214,   159,   117,   117,   217,   117,   214,   117,   217,
2148 >     117,   214,   217,   117,   117,    99,   214,   214,   214,   214,
2149 >     117,   159,   117,   217,   117,   117,   117,   217,   117,   117,
2150 >     117,   117,   117,   983,   117,    71,  1221,   230,   981,   946,
2151 >     122,  1194,   327,   499,  1192,   122,    99,   214,   214,   214,
2152 >     214,   214,  1182,   214,   214,   214,   214,   267,   214,   214,
2153 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2154 >     117,  1079,   214,   475,   217,   214,   217,   214,   214,   214,
2155 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2156 >     214,   214,   214,   214,   214,   214,   214,   163,   214,   214,
2157 >     450,  1178,   214,   513,   214,  1196,   214,   556,   214,   214,
2158 >    1198,  1172,   214,   214,   214,   214,   214,  1180,   214,   465,
2159 >     214,   112,  1174,   166,   214,  1045,  1047,    91,    -1,    -1,
2160 >      -1,   548,    -1,   214,   214,   214,   214,    -1,   214,   214,
2161 >     214,    -1,   214,    -1,    -1,   218,   217,   217,   217,   214,
2162 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2163 >     214,    -1,   214,   214,   214,   214,   214,    -1,   374,    -1,
2164 >      -1,    -1,    -1,    -1,    -1,   386,   222,    -1,    -1,    -1,
2165        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2166 +      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   243,    -1,
2167        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2168 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2169 <      -1,    -1,    -1,    -1,    -1,    -1,   304
2168 >      -1,    -1,    -1,    -1,    -1,    -1,   356,    -1,    -1,    -1,
2169 >     288
2170   };
2171  
2172   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2173     symbol of state STATE-NUM.  */
2174   static const yytype_uint16 yystos[] =
2175   {
2176 <       0,   246,     0,     1,     5,    20,    23,    24,    29,    44,
2177 <      48,    49,    51,    57,    71,    81,    82,    98,   114,   150,
2178 <     159,   160,   163,   164,   217,   247,   252,   257,   279,   285,
2179 <     299,   317,   334,   348,   363,   370,   374,   384,   393,   413,
2180 <     423,   429,   433,   443,   503,   519,   539,   240,   241,   242,
2181 <     242,   318,   394,   424,   242,   434,   242,   504,   349,   414,
2182 <     335,   242,   242,   300,   364,   242,   242,   375,   385,   242,
2183 <       1,    30,    40,    99,   280,   281,   282,   283,   284,     1,
2184 <      27,    28,    33,    35,    77,    78,    84,    85,   105,   106,
2185 <     120,   121,   131,   140,   228,   229,   230,   520,   521,   522,
2186 <     523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
2187 <     533,   534,   535,   536,   537,   538,   242,   242,   242,     1,
2188 <      70,   430,   431,   432,   242,     1,     8,     9,    18,    26,
2189 <      32,    36,    37,    39,    45,    54,    55,    59,    64,    68,
2190 <      69,    72,    75,    76,    83,    89,    90,    92,    93,    94,
2191 <      95,    96,   107,   115,   116,   117,   119,   122,   123,   126,
2192 <     137,   162,   166,   170,   171,   172,   173,   174,   178,   179,
2193 <     188,   218,   219,   221,   227,   232,   237,   444,   445,   446,
2194 <     447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
2195 <     457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
2196 <     467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
2197 <     477,   478,   479,   480,   481,   482,   483,   484,   485,   486,
2198 <     487,   488,   489,   490,   491,   495,   499,   500,   501,   502,
2199 <     242,   242,   242,   242,     1,   231,   286,   287,   288,   289,
2200 <     290,     1,    97,   125,   253,   254,   255,   256,   242,   242,
2201 <       1,    34,    47,    60,    61,    62,    63,    80,   540,   541,
2202 <     542,   543,   544,   545,   546,   547,   548,     1,    30,    66,
2203 <      99,   101,   102,   142,   144,   145,   146,   147,   161,   187,
2204 <     199,   233,   234,   258,   259,   260,   261,   266,   267,   268,
2205 <     269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
2206 <     242,   242,     1,    99,   371,   372,   373,   240,   243,   243,
2207 <     243,   241,   281,   243,   243,   243,   243,   243,   243,   243,
2208 <     243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
2209 <     241,   521,     1,    21,    22,    25,    86,    87,    88,    91,
2210 <      99,   111,   112,   127,   128,   157,   319,   320,   321,   322,
2211 <     323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
2212 <     333,     1,     3,     6,    23,    42,    46,    65,    67,    79,
2213 <      99,   129,   158,   187,   233,   395,   396,   397,   398,   399,
2214 <     400,   401,   402,   403,   404,   408,   409,   410,   411,   412,
2215 <       1,    70,   132,   425,   426,   427,   428,   243,   241,   431,
2216 <       1,    99,   132,   165,   435,   439,   440,   441,   442,   243,
2217 <     243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
2218 <     243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
2219 <     243,   243,   243,   243,   243,   243,   243,   496,   243,   492,
2220 <     243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
2221 <     243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
2222 <     241,   445,     1,     4,    38,    41,    82,    99,   226,   505,
2223 <     506,   507,   508,   509,   513,   514,   515,     1,    23,    42,
2224 <      46,   124,   133,   134,   168,   226,   350,   351,   352,   353,
2225 <     354,   355,   356,   360,   361,   362,     1,   132,   165,   226,
2226 <     415,   419,   420,   421,   422,     1,    46,    65,    70,   129,
2227 <     336,   340,   341,   342,   346,   347,   240,   243,   241,   287,
2228 <     239,   240,   243,   243,   241,   254,     1,    23,    42,    46,
2229 <      99,   124,   143,   208,   226,   301,   302,   303,   304,   305,
2230 <     306,   307,   308,   309,   313,     1,    20,   103,   132,   365,
2231 <     366,   367,   368,   369,   243,   243,   243,   243,   243,   243,
2232 <     243,   241,   541,   240,   243,   243,   243,   243,   243,   243,
2233 <     243,   243,   243,   243,   243,   243,   243,   243,   243,   241,
2234 <     259,     1,    99,   165,   226,   376,   377,   378,   379,   380,
2235 <       1,    99,   165,   386,   387,   388,   389,   243,   241,   372,
2236 <     130,   130,   130,   240,   109,   109,   175,   175,   109,   249,
2237 <     249,   109,   109,   175,   175,   109,   249,   175,   175,   175,
2238 <     175,   175,   240,   240,   243,   243,   243,   243,   243,   243,
2239 <     243,   243,   243,   243,   243,   243,   243,   241,   320,   240,
2240 <     243,   243,   243,   243,   405,   243,   243,   243,   243,   243,
2241 <     243,   243,   243,   241,   396,   243,   243,   241,   426,   130,
2242 <     240,   243,   243,   436,   241,   440,   175,   249,   249,   109,
2243 <     175,   175,   109,   130,   175,   109,   109,   109,   175,   175,
2244 <     175,   249,   130,   175,   109,   109,   249,   109,   109,   130,
2245 <     109,   109,   175,   175,   243,   175,   243,   249,   249,   175,
2246 <     249,   175,   175,   175,   175,   176,   175,   176,   175,   175,
2247 <     249,   249,   109,   251,   130,   249,   175,   175,   175,   175,
2248 <     240,   516,   243,   243,   510,   243,   243,   241,   506,   240,
2249 <     243,   243,   357,   243,   243,   243,   243,   243,   241,   351,
2250 <     243,   416,   243,   241,   420,   240,   337,   243,   243,   243,
2251 <     241,   341,   175,   240,   242,   130,   130,   240,   240,   243,
2252 <     243,   314,   243,   243,   243,   310,   243,   241,   302,   240,
2253 <     243,   243,   243,   241,   366,   175,   175,   175,   130,   175,
2254 <     175,   249,   240,   130,   175,   130,   130,   130,   130,   130,
2255 <     130,   148,   149,   262,   263,   148,   149,   264,   265,   130,
2256 <     130,   109,   130,   130,   240,   240,   243,   381,   243,   241,
2257 <     377,   240,   243,   390,   241,   387,   130,   240,   240,   240,
2258 <     240,   240,   240,   240,   240,   152,   153,   154,   155,   156,
2259 <     248,   249,   240,   240,   240,   240,   240,   240,   240,   240,
2260 <     240,   240,   240,   240,   240,   109,   109,   249,   109,   109,
2261 <     109,   109,   130,   109,   109,   249,   249,   251,   240,   130,
2262 <     196,   197,   130,   175,   243,   130,   130,   130,   130,   109,
2263 <     130,   130,   130,   240,   130,   130,   240,   240,   130,   130,
2264 <     243,   240,   240,   240,   240,   240,   240,   240,   240,   240,
2265 <     240,   240,   240,   240,   240,   240,   240,   240,   240,   240,
2266 <     240,   240,   240,   240,   240,   240,   240,   240,   240,   240,
2267 <      60,   182,   183,   184,   185,   186,   189,   190,   193,   194,
2268 <     195,   198,   200,   201,   202,   204,   205,   206,   209,   215,
2269 <     497,   498,   240,    60,   182,   183,   184,   185,   186,   189,
2270 <     190,   193,   194,   195,   198,   200,   201,   202,   204,   205,
2271 <     206,   209,   215,   493,   494,   240,   240,   240,   240,   240,
2272 <     240,   240,   240,   240,   240,   240,   240,   240,   240,   240,
2273 <      13,    14,    15,   250,   251,   240,   240,   240,   240,   240,
2274 <     240,   240,   243,   249,   175,   243,   130,   130,   240,   130,
2275 <     175,   243,   130,   109,   130,   130,   130,   240,   130,   243,
2276 <     130,   240,   243,   130,   130,   109,   344,   345,   240,   240,
2277 <       1,    99,   165,   238,   291,   292,   293,   294,   295,   240,
2278 <     240,   130,   175,   243,   130,   130,   130,   243,   130,   240,
2279 <     130,   130,   130,   240,   240,   240,   240,   240,   240,   240,
2280 <     240,   240,   240,   240,   240,   240,   240,   240,   240,   240,
2281 <     244,   240,   244,   240,   240,   240,   240,   240,   130,   243,
2282 <     130,   240,   130,   243,   240,   240,   248,   248,   248,   248,
2283 <     248,   240,   240,   240,   240,   240,   240,   240,   240,   240,
2284 <     240,   240,   240,   240,   240,   240,   240,   240,   240,    10,
2285 <      12,   207,   220,   406,   407,   240,   240,   240,   240,   240,
2286 <     240,   240,   240,   240,   240,   240,   240,   135,   437,   438,
2287 <     240,   244,   240,   244,   250,   250,   250,    11,   177,   517,
2288 <     518,   240,   240,    11,   177,   511,   512,   240,   240,   240,
2289 <     240,    19,    43,    52,    58,    74,   100,   108,   151,   169,
2290 <     358,   359,   240,   240,   240,   240,   240,   240,   135,   417,
2291 <     418,   240,    60,   203,   207,   338,   339,   240,   240,   180,
2292 <     244,   343,   240,   243,   296,   243,   241,   292,   240,   240,
2293 <       5,    31,    50,    56,    73,    97,   104,   118,   136,   138,
2294 <     139,   191,   201,   210,   214,   216,   225,   235,   315,   316,
2295 <     240,   240,   240,    60,   182,   183,   184,   185,   186,   189,
2296 <     190,   193,   194,   195,   198,   200,   201,   202,   204,   205,
2297 <     206,   209,   215,   311,   312,   240,   240,   240,   240,   263,
2298 <     265,   240,    73,   150,   181,   191,   198,   210,   212,   213,
2412 <     225,   235,   382,   383,   240,   240,    73,   150,   181,   191,
2413 <     198,   210,   212,   213,   225,   235,   391,   392,   240,   244,
2414 <     240,   244,   498,   494,   240,   244,   240,   244,   240,   244,
2415 <     240,   244,   240,   244,   109,   345,   240,   130,   243,   211,
2416 <     251,   240,   240,   244,   240,   244,   240,   244,   240,   244,
2417 <     407,   438,   518,   512,   359,   418,   339,   240,    50,    71,
2418 <      73,   114,   190,   191,   226,   297,   298,   240,   240,   316,
2419 <     312,   383,   392,   240,   244,   298
2176 >       0,   220,     0,     1,     4,    14,    17,    18,    23,    34,
2177 >      38,    39,    48,    62,    70,    71,    88,   102,   135,   144,
2178 >     145,   148,   149,   200,   221,   226,   231,   253,   259,   273,
2179 >     291,   308,   322,   337,   344,   348,   358,   367,   387,   397,
2180 >     403,   407,   417,   475,   492,   214,   215,   216,   216,   292,
2181 >     368,   398,   216,   408,   216,   323,   388,   309,   216,   216,
2182 >     274,   338,   216,   216,   349,   359,   216,     1,    24,    31,
2183 >      89,   254,   255,   256,   257,   258,     1,    21,    22,    27,
2184 >      66,    67,    73,    74,    75,    95,    96,   108,   109,   118,
2185 >     126,   476,   477,   478,   479,   480,   481,   482,   483,   484,
2186 >     485,   486,   487,   488,   489,   490,   491,   216,   216,   216,
2187 >       1,    61,   404,   405,   406,   216,     1,     6,     7,    12,
2188 >      20,    26,    28,    29,    30,    35,    41,    42,    44,    45,
2189 >      46,    50,    55,    59,    60,    63,    72,    79,    80,    82,
2190 >      83,    84,    85,    86,    97,   103,   104,   105,   107,   110,
2191 >     111,   114,   147,   151,   154,   155,   156,   157,   158,   161,
2192 >     162,   201,   202,   203,   206,   211,   418,   419,   420,   421,
2193 >     422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
2194 >     432,   433,   434,   435,   436,   437,   438,   439,   440,   441,
2195 >     442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
2196 >     452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
2197 >     462,   463,   464,   468,   472,   473,   474,   216,   216,   216,
2198 >       1,   207,   260,   261,   262,   263,   264,     1,    87,   113,
2199 >     227,   228,   229,   230,   216,   216,     1,    37,    51,    52,
2200 >      53,    54,    69,   493,   494,   495,   496,   497,   498,   499,
2201 >     500,     1,    24,    57,    89,    91,    92,   127,   129,   130,
2202 >     131,   132,   146,   170,   180,   208,   209,   232,   233,   234,
2203 >     235,   240,   241,   242,   243,   244,   245,   246,   247,   248,
2204 >     249,   250,   251,   252,   216,   216,     1,    89,   345,   346,
2205 >     347,   214,   217,   217,   217,   215,   255,   217,   217,   217,
2206 >     217,   217,   217,   217,   217,   217,   217,   217,   217,   217,
2207 >     217,   215,   477,     1,    15,    16,    19,    76,    77,    78,
2208 >      81,    89,   100,   101,   115,   142,   183,   293,   294,   295,
2209 >     296,   297,   298,   299,   300,   301,   302,   303,   304,   305,
2210 >     306,   307,     1,     3,     5,    17,    32,    36,    56,    58,
2211 >      68,    89,   116,   143,   170,   208,   369,   370,   371,   372,
2212 >     373,   374,   375,   376,   377,   378,   382,   383,   384,   385,
2213 >     386,     1,    61,   119,   399,   400,   401,   402,   217,   215,
2214 >     405,     1,    89,   119,   150,   409,   413,   414,   415,   416,
2215 >     217,   217,   217,   217,   217,   217,   217,   217,   217,   217,
2216 >     217,   217,   217,   217,   217,   217,   217,   217,   217,   217,
2217 >     217,   217,   217,   217,   217,   217,   217,   217,   217,   469,
2218 >     217,   465,   217,   217,   217,   217,   217,   217,   217,   217,
2219 >     217,   217,   217,   217,   217,   217,   217,   217,   217,   215,
2220 >     419,     1,    17,    32,    36,   112,   120,   121,   152,   205,
2221 >     324,   325,   326,   327,   328,   329,   330,   334,   335,   336,
2222 >       1,   119,   150,   205,   389,   393,   394,   395,   396,     1,
2223 >      36,    56,    61,   116,   310,   314,   315,   316,   320,   321,
2224 >     214,   217,   215,   261,   213,   214,   217,   217,   215,   228,
2225 >       1,    17,    32,    36,    89,   112,   128,   191,   205,   275,
2226 >     276,   277,   278,   279,   280,   281,   282,   283,   287,     1,
2227 >      14,    93,   119,   339,   340,   341,   342,   343,   217,   217,
2228 >     217,   217,   217,   217,   215,   494,   214,   217,   217,   217,
2229 >     217,   217,   217,   217,   217,   217,   217,   217,   217,   217,
2230 >     217,   217,   215,   233,     1,    89,   150,   205,   350,   351,
2231 >     352,   353,   354,     1,    89,   150,   360,   361,   362,   363,
2232 >     217,   215,   346,   117,   117,   117,   214,    99,    99,   159,
2233 >      99,   223,   223,    99,    99,    99,   159,   159,    99,   223,
2234 >     159,   159,   214,   214,   217,   217,   217,   217,   217,   217,
2235 >     217,   217,   217,   217,   217,   217,   217,   215,   294,   214,
2236 >     217,   217,   217,   217,   379,   217,   217,   217,   217,   217,
2237 >     217,   217,   217,   215,   370,   217,   217,   215,   400,   117,
2238 >     214,   217,   217,   410,   215,   414,   159,   223,   223,    99,
2239 >     159,   159,    99,   117,   159,   223,   159,   223,    99,    99,
2240 >      99,   159,   159,   159,   223,    99,    99,   223,    99,    99,
2241 >     117,    99,    99,   159,   159,   217,   159,   217,   223,   223,
2242 >     159,   159,   159,   159,   159,   160,   159,   160,   159,   159,
2243 >     223,   223,   117,   223,   159,   159,   159,   214,   214,   217,
2244 >     217,   331,   217,   217,   217,   217,   217,   215,   325,   217,
2245 >     390,   217,   215,   394,   214,   311,   217,   217,   217,   215,
2246 >     315,   159,   214,   216,   117,   117,   214,   214,   217,   217,
2247 >     288,   217,   217,   217,   284,   217,   215,   276,   214,   217,
2248 >     217,   217,   215,   340,   159,   159,   117,   159,   159,   223,
2249 >     214,   117,   159,   117,   117,   117,   117,   117,   117,   133,
2250 >     134,   236,   237,   133,   134,   238,   239,   117,   117,    99,
2251 >     117,   117,   214,   214,   217,   355,   217,   215,   351,   214,
2252 >     217,   364,   215,   361,   117,   214,   214,   214,   214,   214,
2253 >     214,   214,   137,   138,   139,   140,   141,   222,   223,   214,
2254 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2255 >      99,    99,   223,    99,    99,    99,    99,   117,    99,    99,
2256 >     223,    99,   225,   225,   214,   117,   177,   178,   117,   159,
2257 >     217,   117,   117,   117,   117,    99,   117,   117,   117,   214,
2258 >     117,   117,   214,   214,   117,   117,   217,   214,   214,   214,
2259 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2260 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2261 >     214,   214,   214,   214,   214,   214,   214,    51,   165,   166,
2262 >     167,   168,   169,   171,   172,   174,   175,   176,   179,   181,
2263 >     182,   184,   186,   188,   189,   192,   198,   470,   471,   214,
2264 >      51,   165,   166,   167,   168,   169,   171,   172,   174,   175,
2265 >     176,   179,   181,   182,   184,   186,   188,   189,   192,   198,
2266 >     466,   467,   214,   214,   214,   214,   214,   214,   214,   214,
2267 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2268 >     214,   117,   159,   217,   117,    99,   117,   117,   117,   214,
2269 >     117,   217,   117,   214,   217,   117,   117,    99,   318,   319,
2270 >     214,   214,     1,    89,   150,   212,   265,   266,   267,   268,
2271 >     269,   214,   214,   117,   159,   217,   117,   117,   117,   217,
2272 >     117,   214,   117,   117,   117,   214,   214,   214,   214,   214,
2273 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2274 >     214,   218,   214,   218,   214,   214,   214,   214,   214,   117,
2275 >     217,   117,   214,   117,   217,   214,   214,   222,   222,   222,
2276 >     222,   222,   214,   214,   214,   214,   214,   214,   214,   214,
2277 >     214,   214,   214,     9,    10,    11,   224,   225,   214,   214,
2278 >     214,   214,   214,   214,   214,     8,   190,   380,   381,   214,
2279 >     214,   214,   214,   214,   214,   214,   214,   214,   214,   214,
2280 >     214,   122,   411,   412,   214,   218,   214,   218,   214,   214,
2281 >      13,    33,    43,    49,    65,    90,    98,   136,   153,   332,
2282 >     333,   214,   214,   214,   214,   214,   214,   122,   391,   392,
2283 >     214,    51,   185,   190,   312,   313,   214,   214,   163,   218,
2284 >     317,   214,   217,   270,   217,   215,   266,   214,   214,     4,
2285 >      25,    40,    47,    64,    87,    94,   106,   123,   124,   125,
2286 >     173,   182,   187,   193,   197,   199,   204,   210,   289,   290,
2287 >     214,   214,   214,    51,   165,   166,   167,   168,   169,   171,
2288 >     172,   174,   175,   176,   179,   181,   182,   184,   186,   188,
2289 >     189,   192,   198,   285,   286,   214,   214,   214,   214,   237,
2290 >     239,   214,    64,   135,   164,   173,   179,   193,   195,   196,
2291 >     204,   210,   356,   357,   214,   214,    64,   135,   164,   173,
2292 >     179,   193,   195,   196,   204,   210,   365,   366,   224,   224,
2293 >     224,   214,   218,   214,   218,   471,   467,   214,   218,   214,
2294 >     218,   214,   218,    99,   319,   214,   117,   217,   194,   225,
2295 >     214,   214,   218,   214,   218,   214,   218,   214,   218,   381,
2296 >     412,   333,   392,   313,   214,    40,    62,    64,   102,   172,
2297 >     173,   205,   271,   272,   214,   214,   290,   286,   357,   366,
2298 >     214,   218,   272
2299   };
2300  
2301   #define yyerrok         (yyerrstatus = 0)
# Line 2446 | Line 2325 | static const yytype_uint16 yystos[] =
2325  
2326   #define YYRECOVERING()  (!!yyerrstatus)
2327  
2328 < #define YYBACKUP(Token, Value)                                  \
2329 < do                                                              \
2330 <  if (yychar == YYEMPTY && yylen == 1)                          \
2331 <    {                                                           \
2332 <      yychar = (Token);                                         \
2333 <      yylval = (Value);                                         \
2334 <      YYPOPSTACK (1);                                           \
2335 <      goto yybackup;                                            \
2336 <    }                                                           \
2337 <  else                                                          \
2338 <    {                                                           \
2328 > #define YYBACKUP(Token, Value)                                  \
2329 > do                                                              \
2330 >  if (yychar == YYEMPTY)                                        \
2331 >    {                                                           \
2332 >      yychar = (Token);                                         \
2333 >      yylval = (Value);                                         \
2334 >      YYPOPSTACK (yylen);                                       \
2335 >      yystate = *yyssp;                                         \
2336 >      goto yybackup;                                            \
2337 >    }                                                           \
2338 >  else                                                          \
2339 >    {                                                           \
2340        yyerror (YY_("syntax error: cannot back up")); \
2341        YYERROR;                                                  \
2342      }                                                           \
# Line 2466 | Line 2346 | while (YYID (0))
2346   #define YYTERROR        1
2347   #define YYERRCODE       256
2348  
2469
2349   /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2350     If N is 0, then set CURRENT to the empty location which ends
2351     the previous symbol: RHS[0] (always defined).  */
2352  
2474 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2353   #ifndef YYLLOC_DEFAULT
2354 < # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2355 <    do                                                                  \
2356 <      if (YYID (N))                                                    \
2357 <        {                                                               \
2358 <          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2359 <          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
2360 <          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
2361 <          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
2362 <        }                                                               \
2363 <      else                                                              \
2364 <        {                                                               \
2365 <          (Current).first_line   = (Current).last_line   =              \
2366 <            YYRHSLOC (Rhs, 0).last_line;                                \
2367 <          (Current).first_column = (Current).last_column =              \
2368 <            YYRHSLOC (Rhs, 0).last_column;                              \
2369 <        }                                                               \
2354 > # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2355 >    do                                                                  \
2356 >      if (YYID (N))                                                     \
2357 >        {                                                               \
2358 >          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2359 >          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
2360 >          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
2361 >          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
2362 >        }                                                               \
2363 >      else                                                              \
2364 >        {                                                               \
2365 >          (Current).first_line   = (Current).last_line   =              \
2366 >            YYRHSLOC (Rhs, 0).last_line;                                \
2367 >          (Current).first_column = (Current).last_column =              \
2368 >            YYRHSLOC (Rhs, 0).last_column;                              \
2369 >        }                                                               \
2370      while (YYID (0))
2371   #endif
2372  
2373 + #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2374 +
2375 +
2376  
2377   /* This macro is provided for backward compatibility. */
2378  
# Line 2551 | Line 2432 | yy_symbol_value_print (yyoutput, yytype,
2432      YYSTYPE const * const yyvaluep;
2433   #endif
2434   {
2435 +  FILE *yyo = yyoutput;
2436 +  YYUSE (yyo);
2437    if (!yyvaluep)
2438      return;
2439   # ifdef YYPRINT
# Line 2802 | Line 2685 | static int
2685   yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
2686                  yytype_int16 *yyssp, int yytoken)
2687   {
2688 <  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
2688 >  YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
2689    YYSIZE_T yysize = yysize0;
2690    YYSIZE_T yysize1;
2691    enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2692    /* Internationalized format string. */
2693 <  const char *yyformat = 0;
2693 >  const char *yyformat = YY_NULL;
2694    /* Arguments of yyformat. */
2695    char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2696    /* Number of reported tokens (one for the "unexpected", one per
# Line 2867 | Line 2750 | yysyntax_error (YYSIZE_T *yymsg_alloc, c
2750                      break;
2751                    }
2752                  yyarg[yycount++] = yytname[yyx];
2753 <                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2753 >                yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
2754                  if (! (yysize <= yysize1
2755                         && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
2756                    return 2;
# Line 2959 | Line 2842 | yydestruct (yymsg, yytype, yyvaluep)
2842   }
2843  
2844  
2962 /* Prevent warnings from -Wmissing-prototypes.  */
2963 #ifdef YYPARSE_PARAM
2964 #if defined __STDC__ || defined __cplusplus
2965 int yyparse (void *YYPARSE_PARAM);
2966 #else
2967 int yyparse ();
2968 #endif
2969 #else /* ! YYPARSE_PARAM */
2970 #if defined __STDC__ || defined __cplusplus
2971 int yyparse (void);
2972 #else
2973 int yyparse ();
2974 #endif
2975 #endif /* ! YYPARSE_PARAM */
2845  
2846  
2847   /* The lookahead symbol.  */
2848   int yychar;
2849  
2850 +
2851 + #ifndef YYLVAL_INITIALIZE
2852 + # define YYLVAL_INITIALIZE()
2853 + #endif
2854 + #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2855 + # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2856 + # define YY_IGNORE_MAYBE_UNINITIALIZED_END
2857 + #endif
2858 +
2859   /* The semantic value of the lookahead symbol.  */
2860   YYSTYPE yylval;
2861  
# Line 3019 | Line 2897 | yyparse ()
2897         `yyss': related to states.
2898         `yyvs': related to semantic values.
2899  
2900 <       Refer to the stacks thru separate pointers, to allow yyoverflow
2900 >       Refer to the stacks through separate pointers, to allow yyoverflow
2901         to reallocate them elsewhere.  */
2902  
2903      /* The state stack.  */
# Line 3037 | Line 2915 | yyparse ()
2915    int yyn;
2916    int yyresult;
2917    /* Lookahead token as an internal (translated) token number.  */
2918 <  int yytoken;
2918 >  int yytoken = 0;
2919    /* The variables used to return semantic value and location from the
2920       action routines.  */
2921    YYSTYPE yyval;
# Line 3055 | Line 2933 | yyparse ()
2933       Keep to zero when no symbol should be popped.  */
2934    int yylen = 0;
2935  
3058  yytoken = 0;
2936    yyss = yyssa;
2937    yyvs = yyvsa;
2938    yystacksize = YYINITDEPTH;
# Line 3074 | Line 2951 | yyparse ()
2951    yyssp = yyss;
2952    yyvsp = yyvs;
2953  
2954 +  YYLVAL_INITIALIZE ();
2955    goto yysetstate;
2956  
2957   /*------------------------------------------------------------.
# Line 3214 | Line 3092 | yybackup:
3092    yychar = YYEMPTY;
3093  
3094    yystate = yyn;
3095 +  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3096    *++yyvsp = yylval;
3097 +  YY_IGNORE_MAYBE_UNINITIALIZED_END
3098  
3099    goto yynewstate;
3100  
# Line 3250 | Line 3130 | yyreduce:
3130    YY_REDUCE_PRINT (yyn);
3131    switch (yyn)
3132      {
3133 <        case 27:
3134 <
3135 < /* Line 1806 of yacc.c  */
3256 < #line 383 "conf_parser.y"
3133 >        case 26:
3134 > /* Line 1813 of yacc.c  */
3135 > #line 357 "conf_parser.y"
3136      { (yyval.number) = 0; }
3137      break;
3138  
3139 <  case 29:
3140 <
3141 < /* Line 1806 of yacc.c  */
3263 < #line 385 "conf_parser.y"
3139 >  case 28:
3140 > /* Line 1813 of yacc.c  */
3141 > #line 359 "conf_parser.y"
3142      {
3143                          (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number);
3144                  }
3145      break;
3146  
3147 <  case 30:
3148 <
3149 < /* Line 1806 of yacc.c  */
3272 < #line 389 "conf_parser.y"
3147 >  case 29:
3148 > /* Line 1813 of yacc.c  */
3149 > #line 363 "conf_parser.y"
3150      {
3151                          (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number);
3152                  }
3153      break;
3154  
3155 <  case 31:
3156 <
3157 < /* Line 1806 of yacc.c  */
3281 < #line 393 "conf_parser.y"
3155 >  case 30:
3156 > /* Line 1813 of yacc.c  */
3157 > #line 367 "conf_parser.y"
3158      {
3159                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 + (yyvsp[(3) - (3)].number);
3160                  }
3161      break;
3162  
3163 <  case 32:
3164 <
3165 < /* Line 1806 of yacc.c  */
3290 < #line 397 "conf_parser.y"
3163 >  case 31:
3164 > /* Line 1813 of yacc.c  */
3165 > #line 371 "conf_parser.y"
3166      {
3167                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 + (yyvsp[(3) - (3)].number);
3168                  }
3169      break;
3170  
3171 <  case 33:
3172 <
3173 < /* Line 1806 of yacc.c  */
3299 < #line 401 "conf_parser.y"
3171 >  case 32:
3172 > /* Line 1813 of yacc.c  */
3173 > #line 375 "conf_parser.y"
3174      {
3175                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 + (yyvsp[(3) - (3)].number);
3176                  }
3177      break;
3178  
3179 <  case 34:
3180 <
3181 < /* Line 1806 of yacc.c  */
3308 < #line 405 "conf_parser.y"
3179 >  case 33:
3180 > /* Line 1813 of yacc.c  */
3181 > #line 379 "conf_parser.y"
3182      {
3183                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 + (yyvsp[(3) - (3)].number);
3184                  }
3185      break;
3186  
3187 <  case 35:
3188 <
3189 < /* Line 1806 of yacc.c  */
3317 < #line 410 "conf_parser.y"
3187 >  case 34:
3188 > /* Line 1813 of yacc.c  */
3189 > #line 384 "conf_parser.y"
3190      { (yyval.number) = 0; }
3191      break;
3192  
3193 <  case 37:
3194 <
3195 < /* Line 1806 of yacc.c  */
3324 < #line 411 "conf_parser.y"
3193 >  case 36:
3194 > /* Line 1813 of yacc.c  */
3195 > #line 385 "conf_parser.y"
3196      { (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number); }
3197      break;
3198  
3199 <  case 38:
3200 <
3201 < /* Line 1806 of yacc.c  */
3331 < #line 412 "conf_parser.y"
3199 >  case 37:
3200 > /* Line 1813 of yacc.c  */
3201 > #line 386 "conf_parser.y"
3202      { (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number); }
3203      break;
3204  
3205 <  case 39:
3206 <
3207 < /* Line 1806 of yacc.c  */
3338 < #line 413 "conf_parser.y"
3205 >  case 38:
3206 > /* Line 1813 of yacc.c  */
3207 > #line 387 "conf_parser.y"
3208      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 + (yyvsp[(3) - (3)].number); }
3209      break;
3210  
3211 <  case 40:
3212 <
3213 < /* Line 1806 of yacc.c  */
3345 < #line 414 "conf_parser.y"
3211 >  case 39:
3212 > /* Line 1813 of yacc.c  */
3213 > #line 388 "conf_parser.y"
3214      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 * 1024 + (yyvsp[(3) - (3)].number); }
3215      break;
3216  
3217 <  case 47:
3218 <
3219 < /* Line 1806 of yacc.c  */
3352 < #line 428 "conf_parser.y"
3217 >  case 46:
3218 > /* Line 1813 of yacc.c  */
3219 > #line 402 "conf_parser.y"
3220      {
3221    if (conf_parser_ctx.pass == 2)
3222      add_conf_module(libio_basename(yylval.string));
3223   }
3224      break;
3225  
3226 <  case 48:
3227 <
3228 < /* Line 1806 of yacc.c  */
3362 < #line 434 "conf_parser.y"
3226 >  case 47:
3227 > /* Line 1813 of yacc.c  */
3228 > #line 408 "conf_parser.y"
3229      {
3230    if (conf_parser_ctx.pass == 2)
3231      mod_add_path(yylval.string);
3232   }
3233      break;
3234  
3235 <  case 72:
3236 <
3237 < /* Line 1806 of yacc.c  */
3372 < #line 459 "conf_parser.y"
3235 >  case 71:
3236 > /* Line 1813 of yacc.c  */
3237 > #line 433 "conf_parser.y"
3238      {
3239   #ifdef HAVE_LIBCRYPTO
3240    if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
# Line 3378 | Line 3243 | yyreduce:
3243   }
3244      break;
3245  
3246 <  case 73:
3247 <
3248 < /* Line 1806 of yacc.c  */
3384 < #line 465 "conf_parser.y"
3246 >  case 72:
3247 > /* Line 1813 of yacc.c  */
3248 > #line 439 "conf_parser.y"
3249      {
3250   #ifdef HAVE_LIBCRYPTO
3251    if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
# Line 3390 | Line 3254 | yyreduce:
3254   }
3255      break;
3256  
3257 <  case 76:
3258 <
3259 < /* Line 1806 of yacc.c  */
3396 < #line 474 "conf_parser.y"
3257 >  case 75:
3258 > /* Line 1813 of yacc.c  */
3259 > #line 448 "conf_parser.y"
3260      {
3261   #ifdef HAVE_LIBCRYPTO
3262    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3402 | Line 3265 | yyreduce:
3265   }
3266      break;
3267  
3268 <  case 77:
3269 <
3270 < /* Line 1806 of yacc.c  */
3408 < #line 480 "conf_parser.y"
3268 >  case 76:
3269 > /* Line 1813 of yacc.c  */
3270 > #line 454 "conf_parser.y"
3271      {
3272   #ifdef HAVE_LIBCRYPTO
3273    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3414 | Line 3276 | yyreduce:
3276   }
3277      break;
3278  
3279 <  case 78:
3280 <
3281 < /* Line 1806 of yacc.c  */
3420 < #line 488 "conf_parser.y"
3279 >  case 77:
3280 > /* Line 1813 of yacc.c  */
3281 > #line 462 "conf_parser.y"
3282      {
3283   #ifdef HAVE_LIBCRYPTO
3284    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3457 | Line 3318 | yyreduce:
3318   }
3319      break;
3320  
3321 <  case 79:
3322 <
3323 < /* Line 1806 of yacc.c  */
3463 < #line 527 "conf_parser.y"
3321 >  case 78:
3322 > /* Line 1813 of yacc.c  */
3323 > #line 501 "conf_parser.y"
3324      {
3325   #ifdef HAVE_LIBCRYPTO
3326    if (conf_parser_ctx.pass == 1)
# Line 3520 | Line 3380 | yyreduce:
3380   }
3381      break;
3382  
3383 <  case 80:
3384 <
3385 < /* Line 1806 of yacc.c  */
3526 < #line 586 "conf_parser.y"
3383 >  case 79:
3384 > /* Line 1813 of yacc.c  */
3385 > #line 560 "conf_parser.y"
3386      {
3387   /* TBD - XXX: error reporting */
3388   #ifdef HAVE_LIBCRYPTO
# Line 3552 | Line 3411 | yyreduce:
3411   }
3412      break;
3413  
3414 <  case 81:
3415 <
3416 < /* Line 1806 of yacc.c  */
3558 < #line 614 "conf_parser.y"
3414 >  case 80:
3415 > /* Line 1813 of yacc.c  */
3416 > #line 588 "conf_parser.y"
3417      {
3418   #ifdef HAVE_LIBCRYPTO
3419    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3564 | Line 3422 | yyreduce:
3422   }
3423      break;
3424  
3425 <  case 82:
3426 <
3427 < /* Line 1806 of yacc.c  */
3570 < #line 622 "conf_parser.y"
3425 >  case 81:
3426 > /* Line 1813 of yacc.c  */
3427 > #line 596 "conf_parser.y"
3428      {
3429    /* this isn't rehashable */
3430    if (conf_parser_ctx.pass == 2 && !ServerInfo.name)
# Line 3583 | Line 3440 | yyreduce:
3440   }
3441      break;
3442  
3443 <  case 83:
3444 <
3445 < /* Line 1806 of yacc.c  */
3589 < #line 637 "conf_parser.y"
3443 >  case 82:
3444 > /* Line 1813 of yacc.c  */
3445 > #line 611 "conf_parser.y"
3446      {
3447    /* this isn't rehashable */
3448    if (conf_parser_ctx.pass == 2 && !ServerInfo.sid)
# Line 3602 | Line 3458 | yyreduce:
3458   }
3459      break;
3460  
3461 <  case 84:
3462 <
3463 < /* Line 1806 of yacc.c  */
3608 < #line 652 "conf_parser.y"
3461 >  case 83:
3462 > /* Line 1813 of yacc.c  */
3463 > #line 626 "conf_parser.y"
3464      {
3465    if (conf_parser_ctx.pass == 2)
3466    {
# Line 3615 | Line 3470 | yyreduce:
3470   }
3471      break;
3472  
3473 <  case 85:
3474 <
3475 < /* Line 1806 of yacc.c  */
3621 < #line 661 "conf_parser.y"
3473 >  case 84:
3474 > /* Line 1813 of yacc.c  */
3475 > #line 635 "conf_parser.y"
3476      {
3477    if (conf_parser_ctx.pass == 2)
3478    {
# Line 3633 | Line 3487 | yyreduce:
3487   }
3488      break;
3489  
3490 <  case 86:
3491 <
3492 < /* Line 1806 of yacc.c  */
3639 < #line 675 "conf_parser.y"
3490 >  case 85:
3491 > /* Line 1813 of yacc.c  */
3492 > #line 649 "conf_parser.y"
3493      {
3494    if (conf_parser_ctx.pass == 2)
3495    {
# Line 3646 | Line 3499 | yyreduce:
3499   }
3500      break;
3501  
3502 <  case 87:
3503 <
3504 < /* Line 1806 of yacc.c  */
3652 < #line 684 "conf_parser.y"
3502 >  case 86:
3503 > /* Line 1813 of yacc.c  */
3504 > #line 658 "conf_parser.y"
3505      {
3506    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3507    {
# Line 3678 | Line 3530 | yyreduce:
3530   }
3531      break;
3532  
3533 <  case 88:
3534 <
3535 < /* Line 1806 of yacc.c  */
3684 < #line 712 "conf_parser.y"
3533 >  case 87:
3534 > /* Line 1813 of yacc.c  */
3535 > #line 686 "conf_parser.y"
3536      {
3537   #ifdef IPV6
3538    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
# Line 3712 | Line 3563 | yyreduce:
3563   }
3564      break;
3565  
3566 <  case 89:
3567 <
3568 < /* Line 1806 of yacc.c  */
3718 < #line 742 "conf_parser.y"
3566 >  case 88:
3567 > /* Line 1813 of yacc.c  */
3568 > #line 716 "conf_parser.y"
3569      {
3570    if (conf_parser_ctx.pass == 2)
3571    {
# Line 3739 | Line 3589 | yyreduce:
3589   }
3590      break;
3591  
3592 <  case 90:
3593 <
3594 < /* Line 1806 of yacc.c  */
3745 < #line 765 "conf_parser.y"
3592 >  case 89:
3593 > /* Line 1813 of yacc.c  */
3594 > #line 739 "conf_parser.y"
3595      {
3596    if (conf_parser_ctx.pass == 2)
3597      ServerInfo.hub = yylval.number;
3598   }
3599      break;
3600  
3601 <  case 98:
3602 <
3603 < /* Line 1806 of yacc.c  */
3755 < #line 780 "conf_parser.y"
3601 >  case 97:
3602 > /* Line 1813 of yacc.c  */
3603 > #line 754 "conf_parser.y"
3604      {
3605    if (conf_parser_ctx.pass == 2)
3606    {
# Line 3762 | Line 3610 | yyreduce:
3610   }
3611      break;
3612  
3613 <  case 99:
3614 <
3615 < /* Line 1806 of yacc.c  */
3768 < #line 789 "conf_parser.y"
3613 >  case 98:
3614 > /* Line 1813 of yacc.c  */
3615 > #line 763 "conf_parser.y"
3616      {
3617    if (conf_parser_ctx.pass == 2)
3618    {
# Line 3775 | Line 3622 | yyreduce:
3622   }
3623      break;
3624  
3625 <  case 100:
3626 <
3627 < /* Line 1806 of yacc.c  */
3781 < #line 798 "conf_parser.y"
3625 >  case 99:
3626 > /* Line 1813 of yacc.c  */
3627 > #line 772 "conf_parser.y"
3628      {
3629    if (conf_parser_ctx.pass == 2)
3630    {
# Line 3788 | Line 3634 | yyreduce:
3634   }
3635      break;
3636  
3637 <  case 107:
3638 <
3639 < /* Line 1806 of yacc.c  */
3794 < #line 816 "conf_parser.y"
3637 >  case 106:
3638 > /* Line 1813 of yacc.c  */
3639 > #line 790 "conf_parser.y"
3640      {
3641    if (conf_parser_ctx.pass == 2)
3642      ConfigLoggingEntry.use_logging = yylval.number;
3643   }
3644      break;
3645  
3646 <  case 108:
3647 <
3648 < /* Line 1806 of yacc.c  */
3804 < #line 822 "conf_parser.y"
3646 >  case 107:
3647 > /* Line 1813 of yacc.c  */
3648 > #line 796 "conf_parser.y"
3649      {
3650    lfile[0] = '\0';
3651    ltype = 0;
# Line 3809 | Line 3653 | yyreduce:
3653   }
3654      break;
3655  
3656 <  case 109:
3657 <
3658 < /* Line 1806 of yacc.c  */
3815 < #line 827 "conf_parser.y"
3656 >  case 108:
3657 > /* Line 1813 of yacc.c  */
3658 > #line 801 "conf_parser.y"
3659      {
3660    if (conf_parser_ctx.pass == 2 && ltype > 0)
3661      log_add_file(ltype, lsize, lfile);
3662   }
3663      break;
3664  
3665 <  case 116:
3666 <
3667 < /* Line 1806 of yacc.c  */
3825 < #line 839 "conf_parser.y"
3665 >  case 115:
3666 > /* Line 1813 of yacc.c  */
3667 > #line 813 "conf_parser.y"
3668      {
3669    strlcpy(lfile, yylval.string, sizeof(lfile));
3670   }
3671      break;
3672  
3673 <  case 117:
3674 <
3675 < /* Line 1806 of yacc.c  */
3834 < #line 844 "conf_parser.y"
3673 >  case 116:
3674 > /* Line 1813 of yacc.c  */
3675 > #line 818 "conf_parser.y"
3676      {
3677    lsize = (yyvsp[(3) - (4)].number);
3678   }
3679      break;
3680  
3681 <  case 118:
3682 <
3683 < /* Line 1806 of yacc.c  */
3843 < #line 847 "conf_parser.y"
3681 >  case 117:
3682 > /* Line 1813 of yacc.c  */
3683 > #line 821 "conf_parser.y"
3684      {
3685    lsize = 0;
3686   }
3687      break;
3688  
3689 <  case 119:
3690 <
3691 < /* Line 1806 of yacc.c  */
3852 < #line 852 "conf_parser.y"
3689 >  case 118:
3690 > /* Line 1813 of yacc.c  */
3691 > #line 826 "conf_parser.y"
3692      {
3693    if (conf_parser_ctx.pass == 2)
3694      ltype = 0;
3695   }
3696      break;
3697  
3698 <  case 123:
3699 <
3700 < /* Line 1806 of yacc.c  */
3862 < #line 859 "conf_parser.y"
3698 >  case 122:
3699 > /* Line 1813 of yacc.c  */
3700 > #line 833 "conf_parser.y"
3701      {
3702    if (conf_parser_ctx.pass == 2)
3703      ltype = LOG_TYPE_USER;
3704   }
3705      break;
3706  
3707 <  case 124:
3708 <
3709 < /* Line 1806 of yacc.c  */
3872 < #line 863 "conf_parser.y"
3707 >  case 123:
3708 > /* Line 1813 of yacc.c  */
3709 > #line 837 "conf_parser.y"
3710      {
3711    if (conf_parser_ctx.pass == 2)
3712      ltype = LOG_TYPE_OPER;
3713   }
3714      break;
3715  
3716 <  case 125:
3717 <
3718 < /* Line 1806 of yacc.c  */
3882 < #line 867 "conf_parser.y"
3716 >  case 124:
3717 > /* Line 1813 of yacc.c  */
3718 > #line 841 "conf_parser.y"
3719      {
3720    if (conf_parser_ctx.pass == 2)
3721      ltype = LOG_TYPE_GLINE;
3722   }
3723      break;
3724  
3725 <  case 126:
3726 <
3727 < /* Line 1806 of yacc.c  */
3892 < #line 871 "conf_parser.y"
3725 >  case 125:
3726 > /* Line 1813 of yacc.c  */
3727 > #line 845 "conf_parser.y"
3728      {
3729    if (conf_parser_ctx.pass == 2)
3730      ltype = LOG_TYPE_DLINE;
3731   }
3732      break;
3733  
3734 <  case 127:
3735 <
3736 < /* Line 1806 of yacc.c  */
3902 < #line 875 "conf_parser.y"
3734 >  case 126:
3735 > /* Line 1813 of yacc.c  */
3736 > #line 849 "conf_parser.y"
3737      {
3738    if (conf_parser_ctx.pass == 2)
3739      ltype = LOG_TYPE_KLINE;
3740   }
3741      break;
3742  
3743 <  case 128:
3744 <
3745 < /* Line 1806 of yacc.c  */
3912 < #line 879 "conf_parser.y"
3743 >  case 127:
3744 > /* Line 1813 of yacc.c  */
3745 > #line 853 "conf_parser.y"
3746      {
3747    if (conf_parser_ctx.pass == 2)
3748      ltype = LOG_TYPE_KILL;
3749   }
3750      break;
3751  
3752 <  case 129:
3753 <
3754 < /* Line 1806 of yacc.c  */
3922 < #line 883 "conf_parser.y"
3752 >  case 128:
3753 > /* Line 1813 of yacc.c  */
3754 > #line 857 "conf_parser.y"
3755      {
3756    if (conf_parser_ctx.pass == 2)
3757      ltype = LOG_TYPE_DEBUG;
3758   }
3759      break;
3760  
3761 <  case 130:
3762 <
3763 < /* Line 1806 of yacc.c  */
3932 < #line 893 "conf_parser.y"
3761 >  case 129:
3762 > /* Line 1813 of yacc.c  */
3763 > #line 867 "conf_parser.y"
3764      {
3765    if (conf_parser_ctx.pass == 2)
3766    {
3767 <    yy_conf = make_conf_item(OPER_TYPE);
3768 <    yy_aconf = map_to_conf(yy_conf);
3938 <    SetConfEncrypted(yy_aconf); /* Yes, the default is encrypted */
3767 >    yy_conf = conf_make(CONF_OPER);
3768 >    SetConfEncrypted(yy_conf); /* Yes, the default is encrypted */
3769    }
3770    else
3771    {
# Line 3945 | Line 3775 | yyreduce:
3775   }
3776      break;
3777  
3778 <  case 131:
3779 <
3780 < /* Line 1806 of yacc.c  */
3951 < #line 906 "conf_parser.y"
3778 >  case 130:
3779 > /* Line 1813 of yacc.c  */
3780 > #line 879 "conf_parser.y"
3781      {
3782    if (conf_parser_ctx.pass == 2)
3783    {
# Line 3964 | Line 3793 | yyreduce:
3793  
3794      DLINK_FOREACH_SAFE(ptr, next_ptr, col_conf_list.head)
3795      {
3796 <      struct AccessItem *new_aconf;
3968 <      struct ConfItem *new_conf;
3796 >      struct MaskItem *new_conf;
3797        yy_tmp = ptr->data;
3798  
3799 <      new_conf = make_conf_item(OPER_TYPE);
3800 <      new_aconf = (struct AccessItem *)map_to_conf(new_conf);
3973 <
3974 <      new_aconf->flags = yy_aconf->flags;
3799 >      new_conf = conf_make(CONF_OPER);
3800 >      new_conf->flags = yy_conf->flags;
3801  
3802        if (yy_conf->name != NULL)
3803          DupString(new_conf->name, yy_conf->name);
3804        if (yy_tmp->user != NULL)
3805 <        DupString(new_aconf->user, yy_tmp->user);
3805 >        DupString(new_conf->user, yy_tmp->user);
3806        else
3807 <        DupString(new_aconf->user, "*");
3807 >        DupString(new_conf->user, "*");
3808        if (yy_tmp->host != NULL)
3809 <        DupString(new_aconf->host, yy_tmp->host);
3809 >        DupString(new_conf->host, yy_tmp->host);
3810        else
3811 <        DupString(new_aconf->host, "*");
3811 >        DupString(new_conf->host, "*");
3812  
3813 <      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->addr,
3814 <                                     &new_aconf->bits);
3813 >      new_conf->htype = parse_netmask(new_conf->host, &new_conf->addr,
3814 >                                     &new_conf->bits);
3815  
3816        conf_add_class_to_conf(new_conf, class_name);
3817 <      if (yy_aconf->passwd != NULL)
3818 <        DupString(new_aconf->passwd, yy_aconf->passwd);
3817 >      if (yy_conf->passwd != NULL)
3818 >        DupString(new_conf->passwd, yy_conf->passwd);
3819  
3820 <      new_aconf->port = yy_aconf->port;
3820 >      new_conf->port = yy_conf->port;
3821   #ifdef HAVE_LIBCRYPTO
3822 <      if (yy_aconf->rsa_public_key_file != NULL)
3822 >      if (yy_conf->rsa_public_key_file != NULL)
3823        {
3824          BIO *file;
3825  
3826 <        DupString(new_aconf->rsa_public_key_file,
3827 <                  yy_aconf->rsa_public_key_file);
3826 >        DupString(new_conf->rsa_public_key_file,
3827 >                  yy_conf->rsa_public_key_file);
3828  
3829 <        file = BIO_new_file(yy_aconf->rsa_public_key_file, "r");
3830 <        new_aconf->rsa_public_key = (RSA *)PEM_read_bio_RSA_PUBKEY(file,
3829 >        file = BIO_new_file(yy_conf->rsa_public_key_file, "r");
3830 >        new_conf->rsa_public_key = PEM_read_bio_RSA_PUBKEY(file,
3831                                                             NULL, 0, NULL);
3832          BIO_set_close(file, BIO_CLOSE);
3833          BIO_free(file);
# Line 4009 | Line 3835 | yyreduce:
3835   #endif
3836  
3837   #ifdef HAVE_LIBCRYPTO
3838 <      if (yy_tmp->name && (yy_tmp->passwd || yy_aconf->rsa_public_key)
3838 >      if (yy_tmp->name && (yy_tmp->passwd || yy_conf->rsa_public_key)
3839            && yy_tmp->host)
3840   #else
3841        if (yy_tmp->name && yy_tmp->passwd && yy_tmp->host)
# Line 4025 | Line 3851 | yyreduce:
3851      }
3852  
3853      yy_conf = NULL;
4028    yy_aconf = NULL;
4029
3854  
3855      MyFree(class_name);
3856      class_name = NULL;
# Line 4034 | Line 3858 | yyreduce:
3858   }
3859      break;
3860  
3861 <  case 143:
3862 <
3863 < /* Line 1806 of yacc.c  */
4040 < #line 996 "conf_parser.y"
3861 >  case 142:
3862 > /* Line 1813 of yacc.c  */
3863 > #line 964 "conf_parser.y"
3864      {
3865    if (conf_parser_ctx.pass == 2)
3866    {
# Line 4047 | Line 3870 | yyreduce:
3870   }
3871      break;
3872  
3873 <  case 144:
3874 <
3875 < /* Line 1806 of yacc.c  */
4053 < #line 1005 "conf_parser.y"
3873 >  case 143:
3874 > /* Line 1813 of yacc.c  */
3875 > #line 973 "conf_parser.y"
3876      {
3877    if (conf_parser_ctx.pass == 2)
3878    {
# Line 4067 | Line 3889 | yyreduce:
3889  
3890      split_nuh(&nuh);
3891  
3892 <    if (yy_aconf->user == NULL)
3892 >    if (yy_conf->user == NULL)
3893      {
3894 <      DupString(yy_aconf->user, userbuf);
3895 <      DupString(yy_aconf->host, hostbuf);
3894 >      DupString(yy_conf->user, userbuf);
3895 >      DupString(yy_conf->host, hostbuf);
3896  
3897 <      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->addr,
3898 <                                    &yy_aconf->bits);
3897 >      yy_conf->htype = parse_netmask(yy_conf->host, &yy_conf->addr,
3898 >                                    &yy_conf->bits);
3899      }
3900      else
3901      {
# Line 4088 | Line 3910 | yyreduce:
3910   }
3911      break;
3912  
3913 <  case 145:
3914 <
3915 < /* Line 1806 of yacc.c  */
4094 < #line 1042 "conf_parser.y"
3913 >  case 144:
3914 > /* Line 1813 of yacc.c  */
3915 > #line 1010 "conf_parser.y"
3916      {
3917    if (conf_parser_ctx.pass == 2)
3918    {
3919 <    if (yy_aconf->passwd != NULL)
3920 <      memset(yy_aconf->passwd, 0, strlen(yy_aconf->passwd));
3919 >    if (yy_conf->passwd != NULL)
3920 >      memset(yy_conf->passwd, 0, strlen(yy_conf->passwd));
3921  
3922 <    MyFree(yy_aconf->passwd);
3923 <    DupString(yy_aconf->passwd, yylval.string);
3922 >    MyFree(yy_conf->passwd);
3923 >    DupString(yy_conf->passwd, yylval.string);
3924    }
3925   }
3926      break;
3927  
3928 <  case 146:
3929 <
3930 < /* Line 1806 of yacc.c  */
4110 < #line 1054 "conf_parser.y"
3928 >  case 145:
3929 > /* Line 1813 of yacc.c  */
3930 > #line 1022 "conf_parser.y"
3931      {
3932    if (conf_parser_ctx.pass == 2)
3933    {
3934      if (yylval.number)
3935 <      SetConfEncrypted(yy_aconf);
3935 >      SetConfEncrypted(yy_conf);
3936      else
3937 <      ClearConfEncrypted(yy_aconf);
3937 >      ClearConfEncrypted(yy_conf);
3938    }
3939   }
3940      break;
3941  
3942 <  case 147:
3943 <
3944 < /* Line 1806 of yacc.c  */
4125 < #line 1065 "conf_parser.y"
3942 >  case 146:
3943 > /* Line 1813 of yacc.c  */
3944 > #line 1033 "conf_parser.y"
3945      {
3946   #ifdef HAVE_LIBCRYPTO
3947    if (conf_parser_ctx.pass == 2)
3948    {
3949      BIO *file;
3950  
3951 <    if (yy_aconf->rsa_public_key != NULL)
3951 >    if (yy_conf->rsa_public_key != NULL)
3952      {
3953 <      RSA_free(yy_aconf->rsa_public_key);
3954 <      yy_aconf->rsa_public_key = NULL;
3953 >      RSA_free(yy_conf->rsa_public_key);
3954 >      yy_conf->rsa_public_key = NULL;
3955      }
3956  
3957 <    if (yy_aconf->rsa_public_key_file != NULL)
3957 >    if (yy_conf->rsa_public_key_file != NULL)
3958      {
3959 <      MyFree(yy_aconf->rsa_public_key_file);
3960 <      yy_aconf->rsa_public_key_file = NULL;
3959 >      MyFree(yy_conf->rsa_public_key_file);
3960 >      yy_conf->rsa_public_key_file = NULL;
3961      }
3962  
3963 <    DupString(yy_aconf->rsa_public_key_file, yylval.string);
3963 >    DupString(yy_conf->rsa_public_key_file, yylval.string);
3964      file = BIO_new_file(yylval.string, "r");
3965  
3966      if (file == NULL)
# Line 4150 | Line 3969 | yyreduce:
3969        break;
3970      }
3971  
3972 <    yy_aconf->rsa_public_key = (RSA *)PEM_read_bio_RSA_PUBKEY(file, NULL, 0, NULL);
3972 >    yy_conf->rsa_public_key = PEM_read_bio_RSA_PUBKEY(file, NULL, 0, NULL);
3973  
3974 <    if (yy_aconf->rsa_public_key == NULL)
3974 >    if (yy_conf->rsa_public_key == NULL)
3975      {
3976        yyerror("Ignoring rsa_public_key_file -- Key invalid; check key syntax.");
3977        break;
# Line 4165 | Line 3984 | yyreduce:
3984   }
3985      break;
3986  
3987 <  case 148:
3988 <
3989 < /* Line 1806 of yacc.c  */
4171 < #line 1107 "conf_parser.y"
3987 >  case 147:
3988 > /* Line 1813 of yacc.c  */
3989 > #line 1075 "conf_parser.y"
3990      {
3991    if (conf_parser_ctx.pass == 2)
3992    {
# Line 4178 | Line 3996 | yyreduce:
3996   }
3997      break;
3998  
3999 <  case 149:
3999 >  case 148:
4000 > /* Line 1813 of yacc.c  */
4001 > #line 1084 "conf_parser.y"
4002 >    {
4003 >  if (conf_parser_ctx.pass == 2)
4004 >    yy_conf->modes = 0;
4005 > }
4006 >    break;
4007  
4008 < /* Line 1806 of yacc.c  */
4009 < #line 1116 "conf_parser.y"
4008 >  case 152:
4009 > /* Line 1813 of yacc.c  */
4010 > #line 1091 "conf_parser.y"
4011      {
4012    if (conf_parser_ctx.pass == 2)
4013 <    yy_aconf->modes = 0;
4013 >    yy_conf->modes |= UMODE_BOTS;
4014   }
4015      break;
4016  
4017    case 153:
4018 <
4019 < /* Line 1806 of yacc.c  */
4194 < #line 1123 "conf_parser.y"
4018 > /* Line 1813 of yacc.c  */
4019 > #line 1095 "conf_parser.y"
4020      {
4021    if (conf_parser_ctx.pass == 2)
4022 <    yy_aconf->modes |= UMODE_BOTS;
4022 >    yy_conf->modes |= UMODE_CCONN;
4023   }
4024      break;
4025  
4026    case 154:
4027 <
4028 < /* Line 1806 of yacc.c  */
4204 < #line 1127 "conf_parser.y"
4027 > /* Line 1813 of yacc.c  */
4028 > #line 1099 "conf_parser.y"
4029      {
4030    if (conf_parser_ctx.pass == 2)
4031 <    yy_aconf->modes |= UMODE_CCONN;
4031 >    yy_conf->modes |= UMODE_CCONN_FULL;
4032   }
4033      break;
4034  
4035    case 155:
4036 <
4037 < /* Line 1806 of yacc.c  */
4214 < #line 1131 "conf_parser.y"
4036 > /* Line 1813 of yacc.c  */
4037 > #line 1103 "conf_parser.y"
4038      {
4039    if (conf_parser_ctx.pass == 2)
4040 <    yy_aconf->modes |= UMODE_CCONN_FULL;
4040 >    yy_conf->modes |= UMODE_DEAF;
4041   }
4042      break;
4043  
4044    case 156:
4045 <
4046 < /* Line 1806 of yacc.c  */
4224 < #line 1135 "conf_parser.y"
4045 > /* Line 1813 of yacc.c  */
4046 > #line 1107 "conf_parser.y"
4047      {
4048    if (conf_parser_ctx.pass == 2)
4049 <    yy_aconf->modes |= UMODE_DEAF;
4049 >    yy_conf->modes |= UMODE_DEBUG;
4050   }
4051      break;
4052  
4053    case 157:
4054 <
4055 < /* Line 1806 of yacc.c  */
4234 < #line 1139 "conf_parser.y"
4054 > /* Line 1813 of yacc.c  */
4055 > #line 1111 "conf_parser.y"
4056      {
4057    if (conf_parser_ctx.pass == 2)
4058 <    yy_aconf->modes |= UMODE_DEBUG;
4058 >    yy_conf->modes |= UMODE_FULL;
4059   }
4060      break;
4061  
4062    case 158:
4063 <
4064 < /* Line 1806 of yacc.c  */
4244 < #line 1143 "conf_parser.y"
4063 > /* Line 1813 of yacc.c  */
4064 > #line 1115 "conf_parser.y"
4065      {
4066    if (conf_parser_ctx.pass == 2)
4067 <    yy_aconf->modes |= UMODE_FULL;
4067 >    yy_conf->modes |= UMODE_HIDDEN;
4068   }
4069      break;
4070  
4071    case 159:
4072 <
4073 < /* Line 1806 of yacc.c  */
4254 < #line 1147 "conf_parser.y"
4072 > /* Line 1813 of yacc.c  */
4073 > #line 1119 "conf_parser.y"
4074      {
4075    if (conf_parser_ctx.pass == 2)
4076 <    yy_aconf->modes |= UMODE_HIDDEN;
4076 >    yy_conf->modes |= UMODE_SKILL;
4077   }
4078      break;
4079  
4080    case 160:
4081 <
4082 < /* Line 1806 of yacc.c  */
4264 < #line 1151 "conf_parser.y"
4081 > /* Line 1813 of yacc.c  */
4082 > #line 1123 "conf_parser.y"
4083      {
4084    if (conf_parser_ctx.pass == 2)
4085 <    yy_aconf->modes |= UMODE_SKILL;
4085 >    yy_conf->modes |= UMODE_NCHANGE;
4086   }
4087      break;
4088  
4089    case 161:
4090 <
4091 < /* Line 1806 of yacc.c  */
4274 < #line 1155 "conf_parser.y"
4090 > /* Line 1813 of yacc.c  */
4091 > #line 1127 "conf_parser.y"
4092      {
4093    if (conf_parser_ctx.pass == 2)
4094 <    yy_aconf->modes |= UMODE_NCHANGE;
4094 >    yy_conf->modes |= UMODE_REJ;
4095   }
4096      break;
4097  
4098    case 162:
4099 <
4100 < /* Line 1806 of yacc.c  */
4284 < #line 1159 "conf_parser.y"
4099 > /* Line 1813 of yacc.c  */
4100 > #line 1131 "conf_parser.y"
4101      {
4102    if (conf_parser_ctx.pass == 2)
4103 <    yy_aconf->modes |= UMODE_REJ;
4103 >    yy_conf->modes |= UMODE_UNAUTH;
4104   }
4105      break;
4106  
4107    case 163:
4108 <
4109 < /* Line 1806 of yacc.c  */
4294 < #line 1163 "conf_parser.y"
4108 > /* Line 1813 of yacc.c  */
4109 > #line 1135 "conf_parser.y"
4110      {
4111    if (conf_parser_ctx.pass == 2)
4112 <    yy_aconf->modes |= UMODE_UNAUTH;
4112 >    yy_conf->modes |= UMODE_SPY;
4113   }
4114      break;
4115  
4116    case 164:
4117 <
4118 < /* Line 1806 of yacc.c  */
4304 < #line 1167 "conf_parser.y"
4117 > /* Line 1813 of yacc.c  */
4118 > #line 1139 "conf_parser.y"
4119      {
4120    if (conf_parser_ctx.pass == 2)
4121 <    yy_aconf->modes |= UMODE_SPY;
4121 >    yy_conf->modes |= UMODE_EXTERNAL;
4122   }
4123      break;
4124  
4125    case 165:
4126 <
4127 < /* Line 1806 of yacc.c  */
4314 < #line 1171 "conf_parser.y"
4126 > /* Line 1813 of yacc.c  */
4127 > #line 1143 "conf_parser.y"
4128      {
4129    if (conf_parser_ctx.pass == 2)
4130 <    yy_aconf->modes |= UMODE_EXTERNAL;
4130 >    yy_conf->modes |= UMODE_OPERWALL;
4131   }
4132      break;
4133  
4134    case 166:
4135 <
4136 < /* Line 1806 of yacc.c  */
4324 < #line 1175 "conf_parser.y"
4135 > /* Line 1813 of yacc.c  */
4136 > #line 1147 "conf_parser.y"
4137      {
4138    if (conf_parser_ctx.pass == 2)
4139 <    yy_aconf->modes |= UMODE_OPERWALL;
4139 >    yy_conf->modes |= UMODE_SERVNOTICE;
4140   }
4141      break;
4142  
4143    case 167:
4144 <
4145 < /* Line 1806 of yacc.c  */
4334 < #line 1179 "conf_parser.y"
4144 > /* Line 1813 of yacc.c  */
4145 > #line 1151 "conf_parser.y"
4146      {
4147    if (conf_parser_ctx.pass == 2)
4148 <    yy_aconf->modes |= UMODE_SERVNOTICE;
4148 >    yy_conf->modes |= UMODE_INVISIBLE;
4149   }
4150      break;
4151  
4152    case 168:
4153 <
4154 < /* Line 1806 of yacc.c  */
4344 < #line 1183 "conf_parser.y"
4153 > /* Line 1813 of yacc.c  */
4154 > #line 1155 "conf_parser.y"
4155      {
4156    if (conf_parser_ctx.pass == 2)
4157 <    yy_aconf->modes |= UMODE_INVISIBLE;
4157 >    yy_conf->modes |= UMODE_WALLOP;
4158   }
4159      break;
4160  
4161    case 169:
4162 <
4163 < /* Line 1806 of yacc.c  */
4354 < #line 1187 "conf_parser.y"
4162 > /* Line 1813 of yacc.c  */
4163 > #line 1159 "conf_parser.y"
4164      {
4165    if (conf_parser_ctx.pass == 2)
4166 <    yy_aconf->modes |= UMODE_WALLOP;
4166 >    yy_conf->modes |= UMODE_SOFTCALLERID;
4167   }
4168      break;
4169  
4170    case 170:
4171 <
4172 < /* Line 1806 of yacc.c  */
4364 < #line 1191 "conf_parser.y"
4171 > /* Line 1813 of yacc.c  */
4172 > #line 1163 "conf_parser.y"
4173      {
4174    if (conf_parser_ctx.pass == 2)
4175 <    yy_aconf->modes |= UMODE_SOFTCALLERID;
4175 >    yy_conf->modes |= UMODE_CALLERID;
4176   }
4177      break;
4178  
4179    case 171:
4180 <
4181 < /* Line 1806 of yacc.c  */
4374 < #line 1195 "conf_parser.y"
4180 > /* Line 1813 of yacc.c  */
4181 > #line 1167 "conf_parser.y"
4182      {
4183    if (conf_parser_ctx.pass == 2)
4184 <    yy_aconf->modes |= UMODE_CALLERID;
4184 >    yy_conf->modes |= UMODE_LOCOPS;
4185   }
4186      break;
4187  
4188    case 172:
4189 <
4190 < /* Line 1806 of yacc.c  */
4384 < #line 1199 "conf_parser.y"
4189 > /* Line 1813 of yacc.c  */
4190 > #line 1173 "conf_parser.y"
4191      {
4192    if (conf_parser_ctx.pass == 2)
4193 <    yy_aconf->modes |= UMODE_LOCOPS;
4193 >    yy_conf->port = 0;
4194   }
4195      break;
4196  
4197 <  case 173:
4198 <
4199 < /* Line 1806 of yacc.c  */
4394 < #line 1205 "conf_parser.y"
4197 >  case 176:
4198 > /* Line 1813 of yacc.c  */
4199 > #line 1180 "conf_parser.y"
4200      {
4201    if (conf_parser_ctx.pass == 2)
4202 <    yy_aconf->port = 0;
4202 >    yy_conf->port |= OPER_FLAG_GLOBAL_KILL;
4203   }
4204      break;
4205  
4206    case 177:
4207 <
4208 < /* Line 1806 of yacc.c  */
4404 < #line 1212 "conf_parser.y"
4207 > /* Line 1813 of yacc.c  */
4208 > #line 1184 "conf_parser.y"
4209      {
4210    if (conf_parser_ctx.pass == 2)
4211 <    yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4211 >    yy_conf->port |= OPER_FLAG_REMOTE;
4212   }
4213      break;
4214  
4215    case 178:
4216 <
4217 < /* Line 1806 of yacc.c  */
4414 < #line 1216 "conf_parser.y"
4216 > /* Line 1813 of yacc.c  */
4217 > #line 1188 "conf_parser.y"
4218      {
4219    if (conf_parser_ctx.pass == 2)
4220 <    yy_aconf->port |= OPER_FLAG_REMOTE;
4220 >    yy_conf->port |= OPER_FLAG_K;
4221   }
4222      break;
4223  
4224    case 179:
4225 <
4226 < /* Line 1806 of yacc.c  */
4424 < #line 1220 "conf_parser.y"
4225 > /* Line 1813 of yacc.c  */
4226 > #line 1192 "conf_parser.y"
4227      {
4228    if (conf_parser_ctx.pass == 2)
4229 <    yy_aconf->port |= OPER_FLAG_K;
4229 >    yy_conf->port |= OPER_FLAG_UNKLINE;
4230   }
4231      break;
4232  
4233    case 180:
4234 <
4235 < /* Line 1806 of yacc.c  */
4434 < #line 1224 "conf_parser.y"
4234 > /* Line 1813 of yacc.c  */
4235 > #line 1196 "conf_parser.y"
4236      {
4237    if (conf_parser_ctx.pass == 2)
4238 <    yy_aconf->port |= OPER_FLAG_UNKLINE;
4238 >    yy_conf->port |= OPER_FLAG_DLINE;
4239   }
4240      break;
4241  
4242    case 181:
4243 <
4244 < /* Line 1806 of yacc.c  */
4444 < #line 1228 "conf_parser.y"
4243 > /* Line 1813 of yacc.c  */
4244 > #line 1200 "conf_parser.y"
4245      {
4246    if (conf_parser_ctx.pass == 2)
4247 <    yy_aconf->port |= OPER_FLAG_DLINE;
4247 >    yy_conf->port |= OPER_FLAG_UNDLINE;
4248   }
4249      break;
4250  
4251    case 182:
4252 <
4253 < /* Line 1806 of yacc.c  */
4454 < #line 1232 "conf_parser.y"
4252 > /* Line 1813 of yacc.c  */
4253 > #line 1204 "conf_parser.y"
4254      {
4255    if (conf_parser_ctx.pass == 2)
4256 <    yy_aconf->port |= OPER_FLAG_UNDLINE;
4256 >    yy_conf->port |= OPER_FLAG_X;
4257   }
4258      break;
4259  
4260    case 183:
4261 <
4262 < /* Line 1806 of yacc.c  */
4464 < #line 1236 "conf_parser.y"
4261 > /* Line 1813 of yacc.c  */
4262 > #line 1208 "conf_parser.y"
4263      {
4264    if (conf_parser_ctx.pass == 2)
4265 <    yy_aconf->port |= OPER_FLAG_X;
4265 >    yy_conf->port |= OPER_FLAG_GLINE;
4266   }
4267      break;
4268  
4269    case 184:
4270 <
4271 < /* Line 1806 of yacc.c  */
4474 < #line 1240 "conf_parser.y"
4270 > /* Line 1813 of yacc.c  */
4271 > #line 1212 "conf_parser.y"
4272      {
4273    if (conf_parser_ctx.pass == 2)
4274 <    yy_aconf->port |= OPER_FLAG_GLINE;
4274 >    yy_conf->port |= OPER_FLAG_DIE;
4275   }
4276      break;
4277  
4278    case 185:
4279 <
4280 < /* Line 1806 of yacc.c  */
4484 < #line 1244 "conf_parser.y"
4279 > /* Line 1813 of yacc.c  */
4280 > #line 1216 "conf_parser.y"
4281      {
4282    if (conf_parser_ctx.pass == 2)
4283 <    yy_aconf->port |= OPER_FLAG_DIE;
4283 >    yy_conf->port |= OPER_FLAG_RESTART;
4284   }
4285      break;
4286  
4287    case 186:
4288 <
4289 < /* Line 1806 of yacc.c  */
4494 < #line 1248 "conf_parser.y"
4288 > /* Line 1813 of yacc.c  */
4289 > #line 1220 "conf_parser.y"
4290      {
4291    if (conf_parser_ctx.pass == 2)
4292 <    yy_aconf->port |= OPER_FLAG_RESTART;
4292 >    yy_conf->port |= OPER_FLAG_REHASH;
4293   }
4294      break;
4295  
4296    case 187:
4297 <
4298 < /* Line 1806 of yacc.c  */
4504 < #line 1252 "conf_parser.y"
4297 > /* Line 1813 of yacc.c  */
4298 > #line 1224 "conf_parser.y"
4299      {
4300    if (conf_parser_ctx.pass == 2)
4301 <    yy_aconf->port |= OPER_FLAG_REHASH;
4301 >    yy_conf->port |= OPER_FLAG_ADMIN;
4302   }
4303      break;
4304  
4305    case 188:
4306 <
4307 < /* Line 1806 of yacc.c  */
4514 < #line 1256 "conf_parser.y"
4306 > /* Line 1813 of yacc.c  */
4307 > #line 1228 "conf_parser.y"
4308      {
4309    if (conf_parser_ctx.pass == 2)
4310 <    yy_aconf->port |= OPER_FLAG_ADMIN;
4310 >    yy_conf->port |= OPER_FLAG_N;
4311   }
4312      break;
4313  
4314    case 189:
4315 <
4316 < /* Line 1806 of yacc.c  */
4524 < #line 1260 "conf_parser.y"
4315 > /* Line 1813 of yacc.c  */
4316 > #line 1232 "conf_parser.y"
4317      {
4318    if (conf_parser_ctx.pass == 2)
4319 <    yy_aconf->port |= OPER_FLAG_N;
4319 >    yy_conf->port |= OPER_FLAG_OPERWALL;
4320   }
4321      break;
4322  
4323    case 190:
4324 <
4325 < /* Line 1806 of yacc.c  */
4534 < #line 1264 "conf_parser.y"
4324 > /* Line 1813 of yacc.c  */
4325 > #line 1236 "conf_parser.y"
4326      {
4327    if (conf_parser_ctx.pass == 2)
4328 <    yy_aconf->port |= OPER_FLAG_OPERWALL;
4328 >    yy_conf->port |= OPER_FLAG_GLOBOPS;
4329   }
4330      break;
4331  
4332    case 191:
4333 <
4334 < /* Line 1806 of yacc.c  */
4544 < #line 1268 "conf_parser.y"
4333 > /* Line 1813 of yacc.c  */
4334 > #line 1240 "conf_parser.y"
4335      {
4336    if (conf_parser_ctx.pass == 2)
4337 <    yy_aconf->port |= OPER_FLAG_GLOBOPS;
4337 >    yy_conf->port |= OPER_FLAG_OPER_SPY;
4338   }
4339      break;
4340  
4341    case 192:
4342 <
4343 < /* Line 1806 of yacc.c  */
4554 < #line 1272 "conf_parser.y"
4342 > /* Line 1813 of yacc.c  */
4343 > #line 1244 "conf_parser.y"
4344      {
4345    if (conf_parser_ctx.pass == 2)
4346 <    yy_aconf->port |= OPER_FLAG_OPER_SPY;
4346 >    yy_conf->port |= OPER_FLAG_REMOTEBAN;
4347   }
4348      break;
4349  
4350    case 193:
4351 <
4352 < /* Line 1806 of yacc.c  */
4564 < #line 1276 "conf_parser.y"
4351 > /* Line 1813 of yacc.c  */
4352 > #line 1248 "conf_parser.y"
4353      {
4354    if (conf_parser_ctx.pass == 2)
4355 <    yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4355 >    yy_conf->port |= OPER_FLAG_SET;
4356   }
4357      break;
4358  
4359    case 194:
4360 <
4361 < /* Line 1806 of yacc.c  */
4574 < #line 1280 "conf_parser.y"
4360 > /* Line 1813 of yacc.c  */
4361 > #line 1252 "conf_parser.y"
4362      {
4363    if (conf_parser_ctx.pass == 2)
4364 <    yy_aconf->port |= OPER_FLAG_MODULE;
4364 >    yy_conf->port |= OPER_FLAG_MODULE;
4365   }
4366      break;
4367  
4368    case 195:
4369 <
4370 < /* Line 1806 of yacc.c  */
4584 < #line 1290 "conf_parser.y"
4369 > /* Line 1813 of yacc.c  */
4370 > #line 1262 "conf_parser.y"
4371      {
4372    if (conf_parser_ctx.pass == 1)
4373    {
4374 <    yy_conf = make_conf_item(CLASS_TYPE);
4589 <    yy_class = map_to_conf(yy_conf);
4374 >    yy_class = class_make();
4375    }
4376   }
4377      break;
4378  
4379    case 196:
4380 <
4381 < /* Line 1806 of yacc.c  */
4597 < #line 1297 "conf_parser.y"
4380 > /* Line 1813 of yacc.c  */
4381 > #line 1268 "conf_parser.y"
4382      {
4383    if (conf_parser_ctx.pass == 1)
4384    {
4601    struct ConfItem *cconf = NULL;
4385      struct ClassItem *class = NULL;
4386  
4387      if (yy_class_name == NULL)
4388 <      delete_conf_item(yy_conf);
4388 >      class_free(yy_class);
4389      else
4390      {
4391 <      cconf = find_exact_name_conf(CLASS_TYPE, NULL, yy_class_name, NULL, NULL);
4391 >      class = class_find(yy_class_name, 0);
4392  
4393 <      if (cconf != NULL)                /* The class existed already */
4393 >      if (class != NULL)                /* The class existed already */
4394        {
4395          int user_count = 0;
4396  
4397 <        rebuild_cidr_class(cconf, yy_class);
4397 >        rebuild_cidr_class(class, yy_class);
4398  
4399 <        class = map_to_conf(cconf);
4617 <
4618 <        user_count = class->curr_user_count;
4399 >        user_count = class->ref_count;
4400          memcpy(class, yy_class, sizeof(*class));
4401 <        class->curr_user_count = user_count;
4401 >        class->ref_count = user_count;
4402          class->active = 1;
4403  
4404 <        delete_conf_item(yy_conf);
4404 >        class_free(yy_class);
4405  
4406 <        MyFree(cconf->name);            /* Allows case change of class name */
4407 <        cconf->name = yy_class_name;
4406 >        MyFree(class->name);            /* Allows case change of class name */
4407 >        class->name = yy_class_name;
4408        }
4409        else      /* Brand new class */
4410        {
4411 <        MyFree(yy_conf->name);          /* just in case it was allocated */
4412 <        yy_conf->name = yy_class_name;
4411 >        MyFree(yy_class->name);          /* just in case it was allocated */
4412 >        yy_class->name = yy_class_name;
4413          yy_class->active = 1;
4414        }
4415      }
# Line 4639 | Line 4420 | yyreduce:
4420      break;
4421  
4422    case 213:
4423 <
4424 < /* Line 1806 of yacc.c  */
4644 < #line 1355 "conf_parser.y"
4423 > /* Line 1813 of yacc.c  */
4424 > #line 1322 "conf_parser.y"
4425      {
4426    if (conf_parser_ctx.pass == 1)
4427    {
# Line 4652 | Line 4432 | yyreduce:
4432      break;
4433  
4434    case 214:
4435 <
4436 < /* Line 1806 of yacc.c  */
4657 < #line 1364 "conf_parser.y"
4435 > /* Line 1813 of yacc.c  */
4436 > #line 1331 "conf_parser.y"
4437      {
4438    if (conf_parser_ctx.pass == 1)
4439      yy_class->ping_freq = (yyvsp[(3) - (4)].number);
# Line 4662 | Line 4441 | yyreduce:
4441      break;
4442  
4443    case 215:
4444 <
4445 < /* Line 1806 of yacc.c  */
4667 < #line 1370 "conf_parser.y"
4444 > /* Line 1813 of yacc.c  */
4445 > #line 1337 "conf_parser.y"
4446      {
4447    if (conf_parser_ctx.pass == 1)
4448 <    yy_class->ping_warning = (yyvsp[(3) - (4)].number);
4448 >    yy_class->max_perip = (yyvsp[(3) - (4)].number);
4449   }
4450      break;
4451  
4452    case 216:
4453 <
4454 < /* Line 1806 of yacc.c  */
4677 < #line 1376 "conf_parser.y"
4453 > /* Line 1813 of yacc.c  */
4454 > #line 1343 "conf_parser.y"
4455      {
4456    if (conf_parser_ctx.pass == 1)
4457 <    yy_class->max_perip = (yyvsp[(3) - (4)].number);
4457 >    yy_class->con_freq = (yyvsp[(3) - (4)].number);
4458   }
4459      break;
4460  
4461    case 217:
4462 <
4463 < /* Line 1806 of yacc.c  */
4687 < #line 1382 "conf_parser.y"
4462 > /* Line 1813 of yacc.c  */
4463 > #line 1349 "conf_parser.y"
4464      {
4465    if (conf_parser_ctx.pass == 1)
4466 <    yy_class->con_freq = (yyvsp[(3) - (4)].number);
4466 >    yy_class->max_total = (yyvsp[(3) - (4)].number);
4467   }
4468      break;
4469  
4470    case 218:
4471 <
4472 < /* Line 1806 of yacc.c  */
4697 < #line 1388 "conf_parser.y"
4471 > /* Line 1813 of yacc.c  */
4472 > #line 1355 "conf_parser.y"
4473      {
4474    if (conf_parser_ctx.pass == 1)
4475 <    yy_class->max_total = (yyvsp[(3) - (4)].number);
4475 >    yy_class->max_global = (yyvsp[(3) - (4)].number);
4476   }
4477      break;
4478  
4479    case 219:
4480 <
4481 < /* Line 1806 of yacc.c  */
4707 < #line 1394 "conf_parser.y"
4480 > /* Line 1813 of yacc.c  */
4481 > #line 1361 "conf_parser.y"
4482      {
4483    if (conf_parser_ctx.pass == 1)
4484 <    yy_class->max_global = (yyvsp[(3) - (4)].number);
4484 >    yy_class->max_local = (yyvsp[(3) - (4)].number);
4485   }
4486      break;
4487  
4488    case 220:
4489 <
4490 < /* Line 1806 of yacc.c  */
4717 < #line 1400 "conf_parser.y"
4489 > /* Line 1813 of yacc.c  */
4490 > #line 1367 "conf_parser.y"
4491      {
4492    if (conf_parser_ctx.pass == 1)
4493 <    yy_class->max_local = (yyvsp[(3) - (4)].number);
4493 >    yy_class->max_ident = (yyvsp[(3) - (4)].number);
4494   }
4495      break;
4496  
4497    case 221:
4498 <
4499 < /* Line 1806 of yacc.c  */
4727 < #line 1406 "conf_parser.y"
4498 > /* Line 1813 of yacc.c  */
4499 > #line 1373 "conf_parser.y"
4500      {
4501    if (conf_parser_ctx.pass == 1)
4502 <    yy_class->max_ident = (yyvsp[(3) - (4)].number);
4502 >    yy_class->max_sendq = (yyvsp[(3) - (4)].number);
4503   }
4504      break;
4505  
4506    case 222:
4507 <
4508 < /* Line 1806 of yacc.c  */
4737 < #line 1412 "conf_parser.y"
4507 > /* Line 1813 of yacc.c  */
4508 > #line 1379 "conf_parser.y"
4509      {
4510    if (conf_parser_ctx.pass == 1)
4511 <    yy_class->max_sendq = (yyvsp[(3) - (4)].number);
4511 >    if ((yyvsp[(3) - (4)].number) >= CLIENT_FLOOD_MIN && (yyvsp[(3) - (4)].number) <= CLIENT_FLOOD_MAX)
4512 >      yy_class->max_recvq = (yyvsp[(3) - (4)].number);
4513   }
4514      break;
4515  
4516    case 223:
4517 <
4518 < /* Line 1806 of yacc.c  */
4747 < #line 1418 "conf_parser.y"
4517 > /* Line 1813 of yacc.c  */
4518 > #line 1386 "conf_parser.y"
4519      {
4520    if (conf_parser_ctx.pass == 1)
4521 <    yy_class->cidr_bitlen_ipv4 = (yyvsp[(3) - (4)].number);
4521 >    yy_class->cidr_bitlen_ipv4 = (yyvsp[(3) - (4)].number) > 32 ? 32 : (yyvsp[(3) - (4)].number);
4522   }
4523      break;
4524  
4525    case 224:
4526 <
4527 < /* Line 1806 of yacc.c  */
4757 < #line 1424 "conf_parser.y"
4526 > /* Line 1813 of yacc.c  */
4527 > #line 1392 "conf_parser.y"
4528      {
4529    if (conf_parser_ctx.pass == 1)
4530 <    yy_class->cidr_bitlen_ipv6 = (yyvsp[(3) - (4)].number);
4530 >    yy_class->cidr_bitlen_ipv6 = (yyvsp[(3) - (4)].number) > 128 ? 128 : (yyvsp[(3) - (4)].number);
4531   }
4532      break;
4533  
4534    case 225:
4535 <
4536 < /* Line 1806 of yacc.c  */
4767 < #line 1430 "conf_parser.y"
4535 > /* Line 1813 of yacc.c  */
4536 > #line 1398 "conf_parser.y"
4537      {
4538    if (conf_parser_ctx.pass == 1)
4539      yy_class->number_per_cidr = (yyvsp[(3) - (4)].number);
# Line 4772 | Line 4541 | yyreduce:
4541      break;
4542  
4543    case 226:
4544 <
4545 < /* Line 1806 of yacc.c  */
4777 < #line 1439 "conf_parser.y"
4544 > /* Line 1813 of yacc.c  */
4545 > #line 1407 "conf_parser.y"
4546      {
4547    if (conf_parser_ctx.pass == 2)
4548    {
# Line 4785 | Line 4553 | yyreduce:
4553      break;
4554  
4555    case 227:
4556 <
4557 < /* Line 1806 of yacc.c  */
4790 < #line 1446 "conf_parser.y"
4556 > /* Line 1813 of yacc.c  */
4557 > #line 1414 "conf_parser.y"
4558      {
4559    if (conf_parser_ctx.pass == 2)
4560    {
# Line 4798 | Line 4565 | yyreduce:
4565      break;
4566  
4567    case 228:
4568 <
4569 < /* Line 1806 of yacc.c  */
4803 < #line 1455 "conf_parser.y"
4568 > /* Line 1813 of yacc.c  */
4569 > #line 1423 "conf_parser.y"
4570      {
4571    listener_flags = 0;
4572   }
4573      break;
4574  
4575    case 232:
4576 <
4577 < /* Line 1806 of yacc.c  */
4812 < #line 1461 "conf_parser.y"
4576 > /* Line 1813 of yacc.c  */
4577 > #line 1429 "conf_parser.y"
4578      {
4579    if (conf_parser_ctx.pass == 2)
4580      listener_flags |= LISTENER_SSL;
# Line 4817 | Line 4582 | yyreduce:
4582      break;
4583  
4584    case 233:
4585 <
4586 < /* Line 1806 of yacc.c  */
4822 < #line 1465 "conf_parser.y"
4585 > /* Line 1813 of yacc.c  */
4586 > #line 1433 "conf_parser.y"
4587      {
4588    if (conf_parser_ctx.pass == 2)
4589      listener_flags |= LISTENER_HIDDEN;
# Line 4827 | Line 4591 | yyreduce:
4591      break;
4592  
4593    case 234:
4594 <
4595 < /* Line 1806 of yacc.c  */
4832 < #line 1469 "conf_parser.y"
4594 > /* Line 1813 of yacc.c  */
4595 > #line 1437 "conf_parser.y"
4596      {
4597    if (conf_parser_ctx.pass == 2)
4598      listener_flags |= LISTENER_SERVER;
# Line 4837 | Line 4600 | yyreduce:
4600      break;
4601  
4602    case 242:
4603 <
4604 < /* Line 1806 of yacc.c  */
4842 < #line 1479 "conf_parser.y"
4603 > /* Line 1813 of yacc.c  */
4604 > #line 1447 "conf_parser.y"
4605      { listener_flags = 0; }
4606      break;
4607  
4608    case 246:
4609 <
4610 < /* Line 1806 of yacc.c  */
4849 < #line 1484 "conf_parser.y"
4609 > /* Line 1813 of yacc.c  */
4610 > #line 1452 "conf_parser.y"
4611      {
4612    if (conf_parser_ctx.pass == 2)
4613    {
# Line 4864 | Line 4625 | yyreduce:
4625      break;
4626  
4627    case 247:
4628 <
4629 < /* Line 1806 of yacc.c  */
4869 < #line 1498 "conf_parser.y"
4628 > /* Line 1813 of yacc.c  */
4629 > #line 1466 "conf_parser.y"
4630      {
4631    if (conf_parser_ctx.pass == 2)
4632    {
# Line 4888 | Line 4648 | yyreduce:
4648      break;
4649  
4650    case 248:
4651 <
4652 < /* Line 1806 of yacc.c  */
4893 < #line 1518 "conf_parser.y"
4651 > /* Line 1813 of yacc.c  */
4652 > #line 1486 "conf_parser.y"
4653      {
4654    if (conf_parser_ctx.pass == 2)
4655    {
# Line 4901 | Line 4660 | yyreduce:
4660      break;
4661  
4662    case 249:
4663 <
4664 < /* Line 1806 of yacc.c  */
4906 < #line 1527 "conf_parser.y"
4663 > /* Line 1813 of yacc.c  */
4664 > #line 1495 "conf_parser.y"
4665      {
4666    if (conf_parser_ctx.pass == 2)
4667    {
# Line 4914 | Line 4672 | yyreduce:
4672      break;
4673  
4674    case 250:
4675 <
4676 < /* Line 1806 of yacc.c  */
4919 < #line 1539 "conf_parser.y"
4675 > /* Line 1813 of yacc.c  */
4676 > #line 1507 "conf_parser.y"
4677      {
4678    if (conf_parser_ctx.pass == 2)
4679    {
4680 <    yy_conf = make_conf_item(CLIENT_TYPE);
4924 <    yy_aconf = map_to_conf(yy_conf);
4680 >    yy_conf = conf_make(CONF_CLIENT);
4681    }
4682    else
4683    {
# Line 4932 | Line 4688 | yyreduce:
4688      break;
4689  
4690    case 251:
4691 <
4692 < /* Line 1806 of yacc.c  */
4937 < #line 1551 "conf_parser.y"
4691 > /* Line 1813 of yacc.c  */
4692 > #line 1518 "conf_parser.y"
4693      {
4694    if (conf_parser_ctx.pass == 2)
4695    {
4696      struct CollectItem *yy_tmp = NULL;
4697      dlink_node *ptr = NULL, *next_ptr = NULL;
4698  
4699 <    if (yy_aconf->user && yy_aconf->host)
4699 >    if (yy_conf->user && yy_conf->host)
4700      {
4701        conf_add_class_to_conf(yy_conf, class_name);
4702 <      add_conf_by_address(CONF_CLIENT, yy_aconf);
4702 >      add_conf_by_address(CONF_CLIENT, yy_conf);
4703      }
4704      else
4705 <      delete_conf_item(yy_conf);
4705 >      conf_free(yy_conf);
4706  
4707      /* copy over settings from first struct */
4708      DLINK_FOREACH_SAFE(ptr, next_ptr, col_conf_list.head)
4709      {
4710 <      struct AccessItem *new_aconf;
4956 <      struct ConfItem *new_conf;
4957 <
4958 <      new_conf = make_conf_item(CLIENT_TYPE);
4959 <      new_aconf = map_to_conf(new_conf);
4710 >      struct MaskItem *new_conf = conf_make(CONF_CLIENT);
4711  
4712        yy_tmp = ptr->data;
4713  
4714        assert(yy_tmp->user && yy_tmp->host);
4715  
4716 <      if (yy_aconf->passwd != NULL)
4717 <        DupString(new_aconf->passwd, yy_aconf->passwd);
4716 >      if (yy_conf->passwd != NULL)
4717 >        DupString(new_conf->passwd, yy_conf->passwd);
4718        if (yy_conf->name != NULL)
4719          DupString(new_conf->name, yy_conf->name);
4720 <      if (yy_aconf->passwd != NULL)
4721 <        DupString(new_aconf->passwd, yy_aconf->passwd);
4720 >      if (yy_conf->passwd != NULL)
4721 >        DupString(new_conf->passwd, yy_conf->passwd);
4722  
4723 <      new_aconf->flags = yy_aconf->flags;
4724 <      new_aconf->port  = yy_aconf->port;
4723 >      new_conf->flags = yy_conf->flags;
4724 >      new_conf->port  = yy_conf->port;
4725  
4726 <      DupString(new_aconf->user, yy_tmp->user);
4727 <      collapse(new_aconf->user);
4726 >      DupString(new_conf->user, yy_tmp->user);
4727 >      collapse(new_conf->user);
4728  
4729 <      DupString(new_aconf->host, yy_tmp->host);
4730 <      collapse(new_aconf->host);
4729 >      DupString(new_conf->host, yy_tmp->host);
4730 >      collapse(new_conf->host);
4731  
4732        conf_add_class_to_conf(new_conf, class_name);
4733 <      add_conf_by_address(CONF_CLIENT, new_aconf);
4733 >      add_conf_by_address(CONF_CLIENT, new_conf);
4734        dlinkDelete(&yy_tmp->node, &col_conf_list);
4735        free_collect_item(yy_tmp);
4736      }
# Line 4987 | Line 4738 | yyreduce:
4738      MyFree(class_name);
4739      class_name = NULL;
4740      yy_conf = NULL;
4990    yy_aconf = NULL;
4741    }
4742   }
4743      break;
4744  
4745    case 263:
4746 <
4747 < /* Line 1806 of yacc.c  */
4998 < #line 1613 "conf_parser.y"
4746 > /* Line 1813 of yacc.c  */
4747 > #line 1575 "conf_parser.y"
4748      {
4749    if (conf_parser_ctx.pass == 2)
4750    {
# Line 5013 | Line 4762 | yyreduce:
4762  
4763      split_nuh(&nuh);
4764  
4765 <    if (yy_aconf->user == NULL)
4765 >    if (yy_conf->user == NULL)
4766      {
4767 <      DupString(yy_aconf->user, userbuf);
4768 <      DupString(yy_aconf->host, hostbuf);
4767 >      DupString(yy_conf->user, userbuf);
4768 >      DupString(yy_conf->host, hostbuf);
4769      }
4770      else
4771      {
# Line 5032 | Line 4781 | yyreduce:
4781      break;
4782  
4783    case 264:
4784 <
4785 < /* Line 1806 of yacc.c  */
5037 < #line 1648 "conf_parser.y"
4784 > /* Line 1813 of yacc.c  */
4785 > #line 1610 "conf_parser.y"
4786      {
4787    if (conf_parser_ctx.pass == 2)
4788    {
4789      /* be paranoid */
4790 <    if (yy_aconf->passwd != NULL)
4791 <      memset(yy_aconf->passwd, 0, strlen(yy_aconf->passwd));
4790 >    if (yy_conf->passwd != NULL)
4791 >      memset(yy_conf->passwd, 0, strlen(yy_conf->passwd));
4792  
4793 <    MyFree(yy_aconf->passwd);
4794 <    DupString(yy_aconf->passwd, yylval.string);
4793 >    MyFree(yy_conf->passwd);
4794 >    DupString(yy_conf->passwd, yylval.string);
4795    }
4796   }
4797      break;
4798  
4799    case 265:
4800 <
4801 < /* Line 1806 of yacc.c  */
5054 < #line 1661 "conf_parser.y"
4800 > /* Line 1813 of yacc.c  */
4801 > #line 1623 "conf_parser.y"
4802      {
4803    if (conf_parser_ctx.pass == 2)
4804    {
# Line 5062 | Line 4809 | yyreduce:
4809      break;
4810  
4811    case 266:
4812 <
4813 < /* Line 1806 of yacc.c  */
5067 < #line 1670 "conf_parser.y"
4812 > /* Line 1813 of yacc.c  */
4813 > #line 1632 "conf_parser.y"
4814      {
4815    if (conf_parser_ctx.pass == 2)
4816    {
4817      if (yylval.number)
4818 <      SetConfEncrypted(yy_aconf);
4818 >      SetConfEncrypted(yy_conf);
4819      else
4820 <      ClearConfEncrypted(yy_aconf);
4820 >      ClearConfEncrypted(yy_conf);
4821    }
4822   }
4823      break;
4824  
4825    case 267:
4826 <
4827 < /* Line 1806 of yacc.c  */
5082 < #line 1681 "conf_parser.y"
4826 > /* Line 1813 of yacc.c  */
4827 > #line 1643 "conf_parser.y"
4828      {
4829   }
4830      break;
4831  
4832    case 271:
4833 <
4834 < /* Line 1806 of yacc.c  */
5090 < #line 1686 "conf_parser.y"
4833 > /* Line 1813 of yacc.c  */
4834 > #line 1648 "conf_parser.y"
4835      {
4836    if (conf_parser_ctx.pass == 2)
4837 <    yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
4837 >    yy_conf->flags |= CONF_FLAGS_SPOOF_NOTICE;
4838   }
4839      break;
4840  
4841    case 272:
4842 <
4843 < /* Line 1806 of yacc.c  */
5100 < #line 1690 "conf_parser.y"
4842 > /* Line 1813 of yacc.c  */
4843 > #line 1652 "conf_parser.y"
4844      {
4845    if (conf_parser_ctx.pass == 2)
4846 <    yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
4846 >    yy_conf->flags |= CONF_FLAGS_NOLIMIT;
4847   }
4848      break;
4849  
4850    case 273:
4851 <
4852 < /* Line 1806 of yacc.c  */
5110 < #line 1694 "conf_parser.y"
4851 > /* Line 1813 of yacc.c  */
4852 > #line 1656 "conf_parser.y"
4853      {
4854    if (conf_parser_ctx.pass == 2)
4855 <    yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
4855 >    yy_conf->flags |= CONF_FLAGS_EXEMPTKLINE;
4856   }
4857      break;
4858  
4859    case 274:
4860 <
4861 < /* Line 1806 of yacc.c  */
5120 < #line 1698 "conf_parser.y"
4860 > /* Line 1813 of yacc.c  */
4861 > #line 1660 "conf_parser.y"
4862      {
4863    if (conf_parser_ctx.pass == 2)
4864 <    yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
4864 >    yy_conf->flags |= CONF_FLAGS_NEED_IDENTD;
4865   }
4866      break;
4867  
4868    case 275:
4869 <
4870 < /* Line 1806 of yacc.c  */
5130 < #line 1702 "conf_parser.y"
4869 > /* Line 1813 of yacc.c  */
4870 > #line 1664 "conf_parser.y"
4871      {
4872    if (conf_parser_ctx.pass == 2)
4873 <    yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
4873 >    yy_conf->flags |= CONF_FLAGS_CAN_FLOOD;
4874   }
4875      break;
4876  
4877    case 276:
4878 <
4879 < /* Line 1806 of yacc.c  */
5140 < #line 1706 "conf_parser.y"
4878 > /* Line 1813 of yacc.c  */
4879 > #line 1668 "conf_parser.y"
4880      {
4881    if (conf_parser_ctx.pass == 2)
4882 <    yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
4882 >    yy_conf->flags |= CONF_FLAGS_NO_TILDE;
4883   }
4884      break;
4885  
4886    case 277:
4887 <
4888 < /* Line 1806 of yacc.c  */
5150 < #line 1710 "conf_parser.y"
4887 > /* Line 1813 of yacc.c  */
4888 > #line 1672 "conf_parser.y"
4889      {
4890    if (conf_parser_ctx.pass == 2)
4891 <    yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
4891 >    yy_conf->flags |= CONF_FLAGS_EXEMPTGLINE;
4892   }
4893      break;
4894  
4895    case 278:
4896 <
4897 < /* Line 1806 of yacc.c  */
5160 < #line 1714 "conf_parser.y"
4896 > /* Line 1813 of yacc.c  */
4897 > #line 1676 "conf_parser.y"
4898      {
4899    if (conf_parser_ctx.pass == 2)
4900 <    yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
4900 >    yy_conf->flags |= CONF_FLAGS_EXEMPTRESV;
4901   }
4902      break;
4903  
4904    case 279:
4905 <
4906 < /* Line 1806 of yacc.c  */
5170 < #line 1718 "conf_parser.y"
4905 > /* Line 1813 of yacc.c  */
4906 > #line 1680 "conf_parser.y"
4907      {
4908    if (conf_parser_ctx.pass == 2)
4909 <    yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
4909 >    yy_conf->flags |= CONF_FLAGS_NEED_PASSWORD;
4910   }
4911      break;
4912  
4913    case 280:
4914 <
4915 < /* Line 1806 of yacc.c  */
5180 < #line 1725 "conf_parser.y"
4914 > /* Line 1813 of yacc.c  */
4915 > #line 1686 "conf_parser.y"
4916      {
4917    if (conf_parser_ctx.pass == 2)
4918    {
4919      MyFree(yy_conf->name);
4920  
4921 <    if (strlen(yylval.string) < HOSTLEN)
4921 >    if (strlen(yylval.string) <= HOSTLEN && valid_hostname(yylval.string))
4922      {    
4923        DupString(yy_conf->name, yylval.string);
4924 <      yy_aconf->flags |= CONF_FLAGS_SPOOF_IP;
4924 >      yy_conf->flags |= CONF_FLAGS_SPOOF_IP;
4925      }
4926      else
4927      {
4928 <      ilog(LOG_TYPE_IRCD, "Spoofs must be less than %d..ignoring it", HOSTLEN);
4928 >      ilog(LOG_TYPE_IRCD, "Spoof either is too long or contains invalid characters. Ignoring it.");
4929        yy_conf->name = NULL;
4930      }
4931    }
# Line 5198 | Line 4933 | yyreduce:
4933      break;
4934  
4935    case 281:
4936 <
4937 < /* Line 1806 of yacc.c  */
5203 < #line 1744 "conf_parser.y"
4936 > /* Line 1813 of yacc.c  */
4937 > #line 1705 "conf_parser.y"
4938      {
4939    if (conf_parser_ctx.pass == 2)
4940    {
4941 <    yy_aconf->flags |= CONF_FLAGS_REDIR;
4941 >    yy_conf->flags |= CONF_FLAGS_REDIR;
4942      MyFree(yy_conf->name);
4943      DupString(yy_conf->name, yylval.string);
4944    }
# Line 5212 | Line 4946 | yyreduce:
4946      break;
4947  
4948    case 282:
4949 <
4950 < /* Line 1806 of yacc.c  */
5217 < #line 1754 "conf_parser.y"
4949 > /* Line 1813 of yacc.c  */
4950 > #line 1715 "conf_parser.y"
4951      {
4952    if (conf_parser_ctx.pass == 2)
4953    {
4954 <    yy_aconf->flags |= CONF_FLAGS_REDIR;
4955 <    yy_aconf->port = (yyvsp[(3) - (4)].number);
4954 >    yy_conf->flags |= CONF_FLAGS_REDIR;
4955 >    yy_conf->port = (yyvsp[(3) - (4)].number);
4956    }
4957   }
4958      break;
4959  
4960    case 283:
4961 <
4962 < /* Line 1806 of yacc.c  */
5230 < #line 1767 "conf_parser.y"
4961 > /* Line 1813 of yacc.c  */
4962 > #line 1728 "conf_parser.y"
4963      {
4964    if (conf_parser_ctx.pass == 2)
4965    {
# Line 5238 | Line 4970 | yyreduce:
4970      break;
4971  
4972    case 284:
4973 <
4974 < /* Line 1806 of yacc.c  */
5243 < #line 1774 "conf_parser.y"
4973 > /* Line 1813 of yacc.c  */
4974 > #line 1735 "conf_parser.y"
4975      {
4976    if (conf_parser_ctx.pass == 2)
4977    {
# Line 5251 | Line 4982 | yyreduce:
4982      break;
4983  
4984    case 291:
4985 <
4986 < /* Line 1806 of yacc.c  */
5256 < #line 1786 "conf_parser.y"
4985 > /* Line 1813 of yacc.c  */
4986 > #line 1747 "conf_parser.y"
4987      {
4988    if (conf_parser_ctx.pass == 2)
4989    {
# Line 5264 | Line 4994 | yyreduce:
4994      break;
4995  
4996    case 292:
4997 <
4998 < /* Line 1806 of yacc.c  */
5269 < #line 1795 "conf_parser.y"
4997 > /* Line 1813 of yacc.c  */
4998 > #line 1756 "conf_parser.y"
4999      {
5000    if (conf_parser_ctx.pass == 2)
5001    {
# Line 5283 | Line 5012 | yyreduce:
5012      break;
5013  
5014    case 293:
5015 <
5016 < /* Line 1806 of yacc.c  */
5288 < #line 1810 "conf_parser.y"
5015 > /* Line 1813 of yacc.c  */
5016 > #line 1771 "conf_parser.y"
5017      {
5018    if (conf_parser_ctx.pass == 2)
5019    {
# Line 5297 | Line 5025 | yyreduce:
5025      break;
5026  
5027    case 299:
5028 <
5029 < /* Line 1806 of yacc.c  */
5302 < #line 1828 "conf_parser.y"
5028 > /* Line 1813 of yacc.c  */
5029 > #line 1789 "conf_parser.y"
5030      {
5031    if (conf_parser_ctx.pass == 2)
5032    {
5033      if (valid_servname(yylval.string))
5034      {
5035 <      yy_conf = make_conf_item(SERVICE_TYPE);
5035 >      yy_conf = conf_make(CONF_SERVICE);
5036        DupString(yy_conf->name, yylval.string);
5037      }
5038    }
# Line 5313 | Line 5040 | yyreduce:
5040      break;
5041  
5042    case 300:
5043 <
5044 < /* Line 1806 of yacc.c  */
5318 < #line 1843 "conf_parser.y"
5043 > /* Line 1813 of yacc.c  */
5044 > #line 1804 "conf_parser.y"
5045      {
5046    if (conf_parser_ctx.pass == 2)
5047    {
5048 <    yy_conf = make_conf_item(ULINE_TYPE);
5049 <    yy_match_item = map_to_conf(yy_conf);
5324 <    yy_match_item->action = SHARED_ALL;
5048 >    yy_conf = conf_make(CONF_ULINE);
5049 >    yy_conf->flags = SHARED_ALL;
5050    }
5051   }
5052      break;
5053  
5054    case 301:
5055 <
5056 < /* Line 1806 of yacc.c  */
5332 < #line 1851 "conf_parser.y"
5055 > /* Line 1813 of yacc.c  */
5056 > #line 1811 "conf_parser.y"
5057      {
5058    if (conf_parser_ctx.pass == 2)
5059    {
# Line 5339 | Line 5063 | yyreduce:
5063      break;
5064  
5065    case 308:
5066 <
5067 < /* Line 1806 of yacc.c  */
5344 < #line 1862 "conf_parser.y"
5066 > /* Line 1813 of yacc.c  */
5067 > #line 1822 "conf_parser.y"
5068      {
5069    if (conf_parser_ctx.pass == 2)
5070    {
# Line 5352 | Line 5075 | yyreduce:
5075      break;
5076  
5077    case 309:
5078 <
5079 < /* Line 1806 of yacc.c  */
5357 < #line 1871 "conf_parser.y"
5078 > /* Line 1813 of yacc.c  */
5079 > #line 1831 "conf_parser.y"
5080      {
5081    if (conf_parser_ctx.pass == 2)
5082    {
# Line 5371 | Line 5093 | yyreduce:
5093  
5094      split_nuh(&nuh);
5095  
5096 <    DupString(yy_match_item->user, userbuf);
5097 <    DupString(yy_match_item->host, hostbuf);
5096 >    DupString(yy_conf->user, userbuf);
5097 >    DupString(yy_conf->host, hostbuf);
5098    }
5099   }
5100      break;
5101  
5102    case 310:
5103 <
5104 < /* Line 1806 of yacc.c  */
5383 < #line 1893 "conf_parser.y"
5103 > /* Line 1813 of yacc.c  */
5104 > #line 1853 "conf_parser.y"
5105      {
5106    if (conf_parser_ctx.pass == 2)
5107 <    yy_match_item->action = 0;
5107 >    yy_conf->flags = 0;
5108   }
5109      break;
5110  
5111    case 314:
5112 <
5113 < /* Line 1806 of yacc.c  */
5393 < #line 1900 "conf_parser.y"
5112 > /* Line 1813 of yacc.c  */
5113 > #line 1860 "conf_parser.y"
5114      {
5115    if (conf_parser_ctx.pass == 2)
5116 <    yy_match_item->action |= SHARED_KLINE;
5116 >    yy_conf->flags |= SHARED_KLINE;
5117   }
5118      break;
5119  
5120    case 315:
5121 <
5122 < /* Line 1806 of yacc.c  */
5403 < #line 1904 "conf_parser.y"
5121 > /* Line 1813 of yacc.c  */
5122 > #line 1864 "conf_parser.y"
5123      {
5124    if (conf_parser_ctx.pass == 2)
5125 <    yy_match_item->action |= SHARED_UNKLINE;
5125 >    yy_conf->flags |= SHARED_UNKLINE;
5126   }
5127      break;
5128  
5129    case 316:
5130 <
5131 < /* Line 1806 of yacc.c  */
5413 < #line 1908 "conf_parser.y"
5130 > /* Line 1813 of yacc.c  */
5131 > #line 1868 "conf_parser.y"
5132      {
5133    if (conf_parser_ctx.pass == 2)
5134 <    yy_match_item->action |= SHARED_DLINE;
5134 >    yy_conf->flags |= SHARED_DLINE;
5135   }
5136      break;
5137  
5138    case 317:
5139 <
5140 < /* Line 1806 of yacc.c  */
5423 < #line 1912 "conf_parser.y"
5139 > /* Line 1813 of yacc.c  */
5140 > #line 1872 "conf_parser.y"
5141      {
5142    if (conf_parser_ctx.pass == 2)
5143 <    yy_match_item->action |= SHARED_UNDLINE;
5143 >    yy_conf->flags |= SHARED_UNDLINE;
5144   }
5145      break;
5146  
5147    case 318:
5148 <
5149 < /* Line 1806 of yacc.c  */
5433 < #line 1916 "conf_parser.y"
5148 > /* Line 1813 of yacc.c  */
5149 > #line 1876 "conf_parser.y"
5150      {
5151    if (conf_parser_ctx.pass == 2)
5152 <    yy_match_item->action |= SHARED_XLINE;
5152 >    yy_conf->flags |= SHARED_XLINE;
5153   }
5154      break;
5155  
5156    case 319:
5157 <
5158 < /* Line 1806 of yacc.c  */
5443 < #line 1920 "conf_parser.y"
5157 > /* Line 1813 of yacc.c  */
5158 > #line 1880 "conf_parser.y"
5159      {
5160    if (conf_parser_ctx.pass == 2)
5161 <    yy_match_item->action |= SHARED_UNXLINE;
5161 >    yy_conf->flags |= SHARED_UNXLINE;
5162   }
5163      break;
5164  
5165    case 320:
5166 <
5167 < /* Line 1806 of yacc.c  */
5453 < #line 1924 "conf_parser.y"
5166 > /* Line 1813 of yacc.c  */
5167 > #line 1884 "conf_parser.y"
5168      {
5169    if (conf_parser_ctx.pass == 2)
5170 <    yy_match_item->action |= SHARED_RESV;
5170 >    yy_conf->flags |= SHARED_RESV;
5171   }
5172      break;
5173  
5174    case 321:
5175 <
5176 < /* Line 1806 of yacc.c  */
5463 < #line 1928 "conf_parser.y"
5175 > /* Line 1813 of yacc.c  */
5176 > #line 1888 "conf_parser.y"
5177      {
5178    if (conf_parser_ctx.pass == 2)
5179 <    yy_match_item->action |= SHARED_UNRESV;
5179 >    yy_conf->flags |= SHARED_UNRESV;
5180   }
5181      break;
5182  
5183    case 322:
5184 <
5185 < /* Line 1806 of yacc.c  */
5473 < #line 1932 "conf_parser.y"
5184 > /* Line 1813 of yacc.c  */
5185 > #line 1892 "conf_parser.y"
5186      {
5187    if (conf_parser_ctx.pass == 2)
5188 <    yy_match_item->action |= SHARED_LOCOPS;
5188 >    yy_conf->flags |= SHARED_LOCOPS;
5189   }
5190      break;
5191  
5192    case 323:
5193 <
5194 < /* Line 1806 of yacc.c  */
5483 < #line 1936 "conf_parser.y"
5193 > /* Line 1813 of yacc.c  */
5194 > #line 1896 "conf_parser.y"
5195      {
5196    if (conf_parser_ctx.pass == 2)
5197 <    yy_match_item->action = SHARED_ALL;
5197 >    yy_conf->flags = SHARED_ALL;
5198   }
5199      break;
5200  
5201    case 324:
5202 <
5203 < /* Line 1806 of yacc.c  */
5493 < #line 1945 "conf_parser.y"
5202 > /* Line 1813 of yacc.c  */
5203 > #line 1905 "conf_parser.y"
5204      {
5205    if (conf_parser_ctx.pass == 2)
5206    {
5207 <    yy_conf = make_conf_item(CLUSTER_TYPE);
5498 <    yy_conf->flags = SHARED_ALL;
5207 >    yy_conf = conf_make(CONF_CLUSTER);
5208    }
5209   }
5210      break;
5211  
5212    case 325:
5213 <
5214 < /* Line 1806 of yacc.c  */
5506 < #line 1952 "conf_parser.y"
5213 > /* Line 1813 of yacc.c  */
5214 > #line 1911 "conf_parser.y"
5215      {
5216    if (conf_parser_ctx.pass == 2)
5217    {
# Line 5515 | Line 5223 | yyreduce:
5223      break;
5224  
5225    case 331:
5226 <
5227 < /* Line 1806 of yacc.c  */
5520 < #line 1965 "conf_parser.y"
5226 > /* Line 1813 of yacc.c  */
5227 > #line 1924 "conf_parser.y"
5228      {
5229    if (conf_parser_ctx.pass == 2)
5230      DupString(yy_conf->name, yylval.string);
# Line 5525 | Line 5232 | yyreduce:
5232      break;
5233  
5234    case 332:
5235 <
5236 < /* Line 1806 of yacc.c  */
5530 < #line 1971 "conf_parser.y"
5235 > /* Line 1813 of yacc.c  */
5236 > #line 1930 "conf_parser.y"
5237      {
5238    if (conf_parser_ctx.pass == 2)
5239      yy_conf->flags = 0;
# Line 5535 | Line 5241 | yyreduce:
5241      break;
5242  
5243    case 336:
5244 <
5245 < /* Line 1806 of yacc.c  */
5540 < #line 1978 "conf_parser.y"
5244 > /* Line 1813 of yacc.c  */
5245 > #line 1937 "conf_parser.y"
5246      {
5247    if (conf_parser_ctx.pass == 2)
5248      yy_conf->flags |= SHARED_KLINE;
# Line 5545 | Line 5250 | yyreduce:
5250      break;
5251  
5252    case 337:
5253 <
5254 < /* Line 1806 of yacc.c  */
5550 < #line 1982 "conf_parser.y"
5253 > /* Line 1813 of yacc.c  */
5254 > #line 1941 "conf_parser.y"
5255      {
5256    if (conf_parser_ctx.pass == 2)
5257      yy_conf->flags |= SHARED_UNKLINE;
# Line 5555 | Line 5259 | yyreduce:
5259      break;
5260  
5261    case 338:
5262 <
5263 < /* Line 1806 of yacc.c  */
5560 < #line 1986 "conf_parser.y"
5262 > /* Line 1813 of yacc.c  */
5263 > #line 1945 "conf_parser.y"
5264      {
5265    if (conf_parser_ctx.pass == 2)
5266      yy_conf->flags |= SHARED_DLINE;
# Line 5565 | Line 5268 | yyreduce:
5268      break;
5269  
5270    case 339:
5271 <
5272 < /* Line 1806 of yacc.c  */
5570 < #line 1990 "conf_parser.y"
5271 > /* Line 1813 of yacc.c  */
5272 > #line 1949 "conf_parser.y"
5273      {
5274    if (conf_parser_ctx.pass == 2)
5275      yy_conf->flags |= SHARED_UNDLINE;
# Line 5575 | Line 5277 | yyreduce:
5277      break;
5278  
5279    case 340:
5280 <
5281 < /* Line 1806 of yacc.c  */
5580 < #line 1994 "conf_parser.y"
5280 > /* Line 1813 of yacc.c  */
5281 > #line 1953 "conf_parser.y"
5282      {
5283    if (conf_parser_ctx.pass == 2)
5284      yy_conf->flags |= SHARED_XLINE;
# Line 5585 | Line 5286 | yyreduce:
5286      break;
5287  
5288    case 341:
5289 <
5290 < /* Line 1806 of yacc.c  */
5590 < #line 1998 "conf_parser.y"
5289 > /* Line 1813 of yacc.c  */
5290 > #line 1957 "conf_parser.y"
5291      {
5292    if (conf_parser_ctx.pass == 2)
5293      yy_conf->flags |= SHARED_UNXLINE;
# Line 5595 | Line 5295 | yyreduce:
5295      break;
5296  
5297    case 342:
5298 <
5299 < /* Line 1806 of yacc.c  */
5600 < #line 2002 "conf_parser.y"
5298 > /* Line 1813 of yacc.c  */
5299 > #line 1961 "conf_parser.y"
5300      {
5301    if (conf_parser_ctx.pass == 2)
5302      yy_conf->flags |= SHARED_RESV;
# Line 5605 | Line 5304 | yyreduce:
5304      break;
5305  
5306    case 343:
5307 <
5308 < /* Line 1806 of yacc.c  */
5610 < #line 2006 "conf_parser.y"
5307 > /* Line 1813 of yacc.c  */
5308 > #line 1965 "conf_parser.y"
5309      {
5310    if (conf_parser_ctx.pass == 2)
5311      yy_conf->flags |= SHARED_UNRESV;
# Line 5615 | Line 5313 | yyreduce:
5313      break;
5314  
5315    case 344:
5316 <
5317 < /* Line 1806 of yacc.c  */
5620 < #line 2010 "conf_parser.y"
5316 > /* Line 1813 of yacc.c  */
5317 > #line 1969 "conf_parser.y"
5318      {
5319    if (conf_parser_ctx.pass == 2)
5320      yy_conf->flags |= SHARED_LOCOPS;
# Line 5625 | Line 5322 | yyreduce:
5322      break;
5323  
5324    case 345:
5325 <
5326 < /* Line 1806 of yacc.c  */
5630 < #line 2014 "conf_parser.y"
5325 > /* Line 1813 of yacc.c  */
5326 > #line 1973 "conf_parser.y"
5327      {
5328    if (conf_parser_ctx.pass == 2)
5329      yy_conf->flags = SHARED_ALL;
# Line 5635 | Line 5331 | yyreduce:
5331      break;
5332  
5333    case 346:
5334 <
5335 < /* Line 1806 of yacc.c  */
5640 < #line 2023 "conf_parser.y"
5334 > /* Line 1813 of yacc.c  */
5335 > #line 1982 "conf_parser.y"
5336      {
5337    if (conf_parser_ctx.pass == 2)
5338    {
5339 <    yy_conf = make_conf_item(SERVER_TYPE);
5645 <    yy_aconf = map_to_conf(yy_conf);
5339 >    yy_conf = conf_make(CONF_SERVER);
5340  
5341      /* defaults */
5342 <    yy_aconf->port = PORTNUM;
5342 >    yy_conf->port = PORTNUM;
5343    }
5344    else
5345    {
# Line 5656 | Line 5350 | yyreduce:
5350      break;
5351  
5352    case 347:
5353 <
5354 < /* Line 1806 of yacc.c  */
5661 < #line 2038 "conf_parser.y"
5353 > /* Line 1813 of yacc.c  */
5354 > #line 1996 "conf_parser.y"
5355      {
5356    if (conf_parser_ctx.pass == 2)
5357    {
5358 <    if (yy_aconf->host && yy_aconf->passwd && yy_aconf->spasswd)
5358 >    if (yy_conf->host && yy_conf->passwd && yy_conf->spasswd)
5359      {
5360        if (conf_add_server(yy_conf, class_name) == -1)
5361 <        delete_conf_item(yy_conf);
5361 >        conf_free(yy_conf);
5362      }
5363      else
5364      {
5365        if (yy_conf->name != NULL)
5366        {
5367 <        if (yy_aconf->host == NULL)
5367 >        if (yy_conf->host == NULL)
5368            yyerror("Ignoring connect block -- missing host");
5369 <        else if (!yy_aconf->passwd || !yy_aconf->spasswd)
5369 >        else if (!yy_conf->passwd || !yy_conf->spasswd)
5370            yyerror("Ignoring connect block -- missing password");
5371        }
5372  
# Line 5684 | Line 5377 | yyreduce:
5377         * rewrite ASAP. make_conf_item() shouldn't really add things onto
5378         * a doubly linked list immediately without any sanity checks!  -Michael
5379         */
5380 <      delete_conf_item(yy_conf);
5380 >      conf_free(yy_conf);
5381      }
5382  
5383      MyFree(class_name);
5384      class_name = NULL;
5385      yy_conf = NULL;
5693    yy_aconf = NULL;
5386    }
5387   }
5388      break;
5389  
5390    case 364:
5391 <
5392 < /* Line 1806 of yacc.c  */
5701 < #line 2082 "conf_parser.y"
5391 > /* Line 1813 of yacc.c  */
5392 > #line 2039 "conf_parser.y"
5393      {
5394    if (conf_parser_ctx.pass == 2)
5395    {
# Line 5709 | Line 5400 | yyreduce:
5400      break;
5401  
5402    case 365:
5403 <
5404 < /* Line 1806 of yacc.c  */
5714 < #line 2091 "conf_parser.y"
5403 > /* Line 1813 of yacc.c  */
5404 > #line 2048 "conf_parser.y"
5405      {
5406    if (conf_parser_ctx.pass == 2)
5407    {
5408 <    MyFree(yy_aconf->host);
5409 <    DupString(yy_aconf->host, yylval.string);
5408 >    MyFree(yy_conf->host);
5409 >    DupString(yy_conf->host, yylval.string);
5410    }
5411   }
5412      break;
5413  
5414    case 366:
5415 <
5416 < /* Line 1806 of yacc.c  */
5727 < #line 2100 "conf_parser.y"
5415 > /* Line 1813 of yacc.c  */
5416 > #line 2057 "conf_parser.y"
5417      {
5418    if (conf_parser_ctx.pass == 2)
5419    {
# Line 5742 | Line 5431 | yyreduce:
5431      {
5432        assert(res != NULL);
5433  
5434 <      memcpy(&yy_aconf->bind, res->ai_addr, res->ai_addrlen);
5435 <      yy_aconf->bind.ss.ss_family = res->ai_family;
5436 <      yy_aconf->bind.ss_len = res->ai_addrlen;
5434 >      memcpy(&yy_conf->bind, res->ai_addr, res->ai_addrlen);
5435 >      yy_conf->bind.ss.ss_family = res->ai_family;
5436 >      yy_conf->bind.ss_len = res->ai_addrlen;
5437        freeaddrinfo(res);
5438      }
5439    }
# Line 5752 | Line 5441 | yyreduce:
5441      break;
5442  
5443    case 367:
5444 <
5445 < /* Line 1806 of yacc.c  */
5757 < #line 2126 "conf_parser.y"
5444 > /* Line 1813 of yacc.c  */
5445 > #line 2083 "conf_parser.y"
5446      {
5447    if (conf_parser_ctx.pass == 2)
5448    {
# Line 5763 | Line 5451 | yyreduce:
5451      else if (strchr((yyvsp[(3) - (4)].string), ' ') != NULL)
5452        yyerror("Server passwords cannot contain spaces");
5453      else {
5454 <      if (yy_aconf->spasswd != NULL)
5455 <        memset(yy_aconf->spasswd, 0, strlen(yy_aconf->spasswd));
5454 >      if (yy_conf->spasswd != NULL)
5455 >        memset(yy_conf->spasswd, 0, strlen(yy_conf->spasswd));
5456  
5457 <      MyFree(yy_aconf->spasswd);
5458 <      DupString(yy_aconf->spasswd, yylval.string);
5457 >      MyFree(yy_conf->spasswd);
5458 >      DupString(yy_conf->spasswd, yylval.string);
5459      }
5460    }
5461   }
5462      break;
5463  
5464    case 368:
5465 <
5466 < /* Line 1806 of yacc.c  */
5779 < #line 2144 "conf_parser.y"
5465 > /* Line 1813 of yacc.c  */
5466 > #line 2101 "conf_parser.y"
5467      {
5468    if (conf_parser_ctx.pass == 2)
5469    {
# Line 5785 | Line 5472 | yyreduce:
5472      else if (strchr((yyvsp[(3) - (4)].string), ' ') != NULL)
5473        yyerror("Server passwords cannot contain spaces");
5474      else {
5475 <      if (yy_aconf->passwd != NULL)
5476 <        memset(yy_aconf->passwd, 0, strlen(yy_aconf->passwd));
5475 >      if (yy_conf->passwd != NULL)
5476 >        memset(yy_conf->passwd, 0, strlen(yy_conf->passwd));
5477  
5478 <      MyFree(yy_aconf->passwd);
5479 <      DupString(yy_aconf->passwd, yylval.string);
5478 >      MyFree(yy_conf->passwd);
5479 >      DupString(yy_conf->passwd, yylval.string);
5480      }
5481    }
5482   }
5483      break;
5484  
5485    case 369:
5486 <
5487 < /* Line 1806 of yacc.c  */
5801 < #line 2162 "conf_parser.y"
5486 > /* Line 1813 of yacc.c  */
5487 > #line 2119 "conf_parser.y"
5488      {
5489    if (conf_parser_ctx.pass == 2)
5490 <    yy_aconf->port = (yyvsp[(3) - (4)].number);
5490 >    yy_conf->port = (yyvsp[(3) - (4)].number);
5491   }
5492      break;
5493  
5494    case 370:
5495 <
5496 < /* Line 1806 of yacc.c  */
5811 < #line 2168 "conf_parser.y"
5495 > /* Line 1813 of yacc.c  */
5496 > #line 2125 "conf_parser.y"
5497      {
5498    if (conf_parser_ctx.pass == 2)
5499 <    yy_aconf->aftype = AF_INET;
5499 >    yy_conf->aftype = AF_INET;
5500   }
5501      break;
5502  
5503    case 371:
5504 <
5505 < /* Line 1806 of yacc.c  */
5821 < #line 2172 "conf_parser.y"
5504 > /* Line 1813 of yacc.c  */
5505 > #line 2129 "conf_parser.y"
5506      {
5507   #ifdef IPV6
5508    if (conf_parser_ctx.pass == 2)
5509 <    yy_aconf->aftype = AF_INET6;
5509 >    yy_conf->aftype = AF_INET6;
5510   #endif
5511   }
5512      break;
5513  
5514    case 372:
5515 <
5516 < /* Line 1806 of yacc.c  */
5833 < #line 2180 "conf_parser.y"
5515 > /* Line 1813 of yacc.c  */
5516 > #line 2137 "conf_parser.y"
5517      {
5518   }
5519      break;
5520  
5521    case 376:
5522 <
5523 < /* Line 1806 of yacc.c  */
5841 < #line 2185 "conf_parser.y"
5522 > /* Line 1813 of yacc.c  */
5523 > #line 2142 "conf_parser.y"
5524      {
5525    if (conf_parser_ctx.pass == 2)
5526 <    SetConfAllowAutoConn(yy_aconf);
5526 >    SetConfAllowAutoConn(yy_conf);
5527   }
5528      break;
5529  
5530    case 377:
5531 <
5532 < /* Line 1806 of yacc.c  */
5851 < #line 2189 "conf_parser.y"
5531 > /* Line 1813 of yacc.c  */
5532 > #line 2146 "conf_parser.y"
5533      {
5534    if (conf_parser_ctx.pass == 2)
5535 <    SetConfAwayBurst(yy_aconf);
5535 >    SetConfSSL(yy_conf);
5536   }
5537      break;
5538  
5539    case 378:
5540 <
5541 < /* Line 1806 of yacc.c  */
5861 < #line 2193 "conf_parser.y"
5862 <    {
5863 <  if (conf_parser_ctx.pass == 2)
5864 <    SetConfTopicBurst(yy_aconf);
5865 < }
5866 <    break;
5867 <
5868 <  case 379:
5869 <
5870 < /* Line 1806 of yacc.c  */
5871 < #line 2197 "conf_parser.y"
5872 <    {
5873 <  if (conf_parser_ctx.pass == 2)
5874 <    SetConfSSL(yy_aconf);
5875 < }
5876 <    break;
5877 <
5878 <  case 380:
5879 <
5880 < /* Line 1806 of yacc.c  */
5881 < #line 2203 "conf_parser.y"
5540 > /* Line 1813 of yacc.c  */
5541 > #line 2152 "conf_parser.y"
5542      {
5543    if (conf_parser_ctx.pass == 2)
5544    {
5545      if (yylval.number)
5546 <      yy_aconf->flags |= CONF_FLAGS_ENCRYPTED;
5546 >      yy_conf->flags |= CONF_FLAGS_ENCRYPTED;
5547      else
5548 <      yy_aconf->flags &= ~CONF_FLAGS_ENCRYPTED;
5548 >      yy_conf->flags &= ~CONF_FLAGS_ENCRYPTED;
5549    }
5550   }
5551      break;
5552  
5553 <  case 381:
5554 <
5555 < /* Line 1806 of yacc.c  */
5896 < #line 2214 "conf_parser.y"
5553 >  case 379:
5554 > /* Line 1813 of yacc.c  */
5555 > #line 2163 "conf_parser.y"
5556      {
5557    if (conf_parser_ctx.pass == 2)
5558    {
5559      char *mask;
5560  
5561      DupString(mask, yylval.string);
5562 <    dlinkAdd(mask, make_dlink_node(), &yy_aconf->hub_list);
5562 >    dlinkAdd(mask, make_dlink_node(), &yy_conf->hub_list);
5563    }
5564   }
5565      break;
5566  
5567 <  case 382:
5568 <
5569 < /* Line 1806 of yacc.c  */
5911 < #line 2225 "conf_parser.y"
5567 >  case 380:
5568 > /* Line 1813 of yacc.c  */
5569 > #line 2174 "conf_parser.y"
5570      {
5571    if (conf_parser_ctx.pass == 2)
5572    {
5573      char *mask;
5574  
5575      DupString(mask, yylval.string);
5576 <    dlinkAdd(mask, make_dlink_node(), &yy_aconf->leaf_list);
5576 >    dlinkAdd(mask, make_dlink_node(), &yy_conf->leaf_list);
5577    }
5578   }
5579      break;
5580  
5581 <  case 383:
5582 <
5583 < /* Line 1806 of yacc.c  */
5926 < #line 2236 "conf_parser.y"
5581 >  case 381:
5582 > /* Line 1813 of yacc.c  */
5583 > #line 2185 "conf_parser.y"
5584      {
5585    if (conf_parser_ctx.pass == 2)
5586    {
# Line 5933 | Line 5590 | yyreduce:
5590   }
5591      break;
5592  
5593 <  case 384:
5594 <
5595 < /* Line 1806 of yacc.c  */
5939 < #line 2245 "conf_parser.y"
5593 >  case 382:
5594 > /* Line 1813 of yacc.c  */
5595 > #line 2194 "conf_parser.y"
5596      {
5597   #ifdef HAVE_LIBCRYPTO
5598    if (conf_parser_ctx.pass == 2)
5599    {
5600 <    MyFree(yy_aconf->cipher_list);
5601 <    DupString(yy_aconf->cipher_list, yylval.string);
5600 >    MyFree(yy_conf->cipher_list);
5601 >    DupString(yy_conf->cipher_list, yylval.string);
5602    }
5603   #else
5604    if (conf_parser_ctx.pass == 2)
# Line 5951 | Line 5607 | yyreduce:
5607   }
5608      break;
5609  
5610 <  case 385:
5611 <
5612 < /* Line 1806 of yacc.c  */
5957 < #line 2263 "conf_parser.y"
5610 >  case 383:
5611 > /* Line 1813 of yacc.c  */
5612 > #line 2212 "conf_parser.y"
5613      {
5614    if (conf_parser_ctx.pass == 2)
5615    {
# Line 5964 | Line 5619 | yyreduce:
5619   }
5620      break;
5621  
5622 <  case 386:
5623 <
5624 < /* Line 1806 of yacc.c  */
5970 < #line 2270 "conf_parser.y"
5622 >  case 384:
5623 > /* Line 1813 of yacc.c  */
5624 > #line 2219 "conf_parser.y"
5625      {
5626    if (conf_parser_ctx.pass == 2)
5627    {
# Line 5988 | Line 5642 | yyreduce:
5642            break;
5643          }
5644  
5645 <        yy_aconf = map_to_conf(make_conf_item(RKLINE_TYPE));
5646 <        yy_aconf->regexuser = exp_user;
5647 <        yy_aconf->regexhost = exp_host;
5645 >        yy_conf = conf_make(CONF_RKLINE);
5646 >        yy_conf->regexuser = exp_user;
5647 >        yy_conf->regexhost = exp_host;
5648  
5649 <        DupString(yy_aconf->user, userbuf);
5650 <        DupString(yy_aconf->host, hostbuf);
5649 >        DupString(yy_conf->user, userbuf);
5650 >        DupString(yy_conf->host, hostbuf);
5651  
5652          if (reasonbuf[0])
5653 <          DupString(yy_aconf->reason, reasonbuf);
5653 >          DupString(yy_conf->reason, reasonbuf);
5654          else
5655 <          DupString(yy_aconf->reason, "No reason");
5655 >          DupString(yy_conf->reason, "No reason");
5656   #else
5657          ilog(LOG_TYPE_IRCD, "Failed to add regular expression based K-Line: no PCRE support");
5658          break;
# Line 6006 | Line 5660 | yyreduce:
5660        }
5661        else
5662        {
5663 <        find_and_delete_temporary(userbuf, hostbuf, CONF_KLINE);
6010 <
6011 <        yy_aconf = map_to_conf(make_conf_item(KLINE_TYPE));
5663 >        yy_conf = conf_make(CONF_KLINE);
5664  
5665 <        DupString(yy_aconf->user, userbuf);
5666 <        DupString(yy_aconf->host, hostbuf);
5665 >        DupString(yy_conf->user, userbuf);
5666 >        DupString(yy_conf->host, hostbuf);
5667  
5668          if (reasonbuf[0])
5669 <          DupString(yy_aconf->reason, reasonbuf);
5669 >          DupString(yy_conf->reason, reasonbuf);
5670          else
5671 <          DupString(yy_aconf->reason, "No reason");
5672 <        add_conf_by_address(CONF_KLINE, yy_aconf);
5671 >          DupString(yy_conf->reason, "No reason");
5672 >        add_conf_by_address(CONF_KLINE, yy_conf);
5673        }
5674      }
5675  
5676 <    yy_aconf = NULL;
5676 >    yy_conf = NULL;
5677    }
5678   }
5679      break;
5680  
5681 <  case 387:
5682 <
5683 < /* Line 1806 of yacc.c  */
6032 < #line 2328 "conf_parser.y"
5681 >  case 385:
5682 > /* Line 1813 of yacc.c  */
5683 > #line 2275 "conf_parser.y"
5684      {
5685   }
5686      break;
5687  
5688 <  case 391:
5689 <
5690 < /* Line 1806 of yacc.c  */
6040 < #line 2333 "conf_parser.y"
5688 >  case 389:
5689 > /* Line 1813 of yacc.c  */
5690 > #line 2280 "conf_parser.y"
5691      {
5692    if (conf_parser_ctx.pass == 2)
5693      regex_ban = 1;
5694   }
5695      break;
5696  
5697 <  case 398:
5698 <
5699 < /* Line 1806 of yacc.c  */
6050 < #line 2342 "conf_parser.y"
5697 >  case 396:
5698 > /* Line 1813 of yacc.c  */
5699 > #line 2289 "conf_parser.y"
5700      {
5701    if (conf_parser_ctx.pass == 2)
5702    {
# Line 6067 | Line 5716 | yyreduce:
5716   }
5717      break;
5718  
5719 <  case 399:
5720 <
5721 < /* Line 1806 of yacc.c  */
6073 < #line 2361 "conf_parser.y"
5719 >  case 397:
5720 > /* Line 1813 of yacc.c  */
5721 > #line 2308 "conf_parser.y"
5722      {
5723    if (conf_parser_ctx.pass == 2)
5724      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
5725   }
5726      break;
5727  
5728 <  case 400:
5729 <
5730 < /* Line 1806 of yacc.c  */
6083 < #line 2370 "conf_parser.y"
5728 >  case 398:
5729 > /* Line 1813 of yacc.c  */
5730 > #line 2317 "conf_parser.y"
5731      {
5732    if (conf_parser_ctx.pass == 2)
5733      hostbuf[0] = reasonbuf[0] = '\0';
5734   }
5735      break;
5736  
5737 <  case 401:
5738 <
5739 < /* Line 1806 of yacc.c  */
6093 < #line 2374 "conf_parser.y"
5737 >  case 399:
5738 > /* Line 1813 of yacc.c  */
5739 > #line 2321 "conf_parser.y"
5740      {
5741    if (conf_parser_ctx.pass == 2)
5742    {
5743      if (hostbuf[0] && parse_netmask(hostbuf, NULL, NULL) != HM_HOST)
5744      {
5745 <      find_and_delete_temporary(NULL, hostbuf, CONF_DLINE);
5746 <
6101 <      yy_aconf = map_to_conf(make_conf_item(DLINE_TYPE));
6102 <      DupString(yy_aconf->host, hostbuf);
5745 >      yy_conf = conf_make(CONF_DLINE);
5746 >      DupString(yy_conf->host, hostbuf);
5747  
5748        if (reasonbuf[0])
5749 <        DupString(yy_aconf->reason, reasonbuf);
5749 >        DupString(yy_conf->reason, reasonbuf);
5750        else
5751 <        DupString(yy_aconf->reason, "No reason");
5752 <      add_conf_by_address(CONF_DLINE, yy_aconf);
5753 <      yy_aconf = NULL;
5751 >        DupString(yy_conf->reason, "No reason");
5752 >      add_conf_by_address(CONF_DLINE, yy_conf);
5753 >      yy_conf = NULL;
5754      }
5755    }
5756   }
5757      break;
5758  
5759 <  case 407:
5760 <
5761 < /* Line 1806 of yacc.c  */
6118 < #line 2398 "conf_parser.y"
5759 >  case 405:
5760 > /* Line 1813 of yacc.c  */
5761 > #line 2343 "conf_parser.y"
5762      {
5763    if (conf_parser_ctx.pass == 2)
5764      strlcpy(hostbuf, yylval.string, sizeof(hostbuf));
5765   }
5766      break;
5767  
5768 <  case 408:
5769 <
5770 < /* Line 1806 of yacc.c  */
6128 < #line 2404 "conf_parser.y"
5768 >  case 406:
5769 > /* Line 1813 of yacc.c  */
5770 > #line 2349 "conf_parser.y"
5771      {
5772    if (conf_parser_ctx.pass == 2)
5773      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
5774   }
5775      break;
5776  
5777 <  case 414:
5778 <
5779 < /* Line 1806 of yacc.c  */
6138 < #line 2418 "conf_parser.y"
5777 >  case 412:
5778 > /* Line 1813 of yacc.c  */
5779 > #line 2363 "conf_parser.y"
5780      {
5781    if (conf_parser_ctx.pass == 2)
5782    {
5783      if (yylval.string[0] && parse_netmask(yylval.string, NULL, NULL) != HM_HOST)
5784      {
5785 <      yy_aconf = map_to_conf(make_conf_item(EXEMPTDLINE_TYPE));
5786 <      DupString(yy_aconf->host, yylval.string);
5785 >      yy_conf = conf_make(CONF_EXEMPT);
5786 >      DupString(yy_conf->host, yylval.string);
5787  
5788 <      add_conf_by_address(CONF_EXEMPTDLINE, yy_aconf);
5789 <      yy_aconf = NULL;
5788 >      add_conf_by_address(CONF_EXEMPT, yy_conf);
5789 >      yy_conf = NULL;
5790      }
5791    }
5792   }
5793      break;
5794  
5795 <  case 415:
5796 <
5797 < /* Line 1806 of yacc.c  */
6157 < #line 2436 "conf_parser.y"
5795 >  case 413:
5796 > /* Line 1813 of yacc.c  */
5797 > #line 2381 "conf_parser.y"
5798      {
5799    if (conf_parser_ctx.pass == 2)
5800    {
# Line 6164 | Line 5804 | yyreduce:
5804   }
5805      break;
5806  
5807 <  case 416:
5808 <
5809 < /* Line 1806 of yacc.c  */
6170 < #line 2443 "conf_parser.y"
5807 >  case 414:
5808 > /* Line 1813 of yacc.c  */
5809 > #line 2388 "conf_parser.y"
5810      {
5811    if (conf_parser_ctx.pass == 2)
5812    {
# Line 6186 | Line 5825 | yyreduce:
5825            break;
5826          }
5827  
5828 <        yy_conf = make_conf_item(RXLINE_TYPE);
5829 <        yy_conf->regexpname = exp_p;
5828 >        yy_conf = conf_make(CONF_RXLINE);
5829 >        yy_conf->regexuser = exp_p;
5830   #else
5831          ilog(LOG_TYPE_IRCD, "Failed to add regular expression based X-Line: no PCRE support");
5832          break;
5833   #endif
5834        }
5835        else
5836 <        yy_conf = make_conf_item(XLINE_TYPE);
5836 >        yy_conf = conf_make(CONF_XLINE);
5837  
6199      yy_match_item = map_to_conf(yy_conf);
5838        DupString(yy_conf->name, gecos_name);
5839  
5840        if (reasonbuf[0])
5841 <        DupString(yy_match_item->reason, reasonbuf);
5841 >        DupString(yy_conf->reason, reasonbuf);
5842        else
5843 <        DupString(yy_match_item->reason, "No reason");
5843 >        DupString(yy_conf->reason, "No reason");
5844      }
5845    }
5846   }
5847      break;
5848  
5849 <  case 417:
5850 <
5851 < /* Line 1806 of yacc.c  */
6214 < #line 2483 "conf_parser.y"
5849 >  case 415:
5850 > /* Line 1813 of yacc.c  */
5851 > #line 2427 "conf_parser.y"
5852      {
5853   }
5854      break;
5855  
5856 <  case 421:
5857 <
5858 < /* Line 1806 of yacc.c  */
6222 < #line 2488 "conf_parser.y"
5856 >  case 419:
5857 > /* Line 1813 of yacc.c  */
5858 > #line 2432 "conf_parser.y"
5859      {
5860    if (conf_parser_ctx.pass == 2)
5861      regex_ban = 1;
5862   }
5863      break;
5864  
5865 <  case 428:
5866 <
5867 < /* Line 1806 of yacc.c  */
6232 < #line 2497 "conf_parser.y"
5865 >  case 426:
5866 > /* Line 1813 of yacc.c  */
5867 > #line 2441 "conf_parser.y"
5868      {
5869    if (conf_parser_ctx.pass == 2)
5870      strlcpy(gecos_name, yylval.string, sizeof(gecos_name));
5871   }
5872      break;
5873  
5874 <  case 429:
5875 <
5876 < /* Line 1806 of yacc.c  */
6242 < #line 2503 "conf_parser.y"
5874 >  case 427:
5875 > /* Line 1813 of yacc.c  */
5876 > #line 2447 "conf_parser.y"
5877      {
5878    if (conf_parser_ctx.pass == 2)
5879      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
5880   }
5881      break;
5882  
5883 <  case 485:
5884 <
5885 < /* Line 1806 of yacc.c  */
6252 < #line 2547 "conf_parser.y"
5883 >  case 481:
5884 > /* Line 1813 of yacc.c  */
5885 > #line 2492 "conf_parser.y"
5886      {
5887    ConfigFileEntry.max_watch = (yyvsp[(3) - (4)].number);
5888   }
5889      break;
5890  
5891 <  case 486:
5892 <
5893 < /* Line 1806 of yacc.c  */
6261 < #line 2552 "conf_parser.y"
5891 >  case 482:
5892 > /* Line 1813 of yacc.c  */
5893 > #line 2497 "conf_parser.y"
5894      {
5895 <  ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
5895 >  if (conf_parser_ctx.pass == 2)
5896 >    ConfigFileEntry.glines = yylval.number;
5897   }
5898      break;
5899  
5900 <  case 487:
5901 <
5902 < /* Line 1806 of yacc.c  */
6270 < #line 2557 "conf_parser.y"
5900 >  case 483:
5901 > /* Line 1813 of yacc.c  */
5902 > #line 2503 "conf_parser.y"
5903      {
5904 <  ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
5904 >  if (conf_parser_ctx.pass == 2)
5905 >    ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
5906   }
5907      break;
5908  
5909 <  case 488:
5910 <
5911 < /* Line 1806 of yacc.c  */
6279 < #line 2562 "conf_parser.y"
5909 >  case 484:
5910 > /* Line 1813 of yacc.c  */
5911 > #line 2509 "conf_parser.y"
5912      {
5913 <  ConfigFileEntry.use_whois_actually = yylval.number;
5913 >  if (conf_parser_ctx.pass == 2)
5914 >    ConfigFileEntry.gline_request_time = (yyvsp[(3) - (4)].number);
5915   }
5916      break;
5917  
5918 <  case 489:
5919 <
5920 < /* Line 1806 of yacc.c  */
6288 < #line 2567 "conf_parser.y"
5918 >  case 485:
5919 > /* Line 1813 of yacc.c  */
5920 > #line 2515 "conf_parser.y"
5921      {
5922 <  GlobalSetOptions.rejecttime = yylval.number;
5922 >  ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
5923   }
5924      break;
5925  
5926 <  case 490:
5926 >  case 486:
5927 > /* Line 1813 of yacc.c  */
5928 > #line 2520 "conf_parser.y"
5929 >    {
5930 >  ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
5931 > }
5932 >    break;
5933  
5934 < /* Line 1806 of yacc.c  */
5935 < #line 2572 "conf_parser.y"
5934 >  case 487:
5935 > /* Line 1813 of yacc.c  */
5936 > #line 2525 "conf_parser.y"
5937      {
5938    ConfigFileEntry.tkline_expire_notices = yylval.number;
5939   }
5940      break;
5941  
5942 <  case 491:
5943 <
5944 < /* Line 1806 of yacc.c  */
6306 < #line 2577 "conf_parser.y"
5942 >  case 488:
5943 > /* Line 1813 of yacc.c  */
5944 > #line 2530 "conf_parser.y"
5945      {
5946    ConfigFileEntry.kill_chase_time_limit = (yyvsp[(3) - (4)].number);
5947   }
5948      break;
5949  
5950 <  case 492:
5951 <
5952 < /* Line 1806 of yacc.c  */
6315 < #line 2582 "conf_parser.y"
5950 >  case 489:
5951 > /* Line 1813 of yacc.c  */
5952 > #line 2535 "conf_parser.y"
5953      {
5954    ConfigFileEntry.hide_spoof_ips = yylval.number;
5955   }
5956      break;
5957  
5958 <  case 493:
5959 <
5960 < /* Line 1806 of yacc.c  */
6324 < #line 2587 "conf_parser.y"
5958 >  case 490:
5959 > /* Line 1813 of yacc.c  */
5960 > #line 2540 "conf_parser.y"
5961      {
5962    ConfigFileEntry.ignore_bogus_ts = yylval.number;
5963   }
5964      break;
5965  
5966 <  case 494:
5967 <
5968 < /* Line 1806 of yacc.c  */
6333 < #line 2592 "conf_parser.y"
5966 >  case 491:
5967 > /* Line 1813 of yacc.c  */
5968 > #line 2545 "conf_parser.y"
5969      {
5970    ConfigFileEntry.disable_remote = yylval.number;
5971   }
5972      break;
5973  
5974 <  case 495:
5975 <
5976 < /* Line 1806 of yacc.c  */
6342 < #line 2597 "conf_parser.y"
5974 >  case 492:
5975 > /* Line 1813 of yacc.c  */
5976 > #line 2550 "conf_parser.y"
5977      {
5978    ConfigFileEntry.failed_oper_notice = yylval.number;
5979   }
5980      break;
5981  
5982 <  case 496:
5983 <
5984 < /* Line 1806 of yacc.c  */
6351 < #line 2602 "conf_parser.y"
5982 >  case 493:
5983 > /* Line 1813 of yacc.c  */
5984 > #line 2555 "conf_parser.y"
5985      {
5986    ConfigFileEntry.anti_nick_flood = yylval.number;
5987   }
5988      break;
5989  
5990 <  case 497:
5991 <
5992 < /* Line 1806 of yacc.c  */
6360 < #line 2607 "conf_parser.y"
5990 >  case 494:
5991 > /* Line 1813 of yacc.c  */
5992 > #line 2560 "conf_parser.y"
5993      {
5994    ConfigFileEntry.max_nick_time = (yyvsp[(3) - (4)].number);
5995   }
5996      break;
5997  
5998 <  case 498:
5999 <
6000 < /* Line 1806 of yacc.c  */
6369 < #line 2612 "conf_parser.y"
5998 >  case 495:
5999 > /* Line 1813 of yacc.c  */
6000 > #line 2565 "conf_parser.y"
6001      {
6002    ConfigFileEntry.max_nick_changes = (yyvsp[(3) - (4)].number);
6003   }
6004      break;
6005  
6006 <  case 499:
6007 <
6008 < /* Line 1806 of yacc.c  */
6378 < #line 2617 "conf_parser.y"
6006 >  case 496:
6007 > /* Line 1813 of yacc.c  */
6008 > #line 2570 "conf_parser.y"
6009      {
6010    ConfigFileEntry.max_accept = (yyvsp[(3) - (4)].number);
6011   }
6012      break;
6013  
6014 <  case 500:
6015 <
6016 < /* Line 1806 of yacc.c  */
6387 < #line 2622 "conf_parser.y"
6014 >  case 497:
6015 > /* Line 1813 of yacc.c  */
6016 > #line 2575 "conf_parser.y"
6017      {
6018    ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[(3) - (4)].number);
6019   }
6020      break;
6021  
6022 <  case 501:
6023 <
6024 < /* Line 1806 of yacc.c  */
6396 < #line 2627 "conf_parser.y"
6022 >  case 498:
6023 > /* Line 1813 of yacc.c  */
6024 > #line 2580 "conf_parser.y"
6025      {
6026    ConfigFileEntry.ts_warn_delta = (yyvsp[(3) - (4)].number);
6027   }
6028      break;
6029  
6030 <  case 502:
6031 <
6032 < /* Line 1806 of yacc.c  */
6405 < #line 2632 "conf_parser.y"
6030 >  case 499:
6031 > /* Line 1813 of yacc.c  */
6032 > #line 2585 "conf_parser.y"
6033      {
6034    if (conf_parser_ctx.pass == 2)
6035      ConfigFileEntry.ts_max_delta = (yyvsp[(3) - (4)].number);
6036   }
6037      break;
6038  
6039 <  case 503:
6040 <
6041 < /* Line 1806 of yacc.c  */
6415 < #line 2638 "conf_parser.y"
6039 >  case 500:
6040 > /* Line 1813 of yacc.c  */
6041 > #line 2591 "conf_parser.y"
6042      {
6043    if (((yyvsp[(3) - (4)].number) > 0) && conf_parser_ctx.pass == 1)
6044    {
# Line 6424 | Line 6050 | yyreduce:
6050   }
6051      break;
6052  
6053 <  case 504:
6054 <
6055 < /* Line 1806 of yacc.c  */
6430 < #line 2649 "conf_parser.y"
6431 <    {
6432 <  ConfigFileEntry.kline_with_reason = yylval.number;
6433 < }
6434 <    break;
6435 <
6436 <  case 505:
6437 <
6438 < /* Line 1806 of yacc.c  */
6439 < #line 2654 "conf_parser.y"
6440 <    {
6441 <  if (conf_parser_ctx.pass == 2)
6442 <  {
6443 <    MyFree(ConfigFileEntry.kline_reason);
6444 <    DupString(ConfigFileEntry.kline_reason, yylval.string);
6445 <  }
6446 < }
6447 <    break;
6448 <
6449 <  case 506:
6450 <
6451 < /* Line 1806 of yacc.c  */
6452 < #line 2663 "conf_parser.y"
6053 >  case 501:
6054 > /* Line 1813 of yacc.c  */
6055 > #line 2602 "conf_parser.y"
6056      {
6057    ConfigFileEntry.invisible_on_connect = yylval.number;
6058   }
6059      break;
6060  
6061 <  case 507:
6062 <
6063 < /* Line 1806 of yacc.c  */
6461 < #line 2668 "conf_parser.y"
6061 >  case 502:
6062 > /* Line 1813 of yacc.c  */
6063 > #line 2607 "conf_parser.y"
6064      {
6065    ConfigFileEntry.warn_no_nline = yylval.number;
6066   }
6067      break;
6068  
6069 <  case 508:
6070 <
6071 < /* Line 1806 of yacc.c  */
6470 < #line 2673 "conf_parser.y"
6069 >  case 503:
6070 > /* Line 1813 of yacc.c  */
6071 > #line 2612 "conf_parser.y"
6072      {
6073    ConfigFileEntry.stats_e_disabled = yylval.number;
6074   }
6075      break;
6076  
6077 <  case 509:
6078 <
6079 < /* Line 1806 of yacc.c  */
6479 < #line 2678 "conf_parser.y"
6077 >  case 504:
6078 > /* Line 1813 of yacc.c  */
6079 > #line 2617 "conf_parser.y"
6080      {
6081    ConfigFileEntry.stats_o_oper_only = yylval.number;
6082   }
6083      break;
6084  
6085 <  case 510:
6086 <
6087 < /* Line 1806 of yacc.c  */
6488 < #line 2683 "conf_parser.y"
6085 >  case 505:
6086 > /* Line 1813 of yacc.c  */
6087 > #line 2622 "conf_parser.y"
6088      {
6089    ConfigFileEntry.stats_P_oper_only = yylval.number;
6090   }
6091      break;
6092  
6093 <  case 511:
6094 <
6095 < /* Line 1806 of yacc.c  */
6497 < #line 2688 "conf_parser.y"
6093 >  case 506:
6094 > /* Line 1813 of yacc.c  */
6095 > #line 2627 "conf_parser.y"
6096      {
6097    ConfigFileEntry.stats_k_oper_only = 2 * yylval.number;
6098   }
6099      break;
6100  
6101 <  case 512:
6102 <
6103 < /* Line 1806 of yacc.c  */
6506 < #line 2691 "conf_parser.y"
6101 >  case 507:
6102 > /* Line 1813 of yacc.c  */
6103 > #line 2630 "conf_parser.y"
6104      {
6105    ConfigFileEntry.stats_k_oper_only = 1;
6106   }
6107      break;
6108  
6109 <  case 513:
6110 <
6111 < /* Line 1806 of yacc.c  */
6515 < #line 2696 "conf_parser.y"
6109 >  case 508:
6110 > /* Line 1813 of yacc.c  */
6111 > #line 2635 "conf_parser.y"
6112      {
6113    ConfigFileEntry.stats_i_oper_only = 2 * yylval.number;
6114   }
6115      break;
6116  
6117 <  case 514:
6118 <
6119 < /* Line 1806 of yacc.c  */
6524 < #line 2699 "conf_parser.y"
6117 >  case 509:
6118 > /* Line 1813 of yacc.c  */
6119 > #line 2638 "conf_parser.y"
6120      {
6121    ConfigFileEntry.stats_i_oper_only = 1;
6122   }
6123      break;
6124  
6125 <  case 515:
6126 <
6127 < /* Line 1806 of yacc.c  */
6533 < #line 2704 "conf_parser.y"
6125 >  case 510:
6126 > /* Line 1813 of yacc.c  */
6127 > #line 2643 "conf_parser.y"
6128      {
6129    ConfigFileEntry.pace_wait = (yyvsp[(3) - (4)].number);
6130   }
6131      break;
6132  
6133 <  case 516:
6134 <
6135 < /* Line 1806 of yacc.c  */
6542 < #line 2709 "conf_parser.y"
6133 >  case 511:
6134 > /* Line 1813 of yacc.c  */
6135 > #line 2648 "conf_parser.y"
6136      {
6137    ConfigFileEntry.caller_id_wait = (yyvsp[(3) - (4)].number);
6138   }
6139      break;
6140  
6141 <  case 517:
6142 <
6143 < /* Line 1806 of yacc.c  */
6551 < #line 2714 "conf_parser.y"
6141 >  case 512:
6142 > /* Line 1813 of yacc.c  */
6143 > #line 2653 "conf_parser.y"
6144      {
6145    ConfigFileEntry.opers_bypass_callerid = yylval.number;
6146   }
6147      break;
6148  
6149 <  case 518:
6150 <
6151 < /* Line 1806 of yacc.c  */
6560 < #line 2719 "conf_parser.y"
6149 >  case 513:
6150 > /* Line 1813 of yacc.c  */
6151 > #line 2658 "conf_parser.y"
6152      {
6153    ConfigFileEntry.pace_wait_simple = (yyvsp[(3) - (4)].number);
6154   }
6155      break;
6156  
6157 <  case 519:
6158 <
6159 < /* Line 1806 of yacc.c  */
6569 < #line 2724 "conf_parser.y"
6157 >  case 514:
6158 > /* Line 1813 of yacc.c  */
6159 > #line 2663 "conf_parser.y"
6160      {
6161    ConfigFileEntry.short_motd = yylval.number;
6162   }
6163      break;
6164  
6165 <  case 520:
6166 <
6167 < /* Line 1806 of yacc.c  */
6578 < #line 2729 "conf_parser.y"
6165 >  case 515:
6166 > /* Line 1813 of yacc.c  */
6167 > #line 2668 "conf_parser.y"
6168      {
6169    ConfigFileEntry.no_oper_flood = yylval.number;
6170   }
6171      break;
6172  
6173 <  case 521:
6174 <
6175 < /* Line 1806 of yacc.c  */
6587 < #line 2734 "conf_parser.y"
6173 >  case 516:
6174 > /* Line 1813 of yacc.c  */
6175 > #line 2673 "conf_parser.y"
6176      {
6177    ConfigFileEntry.true_no_oper_flood = yylval.number;
6178   }
6179      break;
6180  
6181 <  case 522:
6182 <
6183 < /* Line 1806 of yacc.c  */
6596 < #line 2739 "conf_parser.y"
6181 >  case 517:
6182 > /* Line 1813 of yacc.c  */
6183 > #line 2678 "conf_parser.y"
6184      {
6185    ConfigFileEntry.oper_pass_resv = yylval.number;
6186   }
6187      break;
6188  
6189 <  case 523:
6190 <
6191 < /* Line 1806 of yacc.c  */
6605 < #line 2744 "conf_parser.y"
6189 >  case 518:
6190 > /* Line 1813 of yacc.c  */
6191 > #line 2683 "conf_parser.y"
6192      {
6193    if (conf_parser_ctx.pass == 2)
6194    {
# Line 6614 | Line 6200 | yyreduce:
6200   }
6201      break;
6202  
6203 <  case 524:
6204 <
6205 < /* Line 1806 of yacc.c  */
6620 < #line 2755 "conf_parser.y"
6203 >  case 519:
6204 > /* Line 1813 of yacc.c  */
6205 > #line 2694 "conf_parser.y"
6206      {
6207    ConfigFileEntry.dots_in_ident = (yyvsp[(3) - (4)].number);
6208   }
6209      break;
6210  
6211 <  case 525:
6212 <
6213 < /* Line 1806 of yacc.c  */
6629 < #line 2760 "conf_parser.y"
6211 >  case 520:
6212 > /* Line 1813 of yacc.c  */
6213 > #line 2699 "conf_parser.y"
6214      {
6215    ConfigFileEntry.max_targets = (yyvsp[(3) - (4)].number);
6216   }
6217      break;
6218  
6219 <  case 526:
6220 <
6221 < /* Line 1806 of yacc.c  */
6638 < #line 2765 "conf_parser.y"
6219 >  case 521:
6220 > /* Line 1813 of yacc.c  */
6221 > #line 2704 "conf_parser.y"
6222      {
6223    ConfigFileEntry.use_egd = yylval.number;
6224   }
6225      break;
6226  
6227 <  case 527:
6228 <
6229 < /* Line 1806 of yacc.c  */
6647 < #line 2770 "conf_parser.y"
6227 >  case 522:
6228 > /* Line 1813 of yacc.c  */
6229 > #line 2709 "conf_parser.y"
6230      {
6231    if (conf_parser_ctx.pass == 2)
6232    {
# Line 6654 | Line 6236 | yyreduce:
6236   }
6237      break;
6238  
6239 <  case 528:
6240 <
6241 < /* Line 1806 of yacc.c  */
6660 < #line 2779 "conf_parser.y"
6239 >  case 523:
6240 > /* Line 1813 of yacc.c  */
6241 > #line 2718 "conf_parser.y"
6242      {
6243    if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6244    {
# Line 6667 | Line 6248 | yyreduce:
6248   }
6249      break;
6250  
6251 <  case 529:
6252 <
6253 < /* Line 1806 of yacc.c  */
6673 < #line 2788 "conf_parser.y"
6251 >  case 524:
6252 > /* Line 1813 of yacc.c  */
6253 > #line 2727 "conf_parser.y"
6254      {
6255    ConfigFileEntry.ping_cookie = yylval.number;
6256   }
6257      break;
6258  
6259 <  case 530:
6260 <
6261 < /* Line 1806 of yacc.c  */
6682 < #line 2793 "conf_parser.y"
6259 >  case 525:
6260 > /* Line 1813 of yacc.c  */
6261 > #line 2732 "conf_parser.y"
6262      {
6263    ConfigFileEntry.disable_auth = yylval.number;
6264   }
6265      break;
6266  
6267 <  case 531:
6268 <
6269 < /* Line 1806 of yacc.c  */
6691 < #line 2798 "conf_parser.y"
6267 >  case 526:
6268 > /* Line 1813 of yacc.c  */
6269 > #line 2737 "conf_parser.y"
6270      {
6271    ConfigFileEntry.throttle_time = yylval.number;
6272   }
6273      break;
6274  
6275 <  case 532:
6276 <
6277 < /* Line 1806 of yacc.c  */
6700 < #line 2803 "conf_parser.y"
6275 >  case 527:
6276 > /* Line 1813 of yacc.c  */
6277 > #line 2742 "conf_parser.y"
6278      {
6279    ConfigFileEntry.oper_umodes = 0;
6280   }
6281      break;
6282  
6283 <  case 536:
6284 <
6285 < /* Line 1806 of yacc.c  */
6709 < #line 2809 "conf_parser.y"
6283 >  case 531:
6284 > /* Line 1813 of yacc.c  */
6285 > #line 2748 "conf_parser.y"
6286      {
6287    ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6288   }
6289      break;
6290  
6291 <  case 537:
6292 <
6293 < /* Line 1806 of yacc.c  */
6718 < #line 2812 "conf_parser.y"
6291 >  case 532:
6292 > /* Line 1813 of yacc.c  */
6293 > #line 2751 "conf_parser.y"
6294      {
6295    ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6296   }
6297      break;
6298  
6299 <  case 538:
6300 <
6301 < /* Line 1806 of yacc.c  */
6727 < #line 2815 "conf_parser.y"
6299 >  case 533:
6300 > /* Line 1813 of yacc.c  */
6301 > #line 2754 "conf_parser.y"
6302      {
6303    ConfigFileEntry.oper_umodes |= UMODE_CCONN_FULL;
6304   }
6305      break;
6306  
6307 <  case 539:
6308 <
6309 < /* Line 1806 of yacc.c  */
6736 < #line 2818 "conf_parser.y"
6307 >  case 534:
6308 > /* Line 1813 of yacc.c  */
6309 > #line 2757 "conf_parser.y"
6310      {
6311    ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6312   }
6313      break;
6314  
6315 <  case 540:
6316 <
6317 < /* Line 1806 of yacc.c  */
6745 < #line 2821 "conf_parser.y"
6315 >  case 535:
6316 > /* Line 1813 of yacc.c  */
6317 > #line 2760 "conf_parser.y"
6318      {
6319    ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6320   }
6321      break;
6322  
6323 <  case 541:
6324 <
6325 < /* Line 1806 of yacc.c  */
6754 < #line 2824 "conf_parser.y"
6323 >  case 536:
6324 > /* Line 1813 of yacc.c  */
6325 > #line 2763 "conf_parser.y"
6326      {
6327    ConfigFileEntry.oper_umodes |= UMODE_FULL;
6328   }
6329      break;
6330  
6331 <  case 542:
6332 <
6333 < /* Line 1806 of yacc.c  */
6763 < #line 2827 "conf_parser.y"
6331 >  case 537:
6332 > /* Line 1813 of yacc.c  */
6333 > #line 2766 "conf_parser.y"
6334      {
6335    ConfigFileEntry.oper_umodes |= UMODE_HIDDEN;
6336   }
6337      break;
6338  
6339 <  case 543:
6340 <
6341 < /* Line 1806 of yacc.c  */
6772 < #line 2830 "conf_parser.y"
6339 >  case 538:
6340 > /* Line 1813 of yacc.c  */
6341 > #line 2769 "conf_parser.y"
6342      {
6343    ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6344   }
6345      break;
6346  
6347 <  case 544:
6348 <
6349 < /* Line 1806 of yacc.c  */
6781 < #line 2833 "conf_parser.y"
6347 >  case 539:
6348 > /* Line 1813 of yacc.c  */
6349 > #line 2772 "conf_parser.y"
6350      {
6351    ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6352   }
6353      break;
6354  
6355 <  case 545:
6356 <
6357 < /* Line 1806 of yacc.c  */
6790 < #line 2836 "conf_parser.y"
6355 >  case 540:
6356 > /* Line 1813 of yacc.c  */
6357 > #line 2775 "conf_parser.y"
6358      {
6359    ConfigFileEntry.oper_umodes |= UMODE_REJ;
6360   }
6361      break;
6362  
6363 <  case 546:
6364 <
6365 < /* Line 1806 of yacc.c  */
6799 < #line 2839 "conf_parser.y"
6363 >  case 541:
6364 > /* Line 1813 of yacc.c  */
6365 > #line 2778 "conf_parser.y"
6366      {
6367    ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6368   }
6369      break;
6370  
6371 <  case 547:
6372 <
6373 < /* Line 1806 of yacc.c  */
6808 < #line 2842 "conf_parser.y"
6371 >  case 542:
6372 > /* Line 1813 of yacc.c  */
6373 > #line 2781 "conf_parser.y"
6374      {
6375    ConfigFileEntry.oper_umodes |= UMODE_SPY;
6376   }
6377      break;
6378  
6379 <  case 548:
6380 <
6381 < /* Line 1806 of yacc.c  */
6817 < #line 2845 "conf_parser.y"
6379 >  case 543:
6380 > /* Line 1813 of yacc.c  */
6381 > #line 2784 "conf_parser.y"
6382      {
6383    ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6384   }
6385      break;
6386  
6387 <  case 549:
6388 <
6389 < /* Line 1806 of yacc.c  */
6826 < #line 2848 "conf_parser.y"
6387 >  case 544:
6388 > /* Line 1813 of yacc.c  */
6389 > #line 2787 "conf_parser.y"
6390      {
6391    ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6392   }
6393      break;
6394  
6395 <  case 550:
6396 <
6397 < /* Line 1806 of yacc.c  */
6835 < #line 2851 "conf_parser.y"
6395 >  case 545:
6396 > /* Line 1813 of yacc.c  */
6397 > #line 2790 "conf_parser.y"
6398      {
6399    ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6400   }
6401      break;
6402  
6403 <  case 551:
6404 <
6405 < /* Line 1806 of yacc.c  */
6844 < #line 2854 "conf_parser.y"
6403 >  case 546:
6404 > /* Line 1813 of yacc.c  */
6405 > #line 2793 "conf_parser.y"
6406      {
6407    ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6408   }
6409      break;
6410  
6411 <  case 552:
6412 <
6413 < /* Line 1806 of yacc.c  */
6853 < #line 2857 "conf_parser.y"
6411 >  case 547:
6412 > /* Line 1813 of yacc.c  */
6413 > #line 2796 "conf_parser.y"
6414      {
6415    ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6416   }
6417      break;
6418  
6419 <  case 553:
6420 <
6421 < /* Line 1806 of yacc.c  */
6862 < #line 2860 "conf_parser.y"
6419 >  case 548:
6420 > /* Line 1813 of yacc.c  */
6421 > #line 2799 "conf_parser.y"
6422      {
6423    ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6424   }
6425      break;
6426  
6427 <  case 554:
6428 <
6429 < /* Line 1806 of yacc.c  */
6871 < #line 2863 "conf_parser.y"
6427 >  case 549:
6428 > /* Line 1813 of yacc.c  */
6429 > #line 2802 "conf_parser.y"
6430      {
6431    ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6432   }
6433      break;
6434  
6435 <  case 555:
6436 <
6437 < /* Line 1806 of yacc.c  */
6880 < #line 2866 "conf_parser.y"
6435 >  case 550:
6436 > /* Line 1813 of yacc.c  */
6437 > #line 2805 "conf_parser.y"
6438      {
6439    ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
6440   }
6441      break;
6442  
6443 <  case 556:
6444 <
6445 < /* Line 1806 of yacc.c  */
6889 < #line 2871 "conf_parser.y"
6443 >  case 551:
6444 > /* Line 1813 of yacc.c  */
6445 > #line 2810 "conf_parser.y"
6446      {
6447    ConfigFileEntry.oper_only_umodes = 0;
6448   }
6449      break;
6450  
6451 <  case 560:
6452 <
6453 < /* Line 1806 of yacc.c  */
6898 < #line 2877 "conf_parser.y"
6451 >  case 555:
6452 > /* Line 1813 of yacc.c  */
6453 > #line 2816 "conf_parser.y"
6454      {
6455    ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
6456   }
6457      break;
6458  
6459 <  case 561:
6460 <
6461 < /* Line 1806 of yacc.c  */
6907 < #line 2880 "conf_parser.y"
6459 >  case 556:
6460 > /* Line 1813 of yacc.c  */
6461 > #line 2819 "conf_parser.y"
6462      {
6463    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
6464   }
6465      break;
6466  
6467 <  case 562:
6468 <
6469 < /* Line 1806 of yacc.c  */
6916 < #line 2883 "conf_parser.y"
6467 >  case 557:
6468 > /* Line 1813 of yacc.c  */
6469 > #line 2822 "conf_parser.y"
6470      {
6471    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN_FULL;
6472   }
6473      break;
6474  
6475 <  case 563:
6476 <
6477 < /* Line 1806 of yacc.c  */
6925 < #line 2886 "conf_parser.y"
6475 >  case 558:
6476 > /* Line 1813 of yacc.c  */
6477 > #line 2825 "conf_parser.y"
6478      {
6479    ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
6480   }
6481      break;
6482  
6483 <  case 564:
6484 <
6485 < /* Line 1806 of yacc.c  */
6934 < #line 2889 "conf_parser.y"
6483 >  case 559:
6484 > /* Line 1813 of yacc.c  */
6485 > #line 2828 "conf_parser.y"
6486      {
6487    ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
6488   }
6489      break;
6490  
6491 <  case 565:
6492 <
6493 < /* Line 1806 of yacc.c  */
6943 < #line 2892 "conf_parser.y"
6491 >  case 560:
6492 > /* Line 1813 of yacc.c  */
6493 > #line 2831 "conf_parser.y"
6494      {
6495    ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
6496   }
6497      break;
6498  
6499 <  case 566:
6500 <
6501 < /* Line 1806 of yacc.c  */
6952 < #line 2895 "conf_parser.y"
6499 >  case 561:
6500 > /* Line 1813 of yacc.c  */
6501 > #line 2834 "conf_parser.y"
6502      {
6503    ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
6504   }
6505      break;
6506  
6507 <  case 567:
6508 <
6509 < /* Line 1806 of yacc.c  */
6961 < #line 2898 "conf_parser.y"
6507 >  case 562:
6508 > /* Line 1813 of yacc.c  */
6509 > #line 2837 "conf_parser.y"
6510      {
6511    ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN;
6512   }
6513      break;
6514  
6515 <  case 568:
6516 <
6517 < /* Line 1806 of yacc.c  */
6970 < #line 2901 "conf_parser.y"
6515 >  case 563:
6516 > /* Line 1813 of yacc.c  */
6517 > #line 2840 "conf_parser.y"
6518      {
6519    ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE;
6520   }
6521      break;
6522  
6523 <  case 569:
6524 <
6525 < /* Line 1806 of yacc.c  */
6979 < #line 2904 "conf_parser.y"
6523 >  case 564:
6524 > /* Line 1813 of yacc.c  */
6525 > #line 2843 "conf_parser.y"
6526      {
6527    ConfigFileEntry.oper_only_umodes |= UMODE_REJ;
6528   }
6529      break;
6530  
6531 <  case 570:
6532 <
6533 < /* Line 1806 of yacc.c  */
6988 < #line 2907 "conf_parser.y"
6531 >  case 565:
6532 > /* Line 1813 of yacc.c  */
6533 > #line 2846 "conf_parser.y"
6534      {
6535    ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH;
6536   }
6537      break;
6538  
6539 <  case 571:
6540 <
6541 < /* Line 1806 of yacc.c  */
6997 < #line 2910 "conf_parser.y"
6539 >  case 566:
6540 > /* Line 1813 of yacc.c  */
6541 > #line 2849 "conf_parser.y"
6542      {
6543    ConfigFileEntry.oper_only_umodes |= UMODE_SPY;
6544   }
6545      break;
6546  
6547 <  case 572:
6548 <
6549 < /* Line 1806 of yacc.c  */
7006 < #line 2913 "conf_parser.y"
6547 >  case 567:
6548 > /* Line 1813 of yacc.c  */
6549 > #line 2852 "conf_parser.y"
6550      {
6551    ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL;
6552   }
6553      break;
6554  
6555 <  case 573:
6556 <
6557 < /* Line 1806 of yacc.c  */
7015 < #line 2916 "conf_parser.y"
6555 >  case 568:
6556 > /* Line 1813 of yacc.c  */
6557 > #line 2855 "conf_parser.y"
6558      {
6559    ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL;
6560   }
6561      break;
6562  
6563 <  case 574:
6564 <
6565 < /* Line 1806 of yacc.c  */
7024 < #line 2919 "conf_parser.y"
6563 >  case 569:
6564 > /* Line 1813 of yacc.c  */
6565 > #line 2858 "conf_parser.y"
6566      {
6567    ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE;
6568   }
6569      break;
6570  
6571 <  case 575:
6572 <
6573 < /* Line 1806 of yacc.c  */
7033 < #line 2922 "conf_parser.y"
6571 >  case 570:
6572 > /* Line 1813 of yacc.c  */
6573 > #line 2861 "conf_parser.y"
6574      {
6575    ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE;
6576   }
6577      break;
6578  
6579 <  case 576:
6580 <
6581 < /* Line 1806 of yacc.c  */
7042 < #line 2925 "conf_parser.y"
6579 >  case 571:
6580 > /* Line 1813 of yacc.c  */
6581 > #line 2864 "conf_parser.y"
6582      {
6583    ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP;
6584   }
6585      break;
6586  
6587 <  case 577:
6588 <
6589 < /* Line 1806 of yacc.c  */
7051 < #line 2928 "conf_parser.y"
6587 >  case 572:
6588 > /* Line 1813 of yacc.c  */
6589 > #line 2867 "conf_parser.y"
6590      {
6591    ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID;
6592   }
6593      break;
6594  
6595 <  case 578:
6596 <
6597 < /* Line 1806 of yacc.c  */
7060 < #line 2931 "conf_parser.y"
6595 >  case 573:
6596 > /* Line 1813 of yacc.c  */
6597 > #line 2870 "conf_parser.y"
6598      {
6599    ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID;
6600   }
6601      break;
6602  
6603 <  case 579:
6604 <
6605 < /* Line 1806 of yacc.c  */
7069 < #line 2934 "conf_parser.y"
6603 >  case 574:
6604 > /* Line 1813 of yacc.c  */
6605 > #line 2873 "conf_parser.y"
6606      {
6607    ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS;
6608   }
6609      break;
6610  
6611 <  case 580:
6612 <
6613 < /* Line 1806 of yacc.c  */
7078 < #line 2939 "conf_parser.y"
6611 >  case 575:
6612 > /* Line 1813 of yacc.c  */
6613 > #line 2878 "conf_parser.y"
6614      {
6615    ConfigFileEntry.min_nonwildcard = (yyvsp[(3) - (4)].number);
6616   }
6617      break;
6618  
6619 <  case 581:
6620 <
6621 < /* Line 1806 of yacc.c  */
7087 < #line 2944 "conf_parser.y"
6619 >  case 576:
6620 > /* Line 1813 of yacc.c  */
6621 > #line 2883 "conf_parser.y"
6622      {
6623    ConfigFileEntry.min_nonwildcard_simple = (yyvsp[(3) - (4)].number);
6624   }
6625      break;
6626  
6627 <  case 582:
6628 <
6629 < /* Line 1806 of yacc.c  */
7096 < #line 2949 "conf_parser.y"
6627 >  case 577:
6628 > /* Line 1813 of yacc.c  */
6629 > #line 2888 "conf_parser.y"
6630      {
6631    ConfigFileEntry.default_floodcount = (yyvsp[(3) - (4)].number);
6632   }
6633      break;
6634  
7102  case 583:
7103
7104 /* Line 1806 of yacc.c  */
7105 #line 2954 "conf_parser.y"
7106    {
7107  ConfigFileEntry.client_flood = (yyvsp[(3) - (4)].number);
7108 }
7109    break;
7110
7111  case 584:
7112
7113 /* Line 1806 of yacc.c  */
7114 #line 2963 "conf_parser.y"
7115    {
7116  if (conf_parser_ctx.pass == 2)
7117  {
7118    yy_conf = make_conf_item(GDENY_TYPE);
7119    yy_aconf = map_to_conf(yy_conf);
7120  }
7121 }
7122    break;
7123
7124  case 585:
7125
7126 /* Line 1806 of yacc.c  */
7127 #line 2970 "conf_parser.y"
7128    {
7129  if (conf_parser_ctx.pass == 2)
7130  {
7131    /*
7132     * since we re-allocate yy_conf/yy_aconf after the end of action=, at the
7133     * end we will have one extra, so we should free it.
7134     */
7135    if (yy_conf->name == NULL || yy_aconf->user == NULL)
7136    {
7137      delete_conf_item(yy_conf);
7138      yy_conf = NULL;
7139      yy_aconf = NULL;
7140    }
7141  }
7142 }
7143    break;
7144
7145  case 595:
7146
7147 /* Line 1806 of yacc.c  */
7148 #line 2996 "conf_parser.y"
7149    {
7150  if (conf_parser_ctx.pass == 2)
7151    ConfigFileEntry.glines = yylval.number;
7152 }
7153    break;
7154
6635    case 596:
6636 <
6637 < /* Line 1806 of yacc.c  */
7158 < #line 3002 "conf_parser.y"
7159 <    {
7160 <  if (conf_parser_ctx.pass == 2)
7161 <    ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
7162 < }
7163 <    break;
7164 <
7165 <  case 597:
7166 <
7167 < /* Line 1806 of yacc.c  */
7168 < #line 3008 "conf_parser.y"
7169 <    {
7170 <  if (conf_parser_ctx.pass == 2)
7171 <    ConfigFileEntry.gline_logging = 0;
7172 < }
7173 <    break;
7174 <
7175 <  case 601:
7176 <
7177 < /* Line 1806 of yacc.c  */
7178 < #line 3014 "conf_parser.y"
7179 <    {
7180 <  if (conf_parser_ctx.pass == 2)
7181 <    ConfigFileEntry.gline_logging |= GDENY_REJECT;
7182 < }
7183 <    break;
7184 <
7185 <  case 602:
7186 <
7187 < /* Line 1806 of yacc.c  */
7188 < #line 3018 "conf_parser.y"
7189 <    {
7190 <  if (conf_parser_ctx.pass == 2)
7191 <    ConfigFileEntry.gline_logging |= GDENY_BLOCK;
7192 < }
7193 <    break;
7194 <
7195 <  case 603:
7196 <
7197 < /* Line 1806 of yacc.c  */
7198 < #line 3024 "conf_parser.y"
7199 <    {
7200 <  if (conf_parser_ctx.pass == 2)
7201 <  {
7202 <    struct split_nuh_item nuh;
7203 <
7204 <    nuh.nuhmask  = yylval.string;
7205 <    nuh.nickptr  = NULL;
7206 <    nuh.userptr  = userbuf;
7207 <    nuh.hostptr  = hostbuf;
7208 <
7209 <    nuh.nicksize = 0;
7210 <    nuh.usersize = sizeof(userbuf);
7211 <    nuh.hostsize = sizeof(hostbuf);
7212 <
7213 <    split_nuh(&nuh);
7214 <
7215 <    if (yy_aconf->user == NULL)
7216 <    {
7217 <      DupString(yy_aconf->user, userbuf);
7218 <      DupString(yy_aconf->host, hostbuf);
7219 <    }
7220 <    else
7221 <    {
7222 <      struct CollectItem *yy_tmp = MyMalloc(sizeof(struct CollectItem));
7223 <
7224 <      DupString(yy_tmp->user, userbuf);
7225 <      DupString(yy_tmp->host, hostbuf);
7226 <
7227 <      dlinkAdd(yy_tmp, &yy_tmp->node, &col_conf_list);
7228 <    }
7229 <  }
7230 < }
7231 <    break;
7232 <
7233 <  case 604:
7234 <
7235 < /* Line 1806 of yacc.c  */
7236 < #line 3058 "conf_parser.y"
7237 <    {
7238 <  if (conf_parser_ctx.pass == 2)  
7239 <  {
7240 <    MyFree(yy_conf->name);
7241 <    DupString(yy_conf->name, yylval.string);
7242 <  }
7243 < }
7244 <    break;
7245 <
7246 <  case 605:
7247 <
7248 < /* Line 1806 of yacc.c  */
7249 < #line 3067 "conf_parser.y"
7250 <    {
7251 <  if (conf_parser_ctx.pass == 2)
7252 <    yy_aconf->flags = 0;
7253 < }
7254 <    break;
7255 <
7256 <  case 606:
7257 <
7258 < /* Line 1806 of yacc.c  */
7259 < #line 3071 "conf_parser.y"
7260 <    {
7261 <  if (conf_parser_ctx.pass == 2)
7262 <  {
7263 <    struct CollectItem *yy_tmp = NULL;
7264 <    dlink_node *ptr, *next_ptr;
7265 <
7266 <    DLINK_FOREACH_SAFE(ptr, next_ptr, col_conf_list.head)
7267 <    {
7268 <      struct AccessItem *new_aconf;
7269 <      struct ConfItem *new_conf;
7270 <
7271 <      yy_tmp = ptr->data;
7272 <      new_conf = make_conf_item(GDENY_TYPE);
7273 <      new_aconf = map_to_conf(new_conf);
7274 <
7275 <      new_aconf->flags = yy_aconf->flags;
7276 <
7277 <      if (yy_conf->name != NULL)
7278 <        DupString(new_conf->name, yy_conf->name);
7279 <      else
7280 <        DupString(new_conf->name, "*");
7281 <      if (yy_aconf->user != NULL)
7282 <         DupString(new_aconf->user, yy_tmp->user);
7283 <      else  
7284 <        DupString(new_aconf->user, "*");
7285 <      if (yy_aconf->host != NULL)
7286 <        DupString(new_aconf->host, yy_tmp->host);
7287 <      else
7288 <        DupString(new_aconf->host, "*");
7289 <
7290 <      dlinkDelete(&yy_tmp->node, &col_conf_list);
7291 <    }
7292 <
7293 <    /*
7294 <     * In case someone has fed us with more than one action= after user/name
7295 <     * which would leak memory  -Michael
7296 <     */
7297 <    if (yy_conf->name == NULL || yy_aconf->user == NULL)
7298 <      delete_conf_item(yy_conf);
7299 <
7300 <    yy_conf = make_conf_item(GDENY_TYPE);
7301 <    yy_aconf = map_to_conf(yy_conf);
7302 <  }
7303 < }
7304 <    break;
7305 <
7306 <  case 609:
7307 <
7308 < /* Line 1806 of yacc.c  */
7309 < #line 3118 "conf_parser.y"
7310 <    {
7311 <  if (conf_parser_ctx.pass == 2)
7312 <    yy_aconf->flags |= GDENY_REJECT;
7313 < }
7314 <    break;
7315 <
7316 <  case 610:
7317 <
7318 < /* Line 1806 of yacc.c  */
7319 < #line 3122 "conf_parser.y"
7320 <    {
7321 <  if (conf_parser_ctx.pass == 2)
7322 <    yy_aconf->flags |= GDENY_BLOCK;
7323 < }
7324 <    break;
7325 <
7326 <  case 632:
7327 <
7328 < /* Line 1806 of yacc.c  */
7329 < #line 3146 "conf_parser.y"
6636 > /* Line 1813 of yacc.c  */
6637 > #line 2911 "conf_parser.y"
6638      {
6639    ConfigChannel.disable_fake_channels = yylval.number;
6640   }
6641      break;
6642  
6643 <  case 633:
6644 <
6645 < /* Line 1806 of yacc.c  */
7338 < #line 3151 "conf_parser.y"
6643 >  case 597:
6644 > /* Line 1813 of yacc.c  */
6645 > #line 2916 "conf_parser.y"
6646      {
6647    ConfigChannel.restrict_channels = yylval.number;
6648   }
6649      break;
6650  
6651 <  case 634:
6652 <
6653 < /* Line 1806 of yacc.c  */
7347 < #line 3156 "conf_parser.y"
7348 <    {
7349 <  ConfigChannel.disable_local_channels = yylval.number;
7350 < }
7351 <    break;
7352 <
7353 <  case 635:
7354 <
7355 < /* Line 1806 of yacc.c  */
7356 < #line 3161 "conf_parser.y"
7357 <    {
7358 <  ConfigChannel.use_except = yylval.number;
7359 < }
7360 <    break;
7361 <
7362 <  case 636:
7363 <
7364 < /* Line 1806 of yacc.c  */
7365 < #line 3166 "conf_parser.y"
7366 <    {
7367 <  ConfigChannel.use_invex = yylval.number;
7368 < }
7369 <    break;
7370 <
7371 <  case 637:
7372 <
7373 < /* Line 1806 of yacc.c  */
7374 < #line 3171 "conf_parser.y"
7375 <    {
7376 <  ConfigChannel.use_knock = yylval.number;
7377 < }
7378 <    break;
7379 <
7380 <  case 638:
7381 <
7382 < /* Line 1806 of yacc.c  */
7383 < #line 3176 "conf_parser.y"
6651 >  case 598:
6652 > /* Line 1813 of yacc.c  */
6653 > #line 2921 "conf_parser.y"
6654      {
6655    ConfigChannel.knock_delay = (yyvsp[(3) - (4)].number);
6656   }
6657      break;
6658  
6659 <  case 639:
6660 <
6661 < /* Line 1806 of yacc.c  */
7392 < #line 3181 "conf_parser.y"
6659 >  case 599:
6660 > /* Line 1813 of yacc.c  */
6661 > #line 2926 "conf_parser.y"
6662      {
6663    ConfigChannel.knock_delay_channel = (yyvsp[(3) - (4)].number);
6664   }
6665      break;
6666  
6667 <  case 640:
6668 <
6669 < /* Line 1806 of yacc.c  */
7401 < #line 3186 "conf_parser.y"
6667 >  case 600:
6668 > /* Line 1813 of yacc.c  */
6669 > #line 2931 "conf_parser.y"
6670      {
6671    ConfigChannel.max_chans_per_user = (yyvsp[(3) - (4)].number);
6672   }
6673      break;
6674  
6675 <  case 641:
6675 >  case 601:
6676 > /* Line 1813 of yacc.c  */
6677 > #line 2936 "conf_parser.y"
6678 >    {
6679 >  ConfigChannel.max_chans_per_oper = (yyvsp[(3) - (4)].number);
6680 > }
6681 >    break;
6682  
6683 < /* Line 1806 of yacc.c  */
6684 < #line 3191 "conf_parser.y"
6683 >  case 602:
6684 > /* Line 1813 of yacc.c  */
6685 > #line 2941 "conf_parser.y"
6686      {
6687    ConfigChannel.quiet_on_ban = yylval.number;
6688   }
6689      break;
6690  
6691 <  case 642:
6692 <
6693 < /* Line 1806 of yacc.c  */
7419 < #line 3196 "conf_parser.y"
6691 >  case 603:
6692 > /* Line 1813 of yacc.c  */
6693 > #line 2946 "conf_parser.y"
6694      {
6695    ConfigChannel.max_bans = (yyvsp[(3) - (4)].number);
6696   }
6697      break;
6698  
6699 <  case 643:
6700 <
6701 < /* Line 1806 of yacc.c  */
7428 < #line 3201 "conf_parser.y"
6699 >  case 604:
6700 > /* Line 1813 of yacc.c  */
6701 > #line 2951 "conf_parser.y"
6702      {
6703    ConfigChannel.default_split_user_count = (yyvsp[(3) - (4)].number);
6704   }
6705      break;
6706  
6707 <  case 644:
6708 <
6709 < /* Line 1806 of yacc.c  */
7437 < #line 3206 "conf_parser.y"
6707 >  case 605:
6708 > /* Line 1813 of yacc.c  */
6709 > #line 2956 "conf_parser.y"
6710      {
6711    ConfigChannel.default_split_server_count = (yyvsp[(3) - (4)].number);
6712   }
6713      break;
6714  
6715 <  case 645:
6716 <
6717 < /* Line 1806 of yacc.c  */
7446 < #line 3211 "conf_parser.y"
6715 >  case 606:
6716 > /* Line 1813 of yacc.c  */
6717 > #line 2961 "conf_parser.y"
6718      {
6719    ConfigChannel.no_create_on_split = yylval.number;
6720   }
6721      break;
6722  
6723 <  case 646:
6724 <
6725 < /* Line 1806 of yacc.c  */
7455 < #line 3216 "conf_parser.y"
6723 >  case 607:
6724 > /* Line 1813 of yacc.c  */
6725 > #line 2966 "conf_parser.y"
6726      {
6727    ConfigChannel.no_join_on_split = yylval.number;
6728   }
6729      break;
6730  
6731 <  case 647:
6732 <
6733 < /* Line 1806 of yacc.c  */
7464 < #line 3221 "conf_parser.y"
6731 >  case 608:
6732 > /* Line 1813 of yacc.c  */
6733 > #line 2971 "conf_parser.y"
6734      {
6735    GlobalSetOptions.joinfloodcount = yylval.number;
6736   }
6737      break;
6738  
6739 <  case 648:
6740 <
6741 < /* Line 1806 of yacc.c  */
7473 < #line 3226 "conf_parser.y"
6739 >  case 609:
6740 > /* Line 1813 of yacc.c  */
6741 > #line 2976 "conf_parser.y"
6742      {
6743    GlobalSetOptions.joinfloodtime = yylval.number;
6744   }
6745      break;
6746  
6747 <  case 660:
6748 <
6749 < /* Line 1806 of yacc.c  */
7482 < #line 3245 "conf_parser.y"
6747 >  case 620:
6748 > /* Line 1813 of yacc.c  */
6749 > #line 2994 "conf_parser.y"
6750      {
6751    if (conf_parser_ctx.pass == 2)
6752      ConfigServerHide.flatten_links = yylval.number;
6753   }
6754      break;
6755  
6756 <  case 661:
6757 <
6758 < /* Line 1806 of yacc.c  */
7492 < #line 3251 "conf_parser.y"
6756 >  case 621:
6757 > /* Line 1813 of yacc.c  */
6758 > #line 3000 "conf_parser.y"
6759      {
6760    if (conf_parser_ctx.pass == 2)
6761      ConfigServerHide.hide_servers = yylval.number;
6762   }
6763      break;
6764  
6765 <  case 662:
6766 <
6767 < /* Line 1806 of yacc.c  */
7502 < #line 3257 "conf_parser.y"
6765 >  case 622:
6766 > /* Line 1813 of yacc.c  */
6767 > #line 3006 "conf_parser.y"
6768      {
6769    if (conf_parser_ctx.pass == 2)
6770    {
# Line 7509 | Line 6774 | yyreduce:
6774   }
6775      break;
6776  
6777 <  case 663:
6778 <
6779 < /* Line 1806 of yacc.c  */
7515 < #line 3266 "conf_parser.y"
6777 >  case 623:
6778 > /* Line 1813 of yacc.c  */
6779 > #line 3015 "conf_parser.y"
6780      {
6781    if (conf_parser_ctx.pass == 2)
6782    {
# Line 7527 | Line 6791 | yyreduce:
6791   }
6792      break;
6793  
6794 <  case 664:
6795 <
6796 < /* Line 1806 of yacc.c  */
7533 < #line 3280 "conf_parser.y"
6794 >  case 624:
6795 > /* Line 1813 of yacc.c  */
6796 > #line 3029 "conf_parser.y"
6797      {
6798    if (conf_parser_ctx.pass == 2)
6799      ConfigServerHide.hidden = yylval.number;
6800   }
6801      break;
6802  
6803 <  case 665:
6804 <
6805 < /* Line 1806 of yacc.c  */
7543 < #line 3286 "conf_parser.y"
7544 <    {
7545 <  if (conf_parser_ctx.pass == 2)
7546 <    ConfigServerHide.disable_hidden = yylval.number;
7547 < }
7548 <    break;
7549 <
7550 <  case 666:
7551 <
7552 < /* Line 1806 of yacc.c  */
7553 < #line 3292 "conf_parser.y"
6803 >  case 625:
6804 > /* Line 1813 of yacc.c  */
6805 > #line 3035 "conf_parser.y"
6806      {
6807    if (conf_parser_ctx.pass == 2)
6808      ConfigServerHide.hide_server_ips = yylval.number;
# Line 7558 | Line 6810 | yyreduce:
6810      break;
6811  
6812  
6813 <
6814 < /* Line 1806 of yacc.c  */
7563 < #line 7564 "conf_parser.c"
6813 > /* Line 1813 of yacc.c  */
6814 > #line 6815 "conf_parser.c"
6815        default: break;
6816      }
6817    /* User semantic actions sometimes alter yychar, and that requires
# Line 7723 | Line 6974 | yyerrlab1:
6974        YY_STACK_PRINT (yyss, yyssp);
6975      }
6976  
6977 +  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
6978    *++yyvsp = yylval;
6979 +  YY_IGNORE_MAYBE_UNINITIALIZED_END
6980  
6981  
6982    /* Shift the error token.  */
# Line 7747 | Line 7000 | yyabortlab:
7000    yyresult = 1;
7001    goto yyreturn;
7002  
7003 < #if !defined(yyoverflow) || YYERROR_VERBOSE
7003 > #if !defined yyoverflow || YYERROR_VERBOSE
7004   /*-------------------------------------------------.
7005   | yyexhaustedlab -- memory exhaustion comes here.  |
7006   `-------------------------------------------------*/
# Line 7789 | Line 7042 | yyreturn:
7042   }
7043  
7044  
7792

Diff Legend

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