2
/* A Bison parser, made by GNU Bison 2.4.1. */
4
/* Skeleton implementation for Bison's Yacc-like parsers in C
6
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
7
Free Software Foundation, Inc.
9
This program is free software: you can redistribute it and/or modify
10
it under the terms of the GNU General Public License as published by
11
the Free Software Foundation, either version 3 of the License, or
12
(at your option) any later version.
14
This program is distributed in the hope that it will be useful,
15
but WITHOUT ANY WARRANTY; without even the implied warranty of
16
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
GNU General Public License for more details.
19
You should have received a copy of the GNU General Public License
20
along with this program. If not, see <http://www.gnu.org/licenses/>. */
22
/* As a special exception, you may create a larger work that contains
23
part or all of the Bison parser skeleton and distribute that work
24
under terms of your choice, so long as that work isn't itself a
25
parser generator using the skeleton or a modified version thereof
26
as a parser skeleton. Alternatively, if you modify or redistribute
27
the parser skeleton itself, you may (at your option) remove this
28
special exception, which will cause the skeleton and the resulting
29
Bison output files to be licensed under the GNU General Public
30
License without this special exception.
32
This special exception was added by the Free Software Foundation in
33
version 2.2 of Bison. */
35
/* C LALR(1) parser skeleton written by Richard Stallman, by
36
simplifying the original so-called "semantic" parser. */
38
/* All symbols defined below should begin with yy or YY, to avoid
39
infringing on user name space. This should be done even for local
40
variables, as they might otherwise be expanded by user macros.
41
There are some unavoidable exceptions within include files to
42
define necessary library symbols; they are noted "INFRINGES ON
43
USER NAME SPACE" below. */
45
/* Identify Bison output. */
49
#define YYBISON_VERSION "2.4.1"
52
#define YYSKELETON_NAME "yacc.c"
63
/* Using locations. */
64
#define YYLSP_NEEDED 1
66
/* Substitute the variable and function names. */
67
#define yyparse main_parse
68
#define yylex main_lex
69
#define yyerror main_error
70
#define yylval main_lval
71
#define yychar main_char
72
#define yydebug main_debug
73
#define yynerrs main_nerrs
74
#define yylloc main_lloc
76
/* Copy the first part of user declarations. */
79
/* Line 189 of yacc.c */
80
#line 81 "cfg-grammar.c"
82
/* Enabling traces. */
87
/* Enabling verbose error messages. */
88
#ifdef YYERROR_VERBOSE
89
# undef YYERROR_VERBOSE
90
# define YYERROR_VERBOSE 1
92
# define YYERROR_VERBOSE 1
95
/* Enabling the token table. */
97
# define YYTOKEN_TABLE 0
100
/* "%code requires" blocks. */
102
/* Line 209 of yacc.c */
103
#line 25 "cfg-grammar.y"
106
/* YYSTYPE and YYLTYPE is defined by the lexer */
107
#include "cfg-lexer.h"
112
/* Line 209 of yacc.c */
113
#line 114 "cfg-grammar.c"
118
/* Put the tokens into the symbol table, so that GDB and other debuggers
122
LL_CONTEXT_DESTINATION = 2,
123
LL_CONTEXT_SOURCE = 3,
124
LL_CONTEXT_PARSER = 4,
125
LL_CONTEXT_REWRITE = 5,
126
LL_CONTEXT_FILTER = 6,
128
LL_CONTEXT_BLOCK_DEF = 8,
129
LL_CONTEXT_BLOCK_REF = 9,
130
LL_CONTEXT_BLOCK_CONTENT = 10,
131
LL_CONTEXT_PRAGMA = 11,
132
LL_CONTEXT_FORMAT = 12,
133
LL_CONTEXT_TEMPLATE_FUNC = 13,
137
KW_DESTINATION = 10003,
154
KW_SESSION_STATEMENTS = 10040,
155
KW_DELIMITERS = 10050,
157
KW_QUOTE_PAIRS = 10052,
160
KW_MARK_FREQ = 10071,
161
KW_STATS_FREQ = 10072,
162
KW_STATS_LEVEL = 10073,
163
KW_FLUSH_LINES = 10074,
165
KW_FLUSH_TIMEOUT = 10076,
166
KW_LOG_MSG_SIZE = 10077,
167
KW_FILE_TEMPLATE = 10078,
168
KW_PROTO_TEMPLATE = 10079,
169
KW_CHAIN_HOSTNAMES = 10090,
170
KW_NORMALIZE_HOSTNAMES = 10091,
171
KW_KEEP_HOSTNAME = 10092,
172
KW_CHECK_HOSTNAME = 10093,
173
KW_BAD_HOSTNAME = 10094,
174
KW_KEEP_TIMESTAMP = 10100,
177
KW_DNS_CACHE = 10120,
178
KW_DNS_CACHE_SIZE = 10121,
179
KW_DNS_CACHE_EXPIRE = 10130,
180
KW_DNS_CACHE_EXPIRE_FAILED = 10131,
181
KW_DNS_CACHE_HOSTS = 10132,
182
KW_PERSIST_ONLY = 10140,
183
KW_TZ_CONVERT = 10150,
184
KW_TS_FORMAT = 10151,
185
KW_FRAC_DIGITS = 10152,
186
KW_LOG_FIFO_SIZE = 10160,
187
KW_LOG_FETCH_LIMIT = 10162,
188
KW_LOG_IW_SIZE = 10163,
189
KW_LOG_PREFIX = 10164,
190
KW_PROGRAM_OVERRIDE = 10165,
191
KW_HOST_OVERRIDE = 10166,
195
KW_TIME_ZONE = 10201,
196
KW_RECV_TIME_ZONE = 10202,
197
KW_SEND_TIME_ZONE = 10203,
198
KW_LOCAL_TIME_ZONE = 10204,
200
KW_TIME_REOPEN = 10210,
201
KW_TIME_REAP = 10211,
202
KW_TIME_SLEEP = 10212,
203
KW_TMPL_ESCAPE = 10220,
205
KW_CREATE_DIRS = 10240,
209
KW_DIR_OWNER = 10260,
210
KW_DIR_GROUP = 10261,
213
KW_TEMPLATE_ESCAPE = 10271,
214
KW_DEFAULT_FACILITY = 10300,
215
KW_DEFAULT_LEVEL = 10301,
217
KW_USE_TIME_RECVD = 10340,
234
LL_IDENTIFIER = 10421,
246
#define LL_CONTEXT_ROOT 1
247
#define LL_CONTEXT_DESTINATION 2
248
#define LL_CONTEXT_SOURCE 3
249
#define LL_CONTEXT_PARSER 4
250
#define LL_CONTEXT_REWRITE 5
251
#define LL_CONTEXT_FILTER 6
252
#define LL_CONTEXT_LOG 7
253
#define LL_CONTEXT_BLOCK_DEF 8
254
#define LL_CONTEXT_BLOCK_REF 9
255
#define LL_CONTEXT_BLOCK_CONTENT 10
256
#define LL_CONTEXT_PRAGMA 11
257
#define LL_CONTEXT_FORMAT 12
258
#define LL_CONTEXT_TEMPLATE_FUNC 13
259
#define KW_SOURCE 10000
260
#define KW_FILTER 10001
261
#define KW_PARSER 10002
262
#define KW_DESTINATION 10003
264
#define KW_OPTIONS 10005
265
#define KW_INCLUDE 10006
266
#define KW_BLOCK 10007
267
#define KW_INTERNAL 10010
268
#define KW_FILE 10011
270
#define KW_TYPE 10031
271
#define KW_COLUMNS 10032
272
#define KW_INDEXES 10033
273
#define KW_VALUES 10034
274
#define KW_PASSWORD 10035
275
#define KW_DATABASE 10036
276
#define KW_USERNAME 10037
277
#define KW_TABLE 10038
278
#define KW_ENCODING 10039
279
#define KW_SESSION_STATEMENTS 10040
280
#define KW_DELIMITERS 10050
281
#define KW_QUOTES 10051
282
#define KW_QUOTE_PAIRS 10052
283
#define KW_NULL 10053
284
#define KW_SYSLOG 10060
285
#define KW_MARK_FREQ 10071
286
#define KW_STATS_FREQ 10072
287
#define KW_STATS_LEVEL 10073
288
#define KW_FLUSH_LINES 10074
289
#define KW_SUPPRESS 10075
290
#define KW_FLUSH_TIMEOUT 10076
291
#define KW_LOG_MSG_SIZE 10077
292
#define KW_FILE_TEMPLATE 10078
293
#define KW_PROTO_TEMPLATE 10079
294
#define KW_CHAIN_HOSTNAMES 10090
295
#define KW_NORMALIZE_HOSTNAMES 10091
296
#define KW_KEEP_HOSTNAME 10092
297
#define KW_CHECK_HOSTNAME 10093
298
#define KW_BAD_HOSTNAME 10094
299
#define KW_KEEP_TIMESTAMP 10100
300
#define KW_USE_DNS 10110
301
#define KW_USE_FQDN 10111
302
#define KW_DNS_CACHE 10120
303
#define KW_DNS_CACHE_SIZE 10121
304
#define KW_DNS_CACHE_EXPIRE 10130
305
#define KW_DNS_CACHE_EXPIRE_FAILED 10131
306
#define KW_DNS_CACHE_HOSTS 10132
307
#define KW_PERSIST_ONLY 10140
308
#define KW_TZ_CONVERT 10150
309
#define KW_TS_FORMAT 10151
310
#define KW_FRAC_DIGITS 10152
311
#define KW_LOG_FIFO_SIZE 10160
312
#define KW_LOG_FETCH_LIMIT 10162
313
#define KW_LOG_IW_SIZE 10163
314
#define KW_LOG_PREFIX 10164
315
#define KW_PROGRAM_OVERRIDE 10165
316
#define KW_HOST_OVERRIDE 10166
317
#define KW_THROTTLE 10170
318
#define KW_FLAGS 10190
319
#define KW_PAD_SIZE 10200
320
#define KW_TIME_ZONE 10201
321
#define KW_RECV_TIME_ZONE 10202
322
#define KW_SEND_TIME_ZONE 10203
323
#define KW_LOCAL_TIME_ZONE 10204
324
#define KW_FORMAT 10205
325
#define KW_TIME_REOPEN 10210
326
#define KW_TIME_REAP 10211
327
#define KW_TIME_SLEEP 10212
328
#define KW_TMPL_ESCAPE 10220
329
#define KW_OPTIONAL 10230
330
#define KW_CREATE_DIRS 10240
331
#define KW_OWNER 10250
332
#define KW_GROUP 10251
333
#define KW_PERM 10252
334
#define KW_DIR_OWNER 10260
335
#define KW_DIR_GROUP 10261
336
#define KW_DIR_PERM 10262
337
#define KW_TEMPLATE 10270
338
#define KW_TEMPLATE_ESCAPE 10271
339
#define KW_DEFAULT_FACILITY 10300
340
#define KW_DEFAULT_LEVEL 10301
341
#define KW_PORT 10323
342
#define KW_USE_TIME_RECVD 10340
343
#define KW_FACILITY 10350
344
#define KW_LEVEL 10351
345
#define KW_HOST 10352
346
#define KW_MATCH 10353
347
#define KW_MESSAGE 10354
348
#define KW_NETMASK 10355
349
#define KW_TAGS 10356
350
#define KW_VALUE 10361
351
#define KW_REWRITE 10370
353
#define KW_SUBST 10372
356
#define KW_IFDEF 10410
357
#define KW_ENDIF 10411
358
#define LL_DOTDOT 10420
359
#define LL_IDENTIFIER 10421
360
#define LL_NUMBER 10422
361
#define LL_FLOAT 10423
362
#define LL_STRING 10424
363
#define LL_TOKEN 10425
364
#define LL_BLOCK 10426
365
#define LL_PRAGMA 10427
367
#define LL_ERROR 10429
372
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
374
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
375
# define YYSTYPE_IS_DECLARED 1
378
#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
379
typedef struct YYLTYPE
386
# define yyltype YYLTYPE /* obsolescent; will be withdrawn */
387
# define YYLTYPE_IS_DECLARED 1
388
# define YYLTYPE_IS_TRIVIAL 1
392
/* Copy the second part of user declarations. */
395
/* Line 264 of yacc.c */
396
#line 397 "cfg-grammar.c"
397
/* Unqualified %code blocks. */
399
/* Line 265 of yacc.c */
400
#line 45 "cfg-grammar.y"
403
# define YYLLOC_DEFAULT(Current, Rhs, N) \
407
(Current).level = YYRHSLOC(Rhs, 1).level; \
408
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
409
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
410
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
411
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
415
(Current).level = YYRHSLOC(Rhs, 0).level; \
416
(Current).first_line = (Current).last_line = \
417
YYRHSLOC (Rhs, 0).last_line; \
418
(Current).first_column = (Current).last_column = \
419
YYRHSLOC (Rhs, 0).last_column; \
423
#define CHECK_ERROR(val, token, errorfmt, ...) do { \
429
g_snprintf(__buf, sizeof(__buf), errorfmt ? errorfmt : "x", ## __VA_ARGS__); \
430
yyerror(& (token), lexer, NULL, __buf); \
436
#define YYMAXDEPTH 20000
441
/* Line 265 of yacc.c */
442
#line 264 "cfg-grammar.y"
445
#include "cfg-parser.h"
451
#include "templates.h"
452
#include "logreader.h"
453
#include "logparser.h"
454
#include "logrewrite.h"
455
#include "filter-expr-parser.h"
456
#include "rewrite-expr-parser.h"
457
#include "block-ref-parser.h"
458
#include "parser-expr-parser.h"
463
#include "logwriter.h"
465
#include "messages.h"
467
#include "syslog-names.h"
469
#include <netinet/in.h>
474
#include "cfg-grammar.h"
476
LogDriver *last_driver;
477
LogReaderOptions *last_reader_options;
478
LogWriterOptions *last_writer_options;
479
LogTemplate *last_template;
480
GList *last_rewrite_expr;
481
GList *last_parser_expr;
482
FilterExprNode *last_filter_expr;
483
CfgArgs *last_block_args;
488
/* Line 265 of yacc.c */
489
#line 490 "cfg-grammar.c"
496
typedef YYTYPE_UINT8 yytype_uint8;
498
typedef unsigned char yytype_uint8;
502
typedef YYTYPE_INT8 yytype_int8;
503
#elif (defined __STDC__ || defined __C99__FUNC__ \
504
|| defined __cplusplus || defined _MSC_VER)
505
typedef signed char yytype_int8;
507
typedef short int yytype_int8;
511
typedef YYTYPE_UINT16 yytype_uint16;
513
typedef unsigned short int yytype_uint16;
517
typedef YYTYPE_INT16 yytype_int16;
519
typedef short int yytype_int16;
523
# ifdef __SIZE_TYPE__
524
# define YYSIZE_T __SIZE_TYPE__
525
# elif defined size_t
526
# define YYSIZE_T size_t
527
# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
528
|| defined __cplusplus || defined _MSC_VER)
529
# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
530
# define YYSIZE_T size_t
532
# define YYSIZE_T unsigned int
536
#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
541
# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
542
# define YY_(msgid) dgettext ("bison-runtime", msgid)
546
# define YY_(msgid) msgid
550
/* Suppress unused-variable warnings by "using" E. */
551
#if ! defined lint || defined __GNUC__
552
# define YYUSE(e) ((void) (e))
554
# define YYUSE(e) /* empty */
557
/* Identity function, used to suppress warnings about constant conditions. */
561
#if (defined __STDC__ || defined __C99__FUNC__ \
562
|| defined __cplusplus || defined _MSC_VER)
575
#if ! defined yyoverflow || YYERROR_VERBOSE
577
/* The parser invokes alloca or malloc; define the necessary symbols. */
579
# ifdef YYSTACK_USE_ALLOCA
580
# if YYSTACK_USE_ALLOCA
582
# define YYSTACK_ALLOC __builtin_alloca
583
# elif defined __BUILTIN_VA_ARG_INCR
584
# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
586
# define YYSTACK_ALLOC __alloca
587
# elif defined _MSC_VER
588
# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
589
# define alloca _alloca
591
# define YYSTACK_ALLOC alloca
592
# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
593
|| defined __cplusplus || defined _MSC_VER)
594
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
603
# ifdef YYSTACK_ALLOC
604
/* Pacify GCC's `empty if-body' warning. */
605
# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
606
# ifndef YYSTACK_ALLOC_MAXIMUM
607
/* The OS might guarantee only one guard page at the bottom of the stack,
608
and a page size can be as small as 4096 bytes. So we cannot safely
609
invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
610
to allow for a few compiler-allocated temporary stack slots. */
611
# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
614
# define YYSTACK_ALLOC YYMALLOC
615
# define YYSTACK_FREE YYFREE
616
# ifndef YYSTACK_ALLOC_MAXIMUM
617
# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
619
# if (defined __cplusplus && ! defined _STDLIB_H \
620
&& ! ((defined YYMALLOC || defined malloc) \
621
&& (defined YYFREE || defined free)))
622
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
628
# define YYMALLOC malloc
629
# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
630
|| defined __cplusplus || defined _MSC_VER)
631
void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
636
# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
637
|| defined __cplusplus || defined _MSC_VER)
638
void free (void *); /* INFRINGES ON USER NAME SPACE */
642
#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
645
#if (! defined yyoverflow \
646
&& (! defined __cplusplus \
647
|| (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
648
&& defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
650
/* A type that is properly aligned for any stack member. */
653
yytype_int16 yyss_alloc;
658
/* The size of the maximum gap between one aligned stack and the next. */
659
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
661
/* The size of an array large to enough to hold all stacks, each with
663
# define YYSTACK_BYTES(N) \
664
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
665
+ 2 * YYSTACK_GAP_MAXIMUM)
667
/* Copy COUNT objects from FROM to TO. The source and destination do
670
# if defined __GNUC__ && 1 < __GNUC__
671
# define YYCOPY(To, From, Count) \
672
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
674
# define YYCOPY(To, From, Count) \
678
for (yyi = 0; yyi < (Count); yyi++) \
679
(To)[yyi] = (From)[yyi]; \
685
/* Relocate STACK from its old location to the new one. The
686
local variables YYSIZE and YYSTACKSIZE give the old and new number of
687
elements in the stack, and YYPTR gives the new location of the
688
stack. Advance YYPTR to a properly aligned location for the next
690
# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
693
YYSIZE_T yynewbytes; \
694
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
695
Stack = &yyptr->Stack_alloc; \
696
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
697
yyptr += yynewbytes / sizeof (*yyptr); \
703
/* YYFINAL -- State number of the termination state. */
705
/* YYLAST -- Last index in YYTABLE. */
708
/* YYNTOKENS -- Number of terminals. */
709
#define YYNTOKENS 130
710
/* YYNNTS -- Number of nonterminals. */
712
/* YYNRULES -- Number of rules. */
714
/* YYNRULES -- Number of states. */
715
#define YYNSTATES 325
717
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
719
#define YYMAXUTOK 10430
721
#define YYTRANSLATE(YYX) \
722
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
724
/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
725
static const yytype_uint8 yytranslate[] =
727
0, 3, 4, 5, 6, 7, 8, 9, 10, 11,
728
12, 13, 14, 15, 2, 2, 2, 2, 2, 2,
729
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
730
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
731
128, 129, 2, 2, 2, 2, 2, 2, 2, 2,
732
2, 2, 2, 2, 2, 2, 2, 2, 2, 125,
733
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
734
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
735
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
736
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
737
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
738
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
739
2, 2, 2, 126, 2, 127, 2, 2, 2, 2,
740
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
741
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
742
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
743
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
744
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
745
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
746
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
747
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
748
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
749
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
750
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
751
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
752
2, 2, 2, 2, 2, 2, 1, 2, 2, 2,
753
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
754
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
755
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
756
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
757
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
758
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
759
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
760
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
761
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
762
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
763
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
764
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
765
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
766
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
767
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
768
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
769
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
770
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
771
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
772
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
773
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
774
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
775
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
776
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
777
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
778
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
779
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
780
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
781
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
782
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
783
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
784
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
785
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
786
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
787
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
788
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
789
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
790
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
791
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
792
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
793
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
794
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
795
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
796
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
797
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
798
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
799
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
800
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
801
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
802
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
803
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
804
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
805
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
806
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
807
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
808
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
809
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
810
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
811
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
812
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
813
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
814
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
815
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
816
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
817
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
818
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
819
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
820
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
821
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
822
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
823
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
824
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
825
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
826
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
827
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
828
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
829
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
830
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
831
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
832
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
833
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
834
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
835
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
836
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
837
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
838
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
839
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
840
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
841
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
842
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
843
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
844
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
845
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
846
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
847
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
848
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
849
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
850
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
851
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
852
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
853
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
854
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
855
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
856
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
857
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
858
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
859
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
860
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
861
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
862
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
863
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
864
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
865
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
866
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
867
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
868
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
869
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
870
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
871
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
872
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
873
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
874
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
875
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
876
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
877
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
878
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
879
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
880
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
881
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
882
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
883
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
884
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
885
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
886
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
887
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
888
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
889
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
890
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
891
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
892
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
893
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
894
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
895
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
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, 2, 2, 2, 2, 2, 2,
900
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
901
2, 2, 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, 2, 2, 2, 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,
911
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
912
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
913
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
914
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
915
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
916
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
917
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
918
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
919
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
920
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
921
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
922
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
923
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
924
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
925
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
926
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
927
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
928
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
929
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
930
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
931
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
932
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
933
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
934
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
935
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
936
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
937
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
938
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
939
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
940
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
941
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
942
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
943
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
944
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
945
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
946
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
947
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
948
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
949
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
950
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
951
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
952
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
953
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
954
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
955
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
956
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
957
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
958
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
959
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
960
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
961
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
962
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
963
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
964
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
965
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
966
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
967
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
968
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
969
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
970
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
971
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
972
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
973
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
974
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
975
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
976
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
977
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
978
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
979
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
980
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
981
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
982
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
983
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
984
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
985
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
986
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
987
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
988
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
989
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
990
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
991
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
992
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
993
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
994
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
995
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
996
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
997
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
998
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
999
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1000
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1001
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1002
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1003
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1004
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1005
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1006
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1007
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1008
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1009
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1010
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1011
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1012
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1013
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1014
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1015
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1016
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1017
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1018
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1019
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1020
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1021
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1022
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1023
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1024
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1025
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1026
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1027
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1028
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1029
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1030
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1031
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1032
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1033
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1034
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1035
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1036
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1037
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1038
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1039
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1040
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1041
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1042
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1043
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1044
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1045
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1046
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1047
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1048
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1049
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1050
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1051
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1052
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1053
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1054
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1055
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1056
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1057
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1058
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1059
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1060
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1061
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1062
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1063
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1064
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1065
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1066
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1067
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1068
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1069
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1070
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1071
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1072
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1073
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1074
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1075
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1076
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1077
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1078
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1079
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1080
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1081
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1082
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1083
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1084
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1085
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1086
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1087
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1088
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1089
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1090
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1091
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1092
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1093
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1094
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1095
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1096
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1097
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1098
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1099
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1100
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1101
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1102
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1103
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1104
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1105
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1106
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1107
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1108
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1109
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1110
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1111
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1112
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1113
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1114
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1115
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1116
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1117
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1118
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1119
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1120
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1121
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1122
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1123
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1124
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1125
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1126
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1127
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1128
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1129
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1130
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1131
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1132
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1133
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1134
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1135
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1136
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1137
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1138
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1139
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1140
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1141
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1142
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1143
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1144
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1145
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1146
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1147
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1148
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1149
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1150
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1151
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1152
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1153
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1154
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1155
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1156
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1157
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1158
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1159
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1160
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1161
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1162
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1163
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1164
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1165
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1166
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1167
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1168
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1169
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1170
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1171
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1172
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1173
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1174
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1175
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1176
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1177
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1178
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1179
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1180
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1181
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1182
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1183
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1184
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1185
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1186
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1187
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1188
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1189
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1190
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1191
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1192
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1193
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1194
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1195
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1196
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1197
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1198
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1199
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1200
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1201
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1202
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1203
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1204
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1205
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1206
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1207
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1208
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1209
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1210
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1211
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1212
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1213
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1214
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1215
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1216
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1217
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1218
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1219
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1220
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1221
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1222
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1223
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1224
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1225
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1226
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1227
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1228
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1229
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1230
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1231
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1232
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1233
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1234
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1235
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1236
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1237
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1238
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1239
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1240
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1241
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1242
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1243
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1244
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1245
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1246
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1247
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1248
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1249
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1250
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1251
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1252
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1253
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1254
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1255
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1256
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1257
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1258
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1259
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1260
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1261
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1262
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1263
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1264
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1265
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1266
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1267
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1268
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1269
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1270
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1271
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1272
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1273
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1274
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1275
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1276
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1277
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1278
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1279
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1280
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1281
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1282
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1283
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1284
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1285
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1286
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1287
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1288
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1289
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1290
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1291
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1292
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1293
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1294
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1295
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1296
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1297
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1298
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1299
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1300
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1301
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1302
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1303
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1304
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1305
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1306
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1307
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1308
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1309
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1310
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1311
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1312
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1313
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1314
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1315
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1316
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1317
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1318
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1319
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1320
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1321
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1322
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1323
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1324
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1325
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1326
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1327
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1328
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1329
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1330
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1331
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1332
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1333
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1334
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1335
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1336
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1337
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1338
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1339
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1340
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1341
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1342
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1343
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1344
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1345
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1346
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1347
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1348
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1349
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1350
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1351
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1352
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1353
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1354
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1355
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1356
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1357
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1358
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1359
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1360
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1361
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1362
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1363
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1364
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1365
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1366
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1367
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1368
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1369
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1370
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1371
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1372
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1373
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1374
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1375
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1376
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1377
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1378
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1379
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1380
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1381
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1382
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1383
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1384
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1385
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1386
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1387
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1388
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1389
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1390
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1391
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1392
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1393
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1394
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1395
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1396
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1397
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1398
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1399
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1400
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1401
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1402
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1403
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1404
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1405
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1406
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1407
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1408
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1409
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1410
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1411
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1412
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1413
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1414
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1415
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1416
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1417
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1418
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1419
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1420
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1421
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1422
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1423
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1424
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1425
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1426
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1427
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1428
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1429
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1430
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1431
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1432
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1433
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1434
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1435
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1436
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1437
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1438
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1439
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1440
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1441
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1442
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1443
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1444
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1445
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1446
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1447
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1448
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1449
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1450
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1451
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1452
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1453
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1454
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1455
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1456
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1457
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1458
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1459
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1460
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1461
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1462
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1463
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1464
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1465
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1466
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1467
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1468
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1469
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1470
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1471
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1472
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1473
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1474
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1475
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1476
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1477
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1478
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1479
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1480
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1481
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1482
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1483
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1484
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1485
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1486
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1487
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1488
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1489
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1490
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1491
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1492
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1493
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1494
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1495
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1496
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1497
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1498
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1499
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1500
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1501
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1502
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1503
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1504
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1505
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1506
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1507
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1508
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1509
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1510
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1511
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1512
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1513
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1514
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1515
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1516
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1517
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1518
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1519
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1520
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1521
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1522
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1523
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1524
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1525
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1526
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1527
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1528
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1529
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1530
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1531
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1532
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1533
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1534
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1535
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1536
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1537
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1538
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1539
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1540
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1541
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1542
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1543
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1544
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1545
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1546
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1547
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1548
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1549
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1550
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1551
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1552
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1553
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1554
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1555
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1556
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1557
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1558
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1559
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1560
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1561
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1562
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1563
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1564
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1565
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1566
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1567
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1568
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1569
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1570
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1571
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1572
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1573
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1574
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1575
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1576
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1577
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1578
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1579
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1580
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1581
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1582
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1583
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1584
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1585
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1586
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1587
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1588
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1589
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1590
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1591
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1592
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1593
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1594
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1595
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1596
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1597
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1598
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1599
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1600
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1601
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1602
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1603
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1604
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1605
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1606
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1607
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1608
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1609
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1610
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1611
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1612
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1613
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1614
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1615
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1616
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1617
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1618
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1619
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1620
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1621
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1622
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1623
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1624
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1625
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1626
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1627
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1628
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1629
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1630
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1631
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1632
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1633
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1634
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1635
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1636
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1637
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1638
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1639
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1640
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1641
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1642
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1643
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1644
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1645
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1646
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1647
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1648
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1649
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1650
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1651
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1652
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1653
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1654
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1655
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1656
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1657
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1658
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1659
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1660
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1661
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1662
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1663
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1664
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1665
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1666
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1667
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1668
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1669
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1670
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1671
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1672
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1673
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1674
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1675
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1676
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1677
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1678
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1679
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1680
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1681
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1682
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1683
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1684
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1685
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1686
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1687
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1688
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1689
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1690
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1691
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1692
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1693
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1694
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1695
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1696
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1697
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1698
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1699
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1700
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1701
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1702
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1703
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1704
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1705
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1706
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1707
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1708
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1709
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1710
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1711
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1712
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1713
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1714
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1715
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1716
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1717
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1718
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1719
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1720
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1721
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1722
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1723
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1724
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1725
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1726
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1727
16, 17, 18, 19, 20, 21, 22, 23, 2, 2,
1728
24, 25, 2, 2, 2, 2, 2, 2, 2, 2,
1729
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1730
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
1731
36, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1732
37, 38, 39, 40, 2, 2, 2, 2, 2, 2,
1733
41, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1734
2, 42, 43, 44, 45, 46, 47, 48, 49, 50,
1735
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1736
51, 52, 53, 54, 55, 2, 2, 2, 2, 2,
1737
56, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1738
57, 58, 2, 2, 2, 2, 2, 2, 2, 2,
1739
59, 60, 2, 2, 2, 2, 2, 2, 2, 2,
1740
61, 62, 63, 2, 2, 2, 2, 2, 2, 2,
1741
64, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1742
65, 66, 67, 2, 2, 2, 2, 2, 2, 2,
1743
68, 2, 69, 70, 71, 72, 73, 2, 2, 2,
1744
74, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1745
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1746
75, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1747
76, 77, 78, 79, 80, 81, 2, 2, 2, 2,
1748
82, 83, 84, 2, 2, 2, 2, 2, 2, 2,
1749
85, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1750
86, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1751
87, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1752
88, 89, 90, 2, 2, 2, 2, 2, 2, 2,
1753
91, 92, 93, 2, 2, 2, 2, 2, 2, 2,
1754
94, 95, 2, 2, 2, 2, 2, 2, 2, 2,
1755
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1756
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1757
96, 97, 2, 2, 2, 2, 2, 2, 2, 2,
1758
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1759
2, 2, 2, 98, 2, 2, 2, 2, 2, 2,
1760
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1761
99, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1762
100, 101, 102, 103, 104, 105, 106, 2, 2, 2,
1763
2, 107, 2, 2, 2, 2, 2, 2, 2, 2,
1764
108, 109, 110, 2, 2, 2, 2, 2, 2, 2,
1765
111, 112, 2, 2, 2, 2, 2, 2, 2, 2,
1766
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1767
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1768
113, 114, 2, 2, 2, 2, 2, 2, 2, 2,
1769
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1774
/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
1776
static const yytype_uint16 yyprhs[] =
1778
0, 0, 3, 5, 9, 10, 13, 16, 19, 22,
1779
25, 28, 31, 34, 37, 38, 39, 46, 47, 52,
1780
53, 58, 59, 64, 65, 66, 73, 74, 75, 83,
1781
84, 85, 86, 96, 99, 100, 105, 109, 113, 114,
1782
119, 124, 129, 134, 139, 143, 144, 151, 157, 158,
1783
160, 163, 166, 167, 171, 172, 178, 182, 183, 188,
1784
193, 197, 200, 201, 203, 205, 207, 211, 215, 218,
1785
219, 221, 223, 227, 228, 233, 238, 243, 248, 253,
1786
258, 263, 268, 273, 278, 283, 288, 293, 298, 303,
1787
308, 313, 318, 323, 328, 333, 338, 343, 348, 352,
1788
357, 361, 366, 370, 375, 379, 384, 388, 393, 397,
1789
402, 407, 412, 417, 422, 427, 432, 437, 442, 447,
1790
449, 451, 453, 455, 457, 459, 461, 463, 465
1793
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
1794
static const yytype_int16 yyrhs[] =
1796
131, 0, -1, 132, -1, 133, 125, 132, -1, -1,
1797
16, 134, -1, 19, 143, -1, 20, 146, -1, 17,
1798
137, -1, 18, 139, -1, 108, 141, -1, 94, 163,
1799
-1, 21, 162, -1, 23, 149, -1, -1, -1, 176,
1800
135, 126, 167, 127, 136, -1, -1, 176, 126, 138,
1801
127, -1, -1, 176, 126, 140, 127, -1, -1, 176,
1802
126, 142, 127, -1, -1, -1, 176, 144, 126, 171,
1803
127, 145, -1, -1, -1, 147, 126, 155, 157, 159,
1804
127, 148, -1, -1, -1, -1, 150, 116, 116, 128,
1805
151, 153, 129, 152, 121, -1, 154, 153, -1, -1,
1806
116, 128, 179, 129, -1, 116, 128, 129, -1, 156,
1807
160, 155, -1, -1, 16, 128, 176, 129, -1, 17,
1808
128, 176, 129, -1, 18, 128, 176, 129, -1, 108,
1809
128, 176, 129, -1, 19, 128, 176, 129, -1, 158,
1810
160, 157, -1, -1, 20, 126, 155, 157, 159, 127,
1811
-1, 75, 128, 161, 129, 160, -1, -1, 125, -1,
1812
125, 160, -1, 176, 161, -1, -1, 126, 174, 127,
1813
-1, -1, 176, 164, 126, 165, 127, -1, 166, 125,
1814
165, -1, -1, 94, 128, 176, 129, -1, 95, 128,
1815
177, 129, -1, 168, 125, 167, -1, 125, 167, -1,
1816
-1, 170, -1, 169, -1, 116, -1, 24, 128, 129,
1817
-1, 172, 125, 171, -1, 125, 171, -1, -1, 173,
1818
-1, 116, -1, 175, 125, 174, -1, -1, 42, 128,
1819
117, 129, -1, 43, 128, 117, 129, -1, 44, 128,
1820
117, 129, -1, 45, 128, 117, 129, -1, 47, 128,
1821
117, 129, -1, 51, 128, 177, 129, -1, 52, 128,
1822
177, 129, -1, 53, 128, 177, 129, -1, 54, 128,
1823
177, 129, -1, 55, 128, 176, 129, -1, 58, 128,
1824
177, 129, -1, 57, 128, 178, 129, -1, 82, 128,
1825
117, 129, -1, 83, 128, 117, 129, -1, 84, 128,
1826
117, 129, -1, 68, 128, 117, 129, -1, 70, 128,
1827
117, 129, -1, 69, 128, 117, 129, -1, 48, 128,
1828
117, 129, -1, 56, 128, 177, 129, -1, 66, 128,
1829
176, 129, -1, 67, 128, 117, 129, -1, 87, 128,
1830
177, 129, -1, 88, 128, 179, 129, -1, 88, 128,
1831
129, -1, 89, 128, 179, 129, -1, 89, 128, 129,
1832
-1, 90, 128, 117, 129, -1, 90, 128, 129, -1,
1833
91, 128, 179, 129, -1, 91, 128, 129, -1, 92,
1834
128, 179, 129, -1, 92, 128, 129, -1, 93, 128,
1835
117, 129, -1, 93, 128, 129, -1, 59, 128, 177,
1836
129, -1, 60, 128, 117, 129, -1, 61, 128, 117,
1837
129, -1, 62, 128, 117, 129, -1, 63, 128, 176,
1838
129, -1, 49, 128, 176, 129, -1, 50, 128, 176,
1839
129, -1, 78, 128, 176, 129, -1, 79, 128, 176,
1840
129, -1, 80, 128, 176, 129, -1, 116, -1, 119,
1841
-1, 111, -1, 112, -1, 117, -1, 177, -1, 64,
1842
-1, 176, -1, 117, -1, 118, -1
1845
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
1846
static const yytype_uint16 yyrline[] =
1848
0, 359, 359, 363, 364, 368, 369, 370, 371, 372,
1849
373, 374, 375, 376, 381, 383, 380, 388, 387, 397,
1850
396, 403, 402, 409, 411, 408, 415, 417, 415, 422,
1851
424, 425, 422, 443, 444, 448, 449, 453, 454, 458,
1852
459, 460, 461, 462, 466, 467, 471, 475, 476, 480,
1853
481, 485, 486, 491, 496, 495, 504, 505, 509, 515,
1854
520, 521, 522, 526, 527, 531, 550, 554, 555, 556,
1855
560, 564, 583, 584, 588, 589, 590, 591, 592, 593,
1856
594, 595, 596, 597, 598, 599, 600, 601, 602, 611,
1857
612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
1858
622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
1859
632, 633, 634, 636, 637, 638, 639, 640, 641, 647,
1860
648, 652, 653, 654, 658, 659, 663, 664, 665
1864
#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
1865
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1866
First, the terminals, then, starting at YYNTOKENS, nonterminals. */
1867
static const char *const yytname[] =
1869
"$end", "error", "$undefined", "LL_CONTEXT_ROOT",
1870
"LL_CONTEXT_DESTINATION", "LL_CONTEXT_SOURCE", "LL_CONTEXT_PARSER",
1871
"LL_CONTEXT_REWRITE", "LL_CONTEXT_FILTER", "LL_CONTEXT_LOG",
1872
"LL_CONTEXT_BLOCK_DEF", "LL_CONTEXT_BLOCK_REF",
1873
"LL_CONTEXT_BLOCK_CONTENT", "LL_CONTEXT_PRAGMA", "LL_CONTEXT_FORMAT",
1874
"LL_CONTEXT_TEMPLATE_FUNC", "KW_SOURCE", "KW_FILTER", "KW_PARSER",
1875
"KW_DESTINATION", "KW_LOG", "KW_OPTIONS", "KW_INCLUDE", "KW_BLOCK",
1876
"KW_INTERNAL", "KW_FILE", "KW_SQL", "KW_TYPE", "KW_COLUMNS",
1877
"KW_INDEXES", "KW_VALUES", "KW_PASSWORD", "KW_DATABASE", "KW_USERNAME",
1878
"KW_TABLE", "KW_ENCODING", "KW_SESSION_STATEMENTS", "KW_DELIMITERS",
1879
"KW_QUOTES", "KW_QUOTE_PAIRS", "KW_NULL", "KW_SYSLOG", "KW_MARK_FREQ",
1880
"KW_STATS_FREQ", "KW_STATS_LEVEL", "KW_FLUSH_LINES", "KW_SUPPRESS",
1881
"KW_FLUSH_TIMEOUT", "KW_LOG_MSG_SIZE", "KW_FILE_TEMPLATE",
1882
"KW_PROTO_TEMPLATE", "KW_CHAIN_HOSTNAMES", "KW_NORMALIZE_HOSTNAMES",
1883
"KW_KEEP_HOSTNAME", "KW_CHECK_HOSTNAME", "KW_BAD_HOSTNAME",
1884
"KW_KEEP_TIMESTAMP", "KW_USE_DNS", "KW_USE_FQDN", "KW_DNS_CACHE",
1885
"KW_DNS_CACHE_SIZE", "KW_DNS_CACHE_EXPIRE", "KW_DNS_CACHE_EXPIRE_FAILED",
1886
"KW_DNS_CACHE_HOSTS", "KW_PERSIST_ONLY", "KW_TZ_CONVERT", "KW_TS_FORMAT",
1887
"KW_FRAC_DIGITS", "KW_LOG_FIFO_SIZE", "KW_LOG_FETCH_LIMIT",
1888
"KW_LOG_IW_SIZE", "KW_LOG_PREFIX", "KW_PROGRAM_OVERRIDE",
1889
"KW_HOST_OVERRIDE", "KW_THROTTLE", "KW_FLAGS", "KW_PAD_SIZE",
1890
"KW_TIME_ZONE", "KW_RECV_TIME_ZONE", "KW_SEND_TIME_ZONE",
1891
"KW_LOCAL_TIME_ZONE", "KW_FORMAT", "KW_TIME_REOPEN", "KW_TIME_REAP",
1892
"KW_TIME_SLEEP", "KW_TMPL_ESCAPE", "KW_OPTIONAL", "KW_CREATE_DIRS",
1893
"KW_OWNER", "KW_GROUP", "KW_PERM", "KW_DIR_OWNER", "KW_DIR_GROUP",
1894
"KW_DIR_PERM", "KW_TEMPLATE", "KW_TEMPLATE_ESCAPE",
1895
"KW_DEFAULT_FACILITY", "KW_DEFAULT_LEVEL", "KW_PORT",
1896
"KW_USE_TIME_RECVD", "KW_FACILITY", "KW_LEVEL", "KW_HOST", "KW_MATCH",
1897
"KW_MESSAGE", "KW_NETMASK", "KW_TAGS", "KW_VALUE", "KW_REWRITE",
1898
"KW_SET", "KW_SUBST", "KW_YES", "KW_NO", "KW_IFDEF", "KW_ENDIF",
1899
"LL_DOTDOT", "LL_IDENTIFIER", "LL_NUMBER", "LL_FLOAT", "LL_STRING",
1900
"LL_TOKEN", "LL_BLOCK", "LL_PRAGMA", "LL_EOL", "LL_ERROR", "';'", "'{'",
1901
"'}'", "'('", "')'", "$accept", "start", "stmts", "stmt", "source_stmt",
1902
"$@1", "$@2", "filter_stmt", "$@3", "parser_stmt", "$@4", "rewrite_stmt",
1903
"$@5", "dest_stmt", "$@6", "$@7", "log_stmt", "$@8", "$@9", "block_stmt",
1904
"$@10", "$@11", "$@12", "block_args", "block_arg", "log_items",
1905
"log_item", "log_forks", "log_fork", "log_flags", "log_semicolons",
1906
"log_flags_items", "options_stmt", "template_stmt", "$@13",
1907
"template_items", "template_item", "source_items", "source_item",
1908
"source_plugin", "source_afinter", "dest_items", "dest_item",
1909
"dest_plugin", "options_items", "options_item", "string", "yesno",
1910
"dnsmode", "string_or_number", 0
1915
/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
1917
static const yytype_uint16 yytoknum[] =
1919
0, 256, 10430, 1, 2, 3, 4, 5, 6, 7,
1920
8, 9, 10, 11, 12, 13, 10000, 10001, 10002, 10003,
1921
10004, 10005, 10006, 10007, 10010, 10011, 10030, 10031, 10032, 10033,
1922
10034, 10035, 10036, 10037, 10038, 10039, 10040, 10050, 10051, 10052,
1923
10053, 10060, 10071, 10072, 10073, 10074, 10075, 10076, 10077, 10078,
1924
10079, 10090, 10091, 10092, 10093, 10094, 10100, 10110, 10111, 10120,
1925
10121, 10130, 10131, 10132, 10140, 10150, 10151, 10152, 10160, 10162,
1926
10163, 10164, 10165, 10166, 10170, 10190, 10200, 10201, 10202, 10203,
1927
10204, 10205, 10210, 10211, 10212, 10220, 10230, 10240, 10250, 10251,
1928
10252, 10260, 10261, 10262, 10270, 10271, 10300, 10301, 10323, 10340,
1929
10350, 10351, 10352, 10353, 10354, 10355, 10356, 10361, 10370, 10371,
1930
10372, 10380, 10381, 10410, 10411, 10420, 10421, 10422, 10423, 10424,
1931
10425, 10426, 10427, 10428, 10429, 59, 123, 125, 40, 41
1935
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1936
static const yytype_uint8 yyr1[] =
1938
0, 130, 131, 132, 132, 133, 133, 133, 133, 133,
1939
133, 133, 133, 133, 135, 136, 134, 138, 137, 140,
1940
139, 142, 141, 144, 145, 143, 147, 148, 146, 150,
1941
151, 152, 149, 153, 153, 154, 154, 155, 155, 156,
1942
156, 156, 156, 156, 157, 157, 158, 159, 159, 160,
1943
160, 161, 161, 162, 164, 163, 165, 165, 166, 166,
1944
167, 167, 167, 168, 168, 169, 170, 171, 171, 171,
1945
172, 173, 174, 174, 175, 175, 175, 175, 175, 175,
1946
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
1947
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
1948
175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
1949
175, 175, 175, 175, 175, 175, 175, 175, 175, 176,
1950
176, 177, 177, 177, 178, 178, 179, 179, 179
1953
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1954
static const yytype_uint8 yyr2[] =
1956
0, 2, 1, 3, 0, 2, 2, 2, 2, 2,
1957
2, 2, 2, 2, 0, 0, 6, 0, 4, 0,
1958
4, 0, 4, 0, 0, 6, 0, 0, 7, 0,
1959
0, 0, 9, 2, 0, 4, 3, 3, 0, 4,
1960
4, 4, 4, 4, 3, 0, 6, 5, 0, 1,
1961
2, 2, 0, 3, 0, 5, 3, 0, 4, 4,
1962
3, 2, 0, 1, 1, 1, 3, 3, 2, 0,
1963
1, 1, 3, 0, 4, 4, 4, 4, 4, 4,
1964
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1965
4, 4, 4, 4, 4, 4, 4, 4, 3, 4,
1966
3, 4, 3, 4, 3, 4, 3, 4, 3, 4,
1967
4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
1968
1, 1, 1, 1, 1, 1, 1, 1, 1
1971
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1972
STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1973
means the default is an error. */
1974
static const yytype_uint8 yydefact[] =
1976
4, 0, 0, 0, 0, 26, 0, 29, 0, 0,
1977
0, 2, 0, 119, 120, 5, 14, 8, 0, 9,
1978
0, 6, 23, 7, 0, 73, 12, 13, 0, 11,
1979
54, 10, 0, 1, 4, 0, 17, 19, 0, 38,
1980
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1981
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1982
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1983
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1984
0, 0, 0, 21, 3, 62, 0, 0, 69, 0,
1985
0, 0, 0, 0, 45, 0, 0, 0, 0, 0,
1986
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1987
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1988
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1989
0, 0, 0, 0, 0, 53, 73, 0, 57, 0,
1990
0, 65, 62, 0, 0, 64, 63, 18, 20, 71,
1991
69, 0, 0, 70, 0, 0, 0, 0, 0, 0,
1992
48, 0, 49, 38, 0, 0, 0, 0, 0, 0,
1993
0, 0, 121, 122, 123, 0, 0, 0, 0, 0,
1994
0, 125, 124, 0, 0, 0, 0, 0, 0, 0,
1995
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1996
0, 0, 127, 128, 98, 126, 0, 100, 0, 0,
1997
102, 104, 0, 106, 0, 0, 108, 72, 30, 0,
1998
0, 0, 0, 22, 0, 61, 15, 62, 68, 24,
1999
69, 0, 0, 0, 0, 0, 38, 0, 0, 45,
2000
50, 37, 74, 75, 76, 77, 78, 92, 114, 115,
2001
79, 80, 81, 82, 83, 93, 85, 84, 109, 110,
2002
111, 112, 113, 94, 95, 89, 91, 90, 116, 117,
2003
118, 86, 87, 88, 96, 97, 99, 101, 103, 105,
2004
107, 34, 0, 0, 55, 57, 66, 16, 60, 25,
2005
67, 39, 40, 41, 43, 42, 45, 52, 27, 44,
2006
0, 0, 34, 0, 0, 56, 48, 0, 52, 28,
2007
0, 31, 33, 58, 59, 0, 0, 51, 36, 0,
2011
/* YYDEFGOTO[NTERM-NUM]. */
2012
static const yytype_int16 yydefgoto[] =
2014
-1, 10, 11, 12, 15, 35, 287, 17, 86, 19,
2015
87, 31, 139, 21, 38, 289, 23, 24, 309, 27,
2016
28, 281, 320, 301, 302, 94, 95, 160, 161, 238,
2017
163, 307, 26, 29, 82, 221, 222, 143, 144, 145,
2018
146, 151, 152, 153, 79, 80, 205, 175, 183, 206
2021
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
2023
#define YYPACT_NINF -213
2024
static const yytype_int16 yypact[] =
2026
5, -63, -63, -63, -63, -213, -95, -213, -63, -63,
2027
49, -213, -70, -213, -213, -213, -213, -213, -69, -213,
2028
-55, -213, -213, -213, -53, 118, -213, -213, -47, -213,
2029
-213, -213, -45, -213, 5, -43, -213, -213, -39, 16,
2030
-40, -36, -34, -33, -32, -31, -30, -28, -24, -23,
2031
-22, -19, -18, -17, -16, -14, -10, -3, -2, 0,
2032
1, 2, 3, 4, 6, 7, 8, 9, 10, 11,
2033
12, 13, 14, 15, 17, 18, 19, 20, 21, -38,
2034
-6, 28, 24, -213, -213, -8, -7, 25, -46, 23,
2035
30, 36, 54, 55, 73, 65, 75, 76, 77, 78,
2036
82, 86, -63, -63, -37, -37, -37, -37, -63, -37,
2037
-35, -37, -37, 87, 95, 96, -63, -63, 97, 98,
2038
99, 100, -63, -63, -63, 101, 102, 103, -37, -79,
2039
-75, -66, -71, -57, -65, -213, 118, 93, -9, 104,
2040
94, -213, -8, 105, 108, -213, -213, -213, -213, -213,
2041
-46, 107, 110, -213, -63, -63, -63, -63, -63, 111,
2042
52, 65, 65, 16, 109, 112, 113, 114, 115, 116,
2043
117, 119, -213, -213, -213, 120, 121, 122, 123, 124,
2044
125, -213, -213, 126, 127, 128, 129, 130, 131, 132,
2045
133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
2046
143, 144, -213, -213, -213, -213, 145, -213, 146, 147,
2047
-213, -213, 148, -213, 149, 150, -213, -213, -213, 152,
2048
154, 156, 159, -213, 157, -213, -213, -8, -213, -213,
2049
-46, 158, 160, 161, 162, 163, 16, 165, 167, 73,
2050
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
2051
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
2052
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
2053
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
2054
-213, 169, -63, -37, -213, -9, -213, -213, -213, -213,
2055
-213, -213, -213, -213, -213, -213, 73, -63, -213, -213,
2056
170, 166, 169, 168, 171, -213, 52, 172, -63, -213,
2057
-51, -213, -213, -213, -213, 175, 65, -213, -213, 174,
2058
106, -213, -213, -213, -213
2061
/* YYPGOTO[NTERM-NUM]. */
2062
static const yytype_int16 yypgoto[] =
2064
-213, -213, 189, -213, -213, -213, -213, -213, -213, -213,
2065
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
2066
-213, -213, -213, -169, -213, -133, -213, -212, -213, -82,
2067
-157, -83, -213, -213, -213, -59, -213, -136, -213, -213,
2068
-213, -140, -213, -213, 92, -213, -1, -92, -213, -121
2071
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
2072
positive, shift that token. If negative, reduce the rule which
2073
number is the opposite. If zero, do what YYDEFACT says.
2074
If YYTABLE_NINF, syntax error. */
2075
#define YYTABLE_NINF -1
2076
static const yytype_uint16 yytable[] =
2078
16, 18, 20, 22, 239, 240, 225, 30, 32, 208,
2079
228, 212, 214, 176, 177, 178, 140, 180, 182, 184,
2080
185, 1, 2, 3, 4, 5, 6, 299, 7, 181,
2081
241, 25, 89, 90, 91, 92, 201, 13, 202, 203,
2082
14, 13, 202, 203, 14, 13, 202, 203, 14, 33,
2083
204, 209, 215, 13, 207, 34, 14, 36, 211, 13,
2084
202, 203, 14, 210, 216, 13, 202, 203, 14, 81,
2085
149, 37, 213, 39, 172, 173, 172, 173, 318, 150,
2086
174, 83, 174, 85, 306, 219, 220, 88, 96, 135,
2087
290, 288, 97, 159, 98, 99, 100, 101, 102, 8,
2088
103, 170, 171, 296, 104, 105, 106, 179, 141, 107,
2089
108, 109, 110, 9, 111, 189, 190, 142, 112, 136,
2090
147, 195, 196, 197, 93, 113, 114, 237, 115, 116,
2091
117, 118, 119, 312, 120, 121, 122, 123, 124, 125,
2092
126, 127, 128, 129, 137, 130, 131, 132, 133, 134,
2093
138, 154, 148, 231, 232, 233, 234, 235, 155, 322,
2094
40, 41, 42, 43, 156, 44, 45, 46, 47, 48,
2095
49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
2096
59, 60, 157, 158, 61, 62, 63, 64, 65, 319,
2097
162, 304, 164, 165, 166, 167, 66, 67, 68, 168,
2098
69, 70, 71, 169, 186, 72, 73, 74, 75, 76,
2099
77, 78, 187, 188, 191, 192, 193, 194, 198, 199,
2100
200, 218, 224, 84, 315, 317, 305, 324, 217, 0,
2101
0, 223, 226, 227, 229, 230, 0, 236, 242, 0,
2102
0, 243, 244, 245, 246, 247, 248, 0, 249, 250,
2103
251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
2104
261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
2105
271, 272, 273, 274, 275, 276, 277, 278, 279, 280,
2106
282, 303, 283, 284, 285, 300, 286, 291, 0, 292,
2107
293, 294, 295, 297, 298, 311, 308, 313, 310, 0,
2108
314, 316, 321, 323, 0, 0, 0, 308
2111
static const yytype_int16 yycheck[] =
2113
1, 2, 3, 4, 161, 162, 142, 8, 9, 130,
2114
150, 132, 133, 105, 106, 107, 24, 109, 110, 111,
2115
112, 16, 17, 18, 19, 20, 21, 239, 23, 64,
2116
163, 126, 16, 17, 18, 19, 128, 116, 117, 118,
2117
119, 116, 117, 118, 119, 116, 117, 118, 119, 0,
2118
129, 117, 117, 116, 129, 125, 119, 126, 129, 116,
2119
117, 118, 119, 129, 129, 116, 117, 118, 119, 116,
2120
116, 126, 129, 126, 111, 112, 111, 112, 129, 125,
2121
117, 126, 117, 126, 296, 94, 95, 126, 128, 127,
2122
230, 227, 128, 20, 128, 128, 128, 128, 128, 94,
2123
128, 102, 103, 236, 128, 128, 128, 108, 116, 128,
2124
128, 128, 128, 108, 128, 116, 117, 125, 128, 125,
2125
127, 122, 123, 124, 108, 128, 128, 75, 128, 128,
2126
128, 128, 128, 302, 128, 128, 128, 128, 128, 128,
2127
128, 128, 128, 128, 116, 128, 128, 128, 128, 128,
2128
126, 128, 127, 154, 155, 156, 157, 158, 128, 316,
2129
42, 43, 44, 45, 128, 47, 48, 49, 50, 51,
2130
52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
2131
62, 63, 128, 128, 66, 67, 68, 69, 70, 310,
2132
125, 283, 117, 117, 117, 117, 78, 79, 80, 117,
2133
82, 83, 84, 117, 117, 87, 88, 89, 90, 91,
2134
92, 93, 117, 117, 117, 117, 117, 117, 117, 117,
2135
117, 128, 128, 34, 306, 308, 285, 121, 136, -1,
2136
-1, 127, 127, 125, 127, 125, -1, 126, 129, -1,
2137
-1, 129, 129, 129, 129, 129, 129, -1, 129, 129,
2138
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
2139
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
2140
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
2141
128, 282, 128, 127, 125, 116, 129, 129, -1, 129,
2142
129, 129, 129, 128, 127, 129, 297, 129, 128, -1,
2143
129, 129, 127, 129, -1, -1, -1, 308
2146
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2147
symbol of state STATE-NUM. */
2148
static const yytype_uint8 yystos[] =
2150
0, 16, 17, 18, 19, 20, 21, 23, 94, 108,
2151
131, 132, 133, 116, 119, 134, 176, 137, 176, 139,
2152
176, 143, 176, 146, 147, 126, 162, 149, 150, 163,
2153
176, 141, 176, 0, 125, 135, 126, 126, 144, 126,
2154
42, 43, 44, 45, 47, 48, 49, 50, 51, 52,
2155
53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
2156
63, 66, 67, 68, 69, 70, 78, 79, 80, 82,
2157
83, 84, 87, 88, 89, 90, 91, 92, 93, 174,
2158
175, 116, 164, 126, 132, 126, 138, 140, 126, 16,
2159
17, 18, 19, 108, 155, 156, 128, 128, 128, 128,
2160
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
2161
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
2162
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
2163
128, 128, 128, 128, 128, 127, 125, 116, 126, 142,
2164
24, 116, 125, 167, 168, 169, 170, 127, 127, 116,
2165
125, 171, 172, 173, 128, 128, 128, 128, 128, 20,
2166
157, 158, 125, 160, 117, 117, 117, 117, 117, 117,
2167
176, 176, 111, 112, 117, 177, 177, 177, 177, 176,
2168
177, 64, 177, 178, 177, 177, 117, 117, 117, 176,
2169
176, 117, 117, 117, 117, 176, 176, 176, 117, 117,
2170
117, 177, 117, 118, 129, 176, 179, 129, 179, 117,
2171
129, 129, 179, 129, 179, 117, 129, 174, 128, 94,
2172
95, 165, 166, 127, 128, 167, 127, 125, 171, 127,
2173
125, 176, 176, 176, 176, 176, 126, 75, 159, 160,
2174
160, 155, 129, 129, 129, 129, 129, 129, 129, 129,
2175
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
2176
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
2177
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
2178
129, 151, 128, 128, 127, 125, 129, 136, 167, 145,
2179
171, 129, 129, 129, 129, 129, 155, 128, 127, 157,
2180
116, 153, 154, 176, 177, 165, 157, 161, 176, 148,
2181
128, 129, 153, 129, 129, 159, 129, 161, 129, 179,
2182
152, 127, 160, 129, 121
2185
#define yyerrok (yyerrstatus = 0)
2186
#define yyclearin (yychar = YYEMPTY)
2187
#define YYEMPTY (-2)
2190
#define YYACCEPT goto yyacceptlab
2191
#define YYABORT goto yyabortlab
2192
#define YYERROR goto yyerrorlab
2195
/* Like YYERROR except do call yyerror. This remains here temporarily
2196
to ease the transition to the new meaning of YYERROR, for GCC.
2197
Once GCC version 2 has supplanted version 1, this can go. */
2199
#define YYFAIL goto yyerrlab
2201
#define YYRECOVERING() (!!yyerrstatus)
2203
#define YYBACKUP(Token, Value) \
2205
if (yychar == YYEMPTY && yylen == 1) \
2209
yytoken = YYTRANSLATE (yychar); \
2215
yyerror (&yylloc, lexer, dummy, YY_("syntax error: cannot back up")); \
2222
#define YYERRCODE 256
2225
/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2226
If N is 0, then set CURRENT to the empty location which ends
2227
the previous symbol: RHS[0] (always defined). */
2229
#define YYRHSLOC(Rhs, K) ((Rhs)[K])
2230
#ifndef YYLLOC_DEFAULT
2231
# define YYLLOC_DEFAULT(Current, Rhs, N) \
2235
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
2236
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
2237
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
2238
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
2242
(Current).first_line = (Current).last_line = \
2243
YYRHSLOC (Rhs, 0).last_line; \
2244
(Current).first_column = (Current).last_column = \
2245
YYRHSLOC (Rhs, 0).last_column; \
2251
/* YY_LOCATION_PRINT -- Print the location on the stream.
2252
This macro was not mandated originally: define only if we know
2253
we won't break user code: when these are the locations we know. */
2255
#ifndef YY_LOCATION_PRINT
2256
# if YYLTYPE_IS_TRIVIAL
2257
# define YY_LOCATION_PRINT(File, Loc) \
2258
fprintf (File, "%d.%d-%d.%d", \
2259
(Loc).first_line, (Loc).first_column, \
2260
(Loc).last_line, (Loc).last_column)
2262
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2267
/* YYLEX -- calling `yylex' with the right arguments. */
2270
# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
2272
# define YYLEX yylex (&yylval, &yylloc, lexer)
2275
/* Enable debugging if requested. */
2279
# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
2280
# define YYFPRINTF fprintf
2283
# define YYDPRINTF(Args) \
2289
# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
2293
YYFPRINTF (stderr, "%s ", Title); \
2294
yy_symbol_print (stderr, \
2295
Type, Value, Location, lexer, dummy); \
2296
YYFPRINTF (stderr, "\n"); \
2301
/*--------------------------------.
2302
| Print this symbol on YYOUTPUT. |
2303
`--------------------------------*/
2306
#if (defined __STDC__ || defined __C99__FUNC__ \
2307
|| defined __cplusplus || defined _MSC_VER)
2309
yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, CfgLexer *lexer, gpointer *dummy)
2312
yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, lexer, dummy)
2315
YYSTYPE const * const yyvaluep;
2316
YYLTYPE const * const yylocationp;
2323
YYUSE (yylocationp);
2327
if (yytype < YYNTOKENS)
2328
YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2340
/*--------------------------------.
2341
| Print this symbol on YYOUTPUT. |
2342
`--------------------------------*/
2344
#if (defined __STDC__ || defined __C99__FUNC__ \
2345
|| defined __cplusplus || defined _MSC_VER)
2347
yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, CfgLexer *lexer, gpointer *dummy)
2350
yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp, lexer, dummy)
2353
YYSTYPE const * const yyvaluep;
2354
YYLTYPE const * const yylocationp;
2359
if (yytype < YYNTOKENS)
2360
YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2362
YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2364
YY_LOCATION_PRINT (yyoutput, *yylocationp);
2365
YYFPRINTF (yyoutput, ": ");
2366
yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, lexer, dummy);
2367
YYFPRINTF (yyoutput, ")");
2370
/*------------------------------------------------------------------.
2371
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
2373
`------------------------------------------------------------------*/
2375
#if (defined __STDC__ || defined __C99__FUNC__ \
2376
|| defined __cplusplus || defined _MSC_VER)
2378
yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
2381
yy_stack_print (yybottom, yytop)
2382
yytype_int16 *yybottom;
2383
yytype_int16 *yytop;
2386
YYFPRINTF (stderr, "Stack now");
2387
for (; yybottom <= yytop; yybottom++)
2389
int yybot = *yybottom;
2390
YYFPRINTF (stderr, " %d", yybot);
2392
YYFPRINTF (stderr, "\n");
2395
# define YY_STACK_PRINT(Bottom, Top) \
2398
yy_stack_print ((Bottom), (Top)); \
2402
/*------------------------------------------------.
2403
| Report that the YYRULE is going to be reduced. |
2404
`------------------------------------------------*/
2406
#if (defined __STDC__ || defined __C99__FUNC__ \
2407
|| defined __cplusplus || defined _MSC_VER)
2409
yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule, CfgLexer *lexer, gpointer *dummy)
2412
yy_reduce_print (yyvsp, yylsp, yyrule, lexer, dummy)
2420
int yynrhs = yyr2[yyrule];
2422
unsigned long int yylno = yyrline[yyrule];
2423
YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
2425
/* The symbols being reduced. */
2426
for (yyi = 0; yyi < yynrhs; yyi++)
2428
YYFPRINTF (stderr, " $%d = ", yyi + 1);
2429
yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
2430
&(yyvsp[(yyi + 1) - (yynrhs)])
2431
, &(yylsp[(yyi + 1) - (yynrhs)]) , lexer, dummy);
2432
YYFPRINTF (stderr, "\n");
2436
# define YY_REDUCE_PRINT(Rule) \
2439
yy_reduce_print (yyvsp, yylsp, Rule, lexer, dummy); \
2442
/* Nonzero means print parse trace. It is left uninitialized so that
2443
multiple parsers can coexist. */
2445
#else /* !YYDEBUG */
2446
# define YYDPRINTF(Args)
2447
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
2448
# define YY_STACK_PRINT(Bottom, Top)
2449
# define YY_REDUCE_PRINT(Rule)
2450
#endif /* !YYDEBUG */
2453
/* YYINITDEPTH -- initial size of the parser's stacks. */
2455
# define YYINITDEPTH 200
2458
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
2459
if the built-in stack extension method is used).
2461
Do not make this value too large; the results are undefined if
2462
YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2463
evaluated with infinite-precision integer arithmetic. */
2466
# define YYMAXDEPTH 10000
2474
# if defined __GLIBC__ && defined _STRING_H
2475
# define yystrlen strlen
2477
/* Return the length of YYSTR. */
2478
#if (defined __STDC__ || defined __C99__FUNC__ \
2479
|| defined __cplusplus || defined _MSC_VER)
2481
yystrlen (const char *yystr)
2489
for (yylen = 0; yystr[yylen]; yylen++)
2497
# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2498
# define yystpcpy stpcpy
2500
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2502
#if (defined __STDC__ || defined __C99__FUNC__ \
2503
|| defined __cplusplus || defined _MSC_VER)
2505
yystpcpy (char *yydest, const char *yysrc)
2508
yystpcpy (yydest, yysrc)
2514
const char *yys = yysrc;
2516
while ((*yyd++ = *yys++) != '\0')
2525
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2526
quotes and backslashes, so that it's suitable for yyerror. The
2527
heuristic is that double-quoting is unnecessary unless the string
2528
contains an apostrophe, a comma, or backslash (other than
2529
backslash-backslash). YYSTR is taken from yytname. If YYRES is
2530
null, do not copy; instead, return the length of what the result
2533
yytnamerr (char *yyres, const char *yystr)
2538
char const *yyp = yystr;
2545
goto do_not_strip_quotes;
2549
goto do_not_strip_quotes;
2562
do_not_strip_quotes: ;
2566
return yystrlen (yystr);
2568
return yystpcpy (yyres, yystr) - yyres;
2572
/* Copy into YYRESULT an error message about the unexpected token
2573
YYCHAR while in state YYSTATE. Return the number of bytes copied,
2574
including the terminating null byte. If YYRESULT is null, do not
2575
copy anything; just return the number of bytes that would be
2576
copied. As a special case, return 0 if an ordinary "syntax error"
2577
message will do. Return YYSIZE_MAXIMUM if overflow occurs during
2578
size calculation. */
2580
yysyntax_error (char *yyresult, int yystate, int yychar)
2582
int yyn = yypact[yystate];
2584
if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2588
int yytype = YYTRANSLATE (yychar);
2589
YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2590
YYSIZE_T yysize = yysize0;
2592
int yysize_overflow = 0;
2593
enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2594
char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2598
/* This is so xgettext sees the translatable formats that are
2599
constructed on the fly. */
2600
YY_("syntax error, unexpected %s");
2601
YY_("syntax error, unexpected %s, expecting %s");
2602
YY_("syntax error, unexpected %s, expecting %s or %s");
2603
YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2604
YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2608
static char const yyunexpected[] = "syntax error, unexpected %s";
2609
static char const yyexpecting[] = ", expecting %s";
2610
static char const yyor[] = " or %s";
2611
char yyformat[sizeof yyunexpected
2612
+ sizeof yyexpecting - 1
2613
+ ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2614
* (sizeof yyor - 1))];
2615
char const *yyprefix = yyexpecting;
2617
/* Start YYX at -YYN if negative to avoid negative indexes in
2619
int yyxbegin = yyn < 0 ? -yyn : 0;
2621
/* Stay within bounds of both yycheck and yytname. */
2622
int yychecklim = YYLAST - yyn + 1;
2623
int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2626
yyarg[0] = yytname[yytype];
2627
yyfmt = yystpcpy (yyformat, yyunexpected);
2629
for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2630
if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2632
if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2636
yyformat[sizeof yyunexpected - 1] = '\0';
2639
yyarg[yycount++] = yytname[yyx];
2640
yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2641
yysize_overflow |= (yysize1 < yysize);
2643
yyfmt = yystpcpy (yyfmt, yyprefix);
2647
yyf = YY_(yyformat);
2648
yysize1 = yysize + yystrlen (yyf);
2649
yysize_overflow |= (yysize1 < yysize);
2652
if (yysize_overflow)
2653
return YYSIZE_MAXIMUM;
2657
/* Avoid sprintf, as that infringes on the user's name space.
2658
Don't have undefined behavior even if the translation
2659
produced a string with the wrong number of "%s"s. */
2660
char *yyp = yyresult;
2662
while ((*yyp = *yyf) != '\0')
2664
if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2666
yyp += yytnamerr (yyp, yyarg[yyi++]);
2679
#endif /* YYERROR_VERBOSE */
2682
/*-----------------------------------------------.
2683
| Release the memory associated to this symbol. |
2684
`-----------------------------------------------*/
2687
#if (defined __STDC__ || defined __C99__FUNC__ \
2688
|| defined __cplusplus || defined _MSC_VER)
2690
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, CfgLexer *lexer, gpointer *dummy)
2693
yydestruct (yymsg, yytype, yyvaluep, yylocationp, lexer, dummy)
2697
YYLTYPE *yylocationp;
2703
YYUSE (yylocationp);
2709
YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
2719
/* Prevent warnings from -Wmissing-prototypes. */
2720
#ifdef YYPARSE_PARAM
2721
#if defined __STDC__ || defined __cplusplus
2722
int yyparse (void *YYPARSE_PARAM);
2726
#else /* ! YYPARSE_PARAM */
2727
#if defined __STDC__ || defined __cplusplus
2728
int yyparse (CfgLexer *lexer, gpointer *dummy);
2732
#endif /* ! YYPARSE_PARAM */
2738
/*-------------------------.
2739
| yyparse or yypush_parse. |
2740
`-------------------------*/
2742
#ifdef YYPARSE_PARAM
2743
#if (defined __STDC__ || defined __C99__FUNC__ \
2744
|| defined __cplusplus || defined _MSC_VER)
2746
yyparse (void *YYPARSE_PARAM)
2749
yyparse (YYPARSE_PARAM)
2750
void *YYPARSE_PARAM;
2752
#else /* ! YYPARSE_PARAM */
2753
#if (defined __STDC__ || defined __C99__FUNC__ \
2754
|| defined __cplusplus || defined _MSC_VER)
2756
yyparse (CfgLexer *lexer, gpointer *dummy)
2759
yyparse (lexer, dummy)
2765
/* The lookahead symbol. */
2768
/* The semantic value of the lookahead symbol. */
2771
/* Location data for the lookahead symbol. */
2774
/* Number of syntax errors so far. */
2778
/* Number of tokens to shift before error messages enabled. */
2781
/* The stacks and their tools:
2782
`yyss': related to states.
2783
`yyvs': related to semantic values.
2784
`yyls': related to locations.
2786
Refer to the stacks thru separate pointers, to allow yyoverflow
2787
to reallocate them elsewhere. */
2789
/* The state stack. */
2790
yytype_int16 yyssa[YYINITDEPTH];
2792
yytype_int16 *yyssp;
2794
/* The semantic value stack. */
2795
YYSTYPE yyvsa[YYINITDEPTH];
2799
/* The location stack. */
2800
YYLTYPE yylsa[YYINITDEPTH];
2804
/* The locations where the error started and ended. */
2805
YYLTYPE yyerror_range[2];
2807
YYSIZE_T yystacksize;
2811
/* Lookahead token as an internal (translated) token number. */
2813
/* The variables used to return semantic value and location from the
2819
/* Buffer for error messages, and its allocated size. */
2821
char *yymsg = yymsgbuf;
2822
YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
2825
#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
2827
/* The number of symbols on the RHS of the reduced rule.
2828
Keep to zero when no symbol should be popped. */
2835
yystacksize = YYINITDEPTH;
2837
YYDPRINTF ((stderr, "Starting parse\n"));
2842
yychar = YYEMPTY; /* Cause a token to be read. */
2844
/* Initialize stack pointers.
2845
Waste one element of value and location stack
2846
so that they stay on the same level as the state stack.
2847
The wasted elements are never initialized. */
2852
#if YYLTYPE_IS_TRIVIAL
2853
/* Initialize the default location before parsing starts. */
2854
yylloc.first_line = yylloc.last_line = 1;
2855
yylloc.first_column = yylloc.last_column = 1;
2860
/*------------------------------------------------------------.
2861
| yynewstate -- Push a new state, which is found in yystate. |
2862
`------------------------------------------------------------*/
2864
/* In all cases, when you get here, the value and location stacks
2865
have just been pushed. So pushing a state here evens the stacks. */
2871
if (yyss + yystacksize - 1 <= yyssp)
2873
/* Get the current used size of the three stacks, in elements. */
2874
YYSIZE_T yysize = yyssp - yyss + 1;
2878
/* Give user a chance to reallocate the stack. Use copies of
2879
these so that the &'s don't force the real ones into
2881
YYSTYPE *yyvs1 = yyvs;
2882
yytype_int16 *yyss1 = yyss;
2883
YYLTYPE *yyls1 = yyls;
2885
/* Each stack pointer address is followed by the size of the
2886
data in use in that stack, in bytes. This used to be a
2887
conditional around just the two extra args, but that might
2888
be undefined if yyoverflow is a macro. */
2889
yyoverflow (YY_("memory exhausted"),
2890
&yyss1, yysize * sizeof (*yyssp),
2891
&yyvs1, yysize * sizeof (*yyvsp),
2892
&yyls1, yysize * sizeof (*yylsp),
2899
#else /* no yyoverflow */
2900
# ifndef YYSTACK_RELOCATE
2901
goto yyexhaustedlab;
2903
/* Extend the stack our own way. */
2904
if (YYMAXDEPTH <= yystacksize)
2905
goto yyexhaustedlab;
2907
if (YYMAXDEPTH < yystacksize)
2908
yystacksize = YYMAXDEPTH;
2911
yytype_int16 *yyss1 = yyss;
2912
union yyalloc *yyptr =
2913
(union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2915
goto yyexhaustedlab;
2916
YYSTACK_RELOCATE (yyss_alloc, yyss);
2917
YYSTACK_RELOCATE (yyvs_alloc, yyvs);
2918
YYSTACK_RELOCATE (yyls_alloc, yyls);
2919
# undef YYSTACK_RELOCATE
2921
YYSTACK_FREE (yyss1);
2924
#endif /* no yyoverflow */
2926
yyssp = yyss + yysize - 1;
2927
yyvsp = yyvs + yysize - 1;
2928
yylsp = yyls + yysize - 1;
2930
YYDPRINTF ((stderr, "Stack size increased to %lu\n",
2931
(unsigned long int) yystacksize));
2933
if (yyss + yystacksize - 1 <= yyssp)
2937
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2939
if (yystate == YYFINAL)
2949
/* Do appropriate processing given the current state. Read a
2950
lookahead token if we need one and don't already have one. */
2952
/* First try to decide what to do without reference to lookahead token. */
2953
yyn = yypact[yystate];
2954
if (yyn == YYPACT_NINF)
2957
/* Not known => get a lookahead token if don't already have one. */
2959
/* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
2960
if (yychar == YYEMPTY)
2962
YYDPRINTF ((stderr, "Reading a token: "));
2966
if (yychar <= YYEOF)
2968
yychar = yytoken = YYEOF;
2969
YYDPRINTF ((stderr, "Now at end of input.\n"));
2973
yytoken = YYTRANSLATE (yychar);
2974
YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
2977
/* If the proper action on seeing token YYTOKEN is to reduce or to
2978
detect an error, take that action. */
2980
if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
2985
if (yyn == 0 || yyn == YYTABLE_NINF)
2991
/* Count tokens shifted since error; after three, turn off error
2996
/* Shift the lookahead token. */
2997
YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
2999
/* Discard the shifted token. */
3008
/*-----------------------------------------------------------.
3009
| yydefault -- do the default action for the current state. |
3010
`-----------------------------------------------------------*/
3012
yyn = yydefact[yystate];
3018
/*-----------------------------.
3019
| yyreduce -- Do a reduction. |
3020
`-----------------------------*/
3022
/* yyn is the number of a rule to reduce with. */
3025
/* If YYLEN is nonzero, implement the default value of the action:
3028
Otherwise, the following line sets YYVAL to garbage.
3029
This behavior is undocumented and Bison
3030
users should not rely upon it. Assigning to YYVAL
3031
unconditionally makes the parser a bit smaller, and it avoids a
3032
GCC warning that YYVAL may be used uninitialized. */
3033
yyval = yyvsp[1-yylen];
3035
/* Default location. */
3036
YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
3037
YY_REDUCE_PRINT (yyn);
3042
/* Line 1455 of yacc.c */
3043
#line 368 "cfg-grammar.y"
3044
{ cfg_add_source(configuration, (yyvsp[(2) - (2)].ptr)); }
3049
/* Line 1455 of yacc.c */
3050
#line 369 "cfg-grammar.y"
3051
{ cfg_add_dest(configuration, (yyvsp[(2) - (2)].ptr)); }
3056
/* Line 1455 of yacc.c */
3057
#line 370 "cfg-grammar.y"
3058
{ cfg_add_connection(configuration, (yyvsp[(2) - (2)].ptr)); }
3063
/* Line 1455 of yacc.c */
3064
#line 371 "cfg-grammar.y"
3065
{ cfg_add_filter(configuration, (yyvsp[(2) - (2)].ptr)); }
3070
/* Line 1455 of yacc.c */
3071
#line 372 "cfg-grammar.y"
3072
{ cfg_add_parser(configuration, (yyvsp[(2) - (2)].ptr)); }
3077
/* Line 1455 of yacc.c */
3078
#line 373 "cfg-grammar.y"
3079
{ cfg_add_rewrite(configuration, (yyvsp[(2) - (2)].ptr)); }
3084
/* Line 1455 of yacc.c */
3085
#line 374 "cfg-grammar.y"
3086
{ cfg_add_template(configuration, (yyvsp[(2) - (2)].ptr)); }
3091
/* Line 1455 of yacc.c */
3092
#line 375 "cfg-grammar.y"
3098
/* Line 1455 of yacc.c */
3099
#line 376 "cfg-grammar.y"
3105
/* Line 1455 of yacc.c */
3106
#line 381 "cfg-grammar.y"
3107
{ cfg_lexer_push_context(lexer, LL_CONTEXT_SOURCE, NULL, "source"); }
3112
/* Line 1455 of yacc.c */
3113
#line 383 "cfg-grammar.y"
3114
{ cfg_lexer_pop_context(lexer); }
3119
/* Line 1455 of yacc.c */
3120
#line 383 "cfg-grammar.y"
3121
{ (yyval.ptr) = log_source_group_new((yyvsp[(1) - (6)].cptr), (yyvsp[(4) - (6)].ptr)); free((yyvsp[(1) - (6)].cptr)); }
3126
/* Line 1455 of yacc.c */
3127
#line 388 "cfg-grammar.y"
3129
last_filter_expr = NULL;
3130
CHECK_ERROR(cfg_parser_parse(&filter_expr_parser, lexer, (gpointer *) &last_filter_expr), (yylsp[(1) - (2)]), NULL);
3136
/* Line 1455 of yacc.c */
3137
#line 392 "cfg-grammar.y"
3138
{ (yyval.ptr) = log_filter_rule_new((yyvsp[(1) - (4)].cptr), last_filter_expr); free((yyvsp[(1) - (4)].cptr)); }
3143
/* Line 1455 of yacc.c */
3144
#line 397 "cfg-grammar.y"
3146
CHECK_ERROR(cfg_parser_parse(&parser_expr_parser, lexer, (gpointer *) &last_parser_expr), (yylsp[(1) - (2)]), NULL);
3152
/* Line 1455 of yacc.c */
3153
#line 399 "cfg-grammar.y"
3154
{ (yyval.ptr) = log_parser_rule_new((yyvsp[(1) - (4)].cptr), last_parser_expr); free((yyvsp[(1) - (4)].cptr)); }
3159
/* Line 1455 of yacc.c */
3160
#line 403 "cfg-grammar.y"
3162
CHECK_ERROR(cfg_parser_parse(&rewrite_expr_parser, lexer, (gpointer *) &last_rewrite_expr), (yylsp[(1) - (2)]), NULL);
3168
/* Line 1455 of yacc.c */
3169
#line 405 "cfg-grammar.y"
3170
{ (yyval.ptr) = log_rewrite_rule_new((yyvsp[(1) - (4)].cptr), last_rewrite_expr); free((yyvsp[(1) - (4)].cptr)); }
3175
/* Line 1455 of yacc.c */
3176
#line 409 "cfg-grammar.y"
3177
{ cfg_lexer_push_context(lexer, LL_CONTEXT_DESTINATION, NULL, "destination"); }
3182
/* Line 1455 of yacc.c */
3183
#line 411 "cfg-grammar.y"
3184
{ cfg_lexer_pop_context(lexer); }
3189
/* Line 1455 of yacc.c */
3190
#line 411 "cfg-grammar.y"
3191
{ (yyval.ptr) = log_dest_group_new((yyvsp[(1) - (6)].cptr), (yyvsp[(4) - (6)].ptr)); free((yyvsp[(1) - (6)].cptr)); }
3196
/* Line 1455 of yacc.c */
3197
#line 415 "cfg-grammar.y"
3198
{ cfg_lexer_push_context(lexer, LL_CONTEXT_LOG, NULL, "log"); }
3203
/* Line 1455 of yacc.c */
3204
#line 417 "cfg-grammar.y"
3205
{ cfg_lexer_pop_context(lexer); }
3210
/* Line 1455 of yacc.c */
3211
#line 417 "cfg-grammar.y"
3212
{ LogPipeItem *pi = log_pipe_item_append_tail((yyvsp[(3) - (7)].ptr), (yyvsp[(4) - (7)].ptr)); (yyval.ptr) = log_connection_new(pi, (yyvsp[(5) - (7)].num)); }
3217
/* Line 1455 of yacc.c */
3218
#line 422 "cfg-grammar.y"
3219
{ cfg_lexer_push_context(lexer, LL_CONTEXT_BLOCK_DEF, block_def_keywords, "block definition"); }
3224
/* Line 1455 of yacc.c */
3225
#line 424 "cfg-grammar.y"
3226
{ last_block_args = cfg_args_new(); }
3231
/* Line 1455 of yacc.c */
3232
#line 425 "cfg-grammar.y"
3233
{ cfg_lexer_push_context(lexer, LL_CONTEXT_BLOCK_CONTENT, NULL, "block content"); }
3238
/* Line 1455 of yacc.c */
3239
#line 427 "cfg-grammar.y"
3244
cfg_lexer_pop_context(lexer);
3245
/* block definition */
3246
cfg_lexer_pop_context(lexer);
3248
block = cfg_block_new((yyvsp[(9) - (9)].cptr), last_block_args);
3249
cfg_lexer_register_block_generator(lexer, cfg_lexer_lookup_context_type_by_name((yyvsp[(2) - (9)].cptr)), (yyvsp[(3) - (9)].cptr), cfg_block_generate, block, (GDestroyNotify) cfg_block_free);
3250
free((yyvsp[(9) - (9)].cptr));
3251
last_block_args = NULL;
3257
/* Line 1455 of yacc.c */
3258
#line 448 "cfg-grammar.y"
3259
{ cfg_args_set(last_block_args, (yyvsp[(1) - (4)].cptr), (yyvsp[(3) - (4)].cptr)); free((yyvsp[(1) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3264
/* Line 1455 of yacc.c */
3265
#line 449 "cfg-grammar.y"
3271
/* Line 1455 of yacc.c */
3272
#line 453 "cfg-grammar.y"
3273
{ log_pipe_item_append((yyvsp[(1) - (3)].ptr), (yyvsp[(3) - (3)].ptr)); (yyval.ptr) = (yyvsp[(1) - (3)].ptr); }
3278
/* Line 1455 of yacc.c */
3279
#line 454 "cfg-grammar.y"
3280
{ (yyval.ptr) = NULL; }
3285
/* Line 1455 of yacc.c */
3286
#line 458 "cfg-grammar.y"
3287
{ (yyval.ptr) = log_pipe_item_new(EP_SOURCE, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3292
/* Line 1455 of yacc.c */
3293
#line 459 "cfg-grammar.y"
3294
{ (yyval.ptr) = log_pipe_item_new(EP_FILTER, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3299
/* Line 1455 of yacc.c */
3300
#line 460 "cfg-grammar.y"
3301
{ (yyval.ptr) = log_pipe_item_new(EP_PARSER, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3306
/* Line 1455 of yacc.c */
3307
#line 461 "cfg-grammar.y"
3308
{ (yyval.ptr) = log_pipe_item_new(EP_REWRITE, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3313
/* Line 1455 of yacc.c */
3314
#line 462 "cfg-grammar.y"
3315
{ (yyval.ptr) = log_pipe_item_new(EP_DESTINATION, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3320
/* Line 1455 of yacc.c */
3321
#line 466 "cfg-grammar.y"
3322
{ log_pipe_item_append((yyvsp[(1) - (3)].ptr), (yyvsp[(3) - (3)].ptr)); (yyval.ptr) = (yyvsp[(1) - (3)].ptr); }
3327
/* Line 1455 of yacc.c */
3328
#line 467 "cfg-grammar.y"
3329
{ (yyval.ptr) = NULL; }
3334
/* Line 1455 of yacc.c */
3335
#line 471 "cfg-grammar.y"
3336
{ LogPipeItem *pi = log_pipe_item_append_tail((yyvsp[(3) - (6)].ptr), (yyvsp[(4) - (6)].ptr)); (yyval.ptr) = log_pipe_item_new_ref(EP_PIPE, log_connection_new(pi, (yyvsp[(5) - (6)].num))); }
3341
/* Line 1455 of yacc.c */
3342
#line 475 "cfg-grammar.y"
3343
{ (yyval.num) = (yyvsp[(3) - (5)].num); }
3348
/* Line 1455 of yacc.c */
3349
#line 476 "cfg-grammar.y"
3350
{ (yyval.num) = 0; }
3355
/* Line 1455 of yacc.c */
3356
#line 485 "cfg-grammar.y"
3357
{ (yyval.num) = log_connection_lookup_flag((yyvsp[(1) - (2)].cptr)) | (yyvsp[(2) - (2)].num); free((yyvsp[(1) - (2)].cptr)); }
3362
/* Line 1455 of yacc.c */
3363
#line 486 "cfg-grammar.y"
3364
{ (yyval.num) = 0; }
3369
/* Line 1455 of yacc.c */
3370
#line 491 "cfg-grammar.y"
3371
{ (yyval.ptr) = NULL; }
3376
/* Line 1455 of yacc.c */
3377
#line 496 "cfg-grammar.y"
3379
last_template = log_template_new(configuration, (yyvsp[(1) - (1)].cptr), NULL);
3380
free((yyvsp[(1) - (1)].cptr));
3386
/* Line 1455 of yacc.c */
3387
#line 500 "cfg-grammar.y"
3388
{ (yyval.ptr) = last_template; }
3393
/* Line 1455 of yacc.c */
3394
#line 509 "cfg-grammar.y"
3396
GError *error = NULL;
3398
last_template->template = g_strdup((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr));
3399
CHECK_ERROR(log_template_compile(last_template, &error), (yylsp[(3) - (4)]), "Error compiling template (%s)", error->message);
3405
/* Line 1455 of yacc.c */
3406
#line 515 "cfg-grammar.y"
3407
{ log_template_set_escape(last_template, (yyvsp[(3) - (4)].num)); }
3412
/* Line 1455 of yacc.c */
3413
#line 520 "cfg-grammar.y"
3414
{ if ((yyvsp[(1) - (3)].ptr)) {log_drv_append((yyvsp[(1) - (3)].ptr), (yyvsp[(3) - (3)].ptr)); log_drv_unref((yyvsp[(3) - (3)].ptr)); (yyval.ptr) = (yyvsp[(1) - (3)].ptr); } else { YYERROR; } }
3419
/* Line 1455 of yacc.c */
3420
#line 521 "cfg-grammar.y"
3421
{ (yyval.ptr) = (yyvsp[(2) - (2)].ptr); }
3426
/* Line 1455 of yacc.c */
3427
#line 522 "cfg-grammar.y"
3428
{ (yyval.ptr) = NULL; }
3433
/* Line 1455 of yacc.c */
3434
#line 526 "cfg-grammar.y"
3435
{ (yyval.ptr) = (yyvsp[(1) - (1)].ptr); }
3440
/* Line 1455 of yacc.c */
3441
#line 527 "cfg-grammar.y"
3442
{ (yyval.ptr) = (yyvsp[(1) - (1)].ptr); }
3447
/* Line 1455 of yacc.c */
3448
#line 532 "cfg-grammar.y"
3451
gint context = LL_CONTEXT_SOURCE;
3453
p = plugin_find(configuration, context, (yyvsp[(1) - (1)].cptr));
3454
CHECK_ERROR(p, (yylsp[(1) - (1)]), "%s plugin %s not found", cfg_lexer_lookup_context_name_by_type(context), (yyvsp[(1) - (1)].cptr));
3456
last_driver = (LogDriver *) plugin_parse_config(p, configuration, &(yylsp[(1) - (1)]));
3457
free((yyvsp[(1) - (1)].cptr));
3462
(yyval.ptr) = last_driver;
3468
/* Line 1455 of yacc.c */
3469
#line 550 "cfg-grammar.y"
3470
{ (yyval.ptr) = afinter_sd_new(); }
3475
/* Line 1455 of yacc.c */
3476
#line 554 "cfg-grammar.y"
3477
{ log_drv_append((yyvsp[(1) - (3)].ptr), (yyvsp[(3) - (3)].ptr)); log_drv_unref((yyvsp[(3) - (3)].ptr)); (yyval.ptr) = (yyvsp[(1) - (3)].ptr); }
3482
/* Line 1455 of yacc.c */
3483
#line 555 "cfg-grammar.y"
3484
{ (yyval.ptr) = (yyvsp[(2) - (2)].ptr); }
3489
/* Line 1455 of yacc.c */
3490
#line 556 "cfg-grammar.y"
3491
{ (yyval.ptr) = NULL; }
3496
/* Line 1455 of yacc.c */
3497
#line 560 "cfg-grammar.y"
3498
{ (yyval.ptr) = (yyvsp[(1) - (1)].ptr); }
3503
/* Line 1455 of yacc.c */
3504
#line 565 "cfg-grammar.y"
3507
gint context = LL_CONTEXT_DESTINATION;
3509
p = plugin_find(configuration, context, (yyvsp[(1) - (1)].cptr));
3510
CHECK_ERROR(p, (yylsp[(1) - (1)]), "%s plugin %s not found", cfg_lexer_lookup_context_name_by_type(context), (yyvsp[(1) - (1)].cptr));
3512
last_driver = (LogDriver *) plugin_parse_config(p, configuration, &(yylsp[(1) - (1)]));
3513
free((yyvsp[(1) - (1)].cptr));
3518
(yyval.ptr) = last_driver;
3524
/* Line 1455 of yacc.c */
3525
#line 583 "cfg-grammar.y"
3526
{ (yyval.ptr) = (yyvsp[(1) - (3)].ptr); }
3531
/* Line 1455 of yacc.c */
3532
#line 584 "cfg-grammar.y"
3533
{ (yyval.ptr) = NULL; }
3538
/* Line 1455 of yacc.c */
3539
#line 588 "cfg-grammar.y"
3540
{ configuration->mark_freq = (yyvsp[(3) - (4)].num); }
3545
/* Line 1455 of yacc.c */
3546
#line 589 "cfg-grammar.y"
3547
{ configuration->stats_freq = (yyvsp[(3) - (4)].num); }
3552
/* Line 1455 of yacc.c */
3553
#line 590 "cfg-grammar.y"
3554
{ configuration->stats_level = (yyvsp[(3) - (4)].num); }
3559
/* Line 1455 of yacc.c */
3560
#line 591 "cfg-grammar.y"
3561
{ configuration->flush_lines = (yyvsp[(3) - (4)].num); }
3566
/* Line 1455 of yacc.c */
3567
#line 592 "cfg-grammar.y"
3568
{ configuration->flush_timeout = (yyvsp[(3) - (4)].num); }
3573
/* Line 1455 of yacc.c */
3574
#line 593 "cfg-grammar.y"
3575
{ configuration->chain_hostnames = (yyvsp[(3) - (4)].num); }
3580
/* Line 1455 of yacc.c */
3581
#line 594 "cfg-grammar.y"
3582
{ configuration->normalize_hostnames = (yyvsp[(3) - (4)].num); }
3587
/* Line 1455 of yacc.c */
3588
#line 595 "cfg-grammar.y"
3589
{ configuration->keep_hostname = (yyvsp[(3) - (4)].num); }
3594
/* Line 1455 of yacc.c */
3595
#line 596 "cfg-grammar.y"
3596
{ configuration->check_hostname = (yyvsp[(3) - (4)].num); }
3601
/* Line 1455 of yacc.c */
3602
#line 597 "cfg-grammar.y"
3603
{ cfg_bad_hostname_set(configuration, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3608
/* Line 1455 of yacc.c */
3609
#line 598 "cfg-grammar.y"
3610
{ configuration->use_fqdn = (yyvsp[(3) - (4)].num); }
3615
/* Line 1455 of yacc.c */
3616
#line 599 "cfg-grammar.y"
3617
{ configuration->use_dns = (yyvsp[(3) - (4)].num); }
3622
/* Line 1455 of yacc.c */
3623
#line 600 "cfg-grammar.y"
3624
{ configuration->time_reopen = (yyvsp[(3) - (4)].num); }
3629
/* Line 1455 of yacc.c */
3630
#line 601 "cfg-grammar.y"
3631
{ configuration->time_reap = (yyvsp[(3) - (4)].num); }
3636
/* Line 1455 of yacc.c */
3637
#line 603 "cfg-grammar.y"
3639
configuration->time_sleep = (yyvsp[(3) - (4)].num);
3640
if ((yyvsp[(3) - (4)].num) > 500)
3642
msg_notice("The value specified for time_sleep is too large", evt_tag_int("time_sleep", (yyvsp[(3) - (4)].num)), NULL);
3643
configuration->time_sleep = 500;
3650
/* Line 1455 of yacc.c */
3651
#line 611 "cfg-grammar.y"
3652
{ configuration->log_fifo_size = (yyvsp[(3) - (4)].num); }
3657
/* Line 1455 of yacc.c */
3658
#line 612 "cfg-grammar.y"
3659
{ configuration->log_iw_size = (yyvsp[(3) - (4)].num); }
3664
/* Line 1455 of yacc.c */
3665
#line 613 "cfg-grammar.y"
3666
{ configuration->log_fetch_limit = (yyvsp[(3) - (4)].num); }
3671
/* Line 1455 of yacc.c */
3672
#line 614 "cfg-grammar.y"
3673
{ configuration->log_msg_size = (yyvsp[(3) - (4)].num); }
3678
/* Line 1455 of yacc.c */
3679
#line 615 "cfg-grammar.y"
3680
{ configuration->keep_timestamp = (yyvsp[(3) - (4)].num); }
3685
/* Line 1455 of yacc.c */
3686
#line 616 "cfg-grammar.y"
3687
{ configuration->template_options.ts_format = cfg_ts_format_value((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3692
/* Line 1455 of yacc.c */
3693
#line 617 "cfg-grammar.y"
3694
{ configuration->template_options.frac_digits = (yyvsp[(3) - (4)].num); }
3699
/* Line 1455 of yacc.c */
3700
#line 618 "cfg-grammar.y"
3701
{ configuration->create_dirs = (yyvsp[(3) - (4)].num); }
3706
/* Line 1455 of yacc.c */
3707
#line 619 "cfg-grammar.y"
3708
{ cfg_file_owner_set(configuration, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3713
/* Line 1455 of yacc.c */
3714
#line 620 "cfg-grammar.y"
3715
{ cfg_file_owner_set(configuration, "-2"); }
3720
/* Line 1455 of yacc.c */
3721
#line 621 "cfg-grammar.y"
3722
{ cfg_file_group_set(configuration, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3727
/* Line 1455 of yacc.c */
3728
#line 622 "cfg-grammar.y"
3729
{ cfg_file_group_set(configuration, "-2"); }
3734
/* Line 1455 of yacc.c */
3735
#line 623 "cfg-grammar.y"
3736
{ cfg_file_perm_set(configuration, (yyvsp[(3) - (4)].num)); }
3741
/* Line 1455 of yacc.c */
3742
#line 624 "cfg-grammar.y"
3743
{ cfg_file_perm_set(configuration, -2); }
3748
/* Line 1455 of yacc.c */
3749
#line 625 "cfg-grammar.y"
3750
{ cfg_dir_owner_set(configuration, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3755
/* Line 1455 of yacc.c */
3756
#line 626 "cfg-grammar.y"
3757
{ cfg_dir_owner_set(configuration, "-2"); }
3762
/* Line 1455 of yacc.c */
3763
#line 627 "cfg-grammar.y"
3764
{ cfg_dir_group_set(configuration, (yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3769
/* Line 1455 of yacc.c */
3770
#line 628 "cfg-grammar.y"
3771
{ cfg_dir_group_set(configuration, "-2"); }
3776
/* Line 1455 of yacc.c */
3777
#line 629 "cfg-grammar.y"
3778
{ cfg_dir_perm_set(configuration, (yyvsp[(3) - (4)].num)); }
3783
/* Line 1455 of yacc.c */
3784
#line 630 "cfg-grammar.y"
3785
{ cfg_dir_perm_set(configuration, -2); }
3790
/* Line 1455 of yacc.c */
3791
#line 631 "cfg-grammar.y"
3792
{ configuration->use_dns_cache = (yyvsp[(3) - (4)].num); }
3797
/* Line 1455 of yacc.c */
3798
#line 632 "cfg-grammar.y"
3799
{ configuration->dns_cache_size = (yyvsp[(3) - (4)].num); }
3804
/* Line 1455 of yacc.c */
3805
#line 633 "cfg-grammar.y"
3806
{ configuration->dns_cache_expire = (yyvsp[(3) - (4)].num); }
3811
/* Line 1455 of yacc.c */
3812
#line 635 "cfg-grammar.y"
3813
{ configuration->dns_cache_expire_failed = (yyvsp[(3) - (4)].num); }
3818
/* Line 1455 of yacc.c */
3819
#line 636 "cfg-grammar.y"
3820
{ configuration->dns_cache_hosts = g_strdup((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3825
/* Line 1455 of yacc.c */
3826
#line 637 "cfg-grammar.y"
3827
{ configuration->file_template_name = g_strdup((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3832
/* Line 1455 of yacc.c */
3833
#line 638 "cfg-grammar.y"
3834
{ configuration->proto_template_name = g_strdup((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3839
/* Line 1455 of yacc.c */
3840
#line 639 "cfg-grammar.y"
3841
{ configuration->recv_time_zone = g_strdup((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3846
/* Line 1455 of yacc.c */
3847
#line 640 "cfg-grammar.y"
3848
{ configuration->template_options.time_zone[LTZ_SEND] = g_strdup((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3853
/* Line 1455 of yacc.c */
3854
#line 641 "cfg-grammar.y"
3855
{ configuration->template_options.time_zone[LTZ_LOCAL] = g_strdup((yyvsp[(3) - (4)].cptr)); free((yyvsp[(3) - (4)].cptr)); }
3860
/* Line 1455 of yacc.c */
3861
#line 652 "cfg-grammar.y"
3862
{ (yyval.num) = 1; }
3867
/* Line 1455 of yacc.c */
3868
#line 653 "cfg-grammar.y"
3869
{ (yyval.num) = 0; }
3874
/* Line 1455 of yacc.c */
3875
#line 654 "cfg-grammar.y"
3876
{ (yyval.num) = (yyvsp[(1) - (1)].num); }
3881
/* Line 1455 of yacc.c */
3882
#line 658 "cfg-grammar.y"
3883
{ (yyval.num) = (yyvsp[(1) - (1)].num); }
3888
/* Line 1455 of yacc.c */
3889
#line 659 "cfg-grammar.y"
3890
{ (yyval.num) = 2; }
3895
/* Line 1455 of yacc.c */
3896
#line 663 "cfg-grammar.y"
3897
{ (yyval.cptr) = (yyvsp[(1) - (1)].cptr); }
3902
/* Line 1455 of yacc.c */
3903
#line 664 "cfg-grammar.y"
3904
{ (yyval.cptr) = strdup(lexer->token_text->str); }
3909
/* Line 1455 of yacc.c */
3910
#line 665 "cfg-grammar.y"
3911
{ (yyval.cptr) = strdup(lexer->token_text->str); }
3916
/* Line 1455 of yacc.c */
3917
#line 3918 "cfg-grammar.c"
3920
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
3924
YY_STACK_PRINT (yyss, yyssp);
3929
/* Now `shift' the result of the reduction. Determine what state
3930
that goes to, based on the state we popped back to and the rule
3931
number reduced by. */
3935
yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
3936
if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
3937
yystate = yytable[yystate];
3939
yystate = yydefgoto[yyn - YYNTOKENS];
3944
/*------------------------------------.
3945
| yyerrlab -- here on detecting error |
3946
`------------------------------------*/
3948
/* If not already recovering from an error, report this error. */
3952
#if ! YYERROR_VERBOSE
3953
yyerror (&yylloc, lexer, dummy, YY_("syntax error"));
3956
YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
3957
if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
3959
YYSIZE_T yyalloc = 2 * yysize;
3960
if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
3961
yyalloc = YYSTACK_ALLOC_MAXIMUM;
3962
if (yymsg != yymsgbuf)
3963
YYSTACK_FREE (yymsg);
3964
yymsg = (char *) YYSTACK_ALLOC (yyalloc);
3966
yymsg_alloc = yyalloc;
3970
yymsg_alloc = sizeof yymsgbuf;
3974
if (0 < yysize && yysize <= yymsg_alloc)
3976
(void) yysyntax_error (yymsg, yystate, yychar);
3977
yyerror (&yylloc, lexer, dummy, yymsg);
3981
yyerror (&yylloc, lexer, dummy, YY_("syntax error"));
3983
goto yyexhaustedlab;
3989
yyerror_range[0] = yylloc;
3991
if (yyerrstatus == 3)
3993
/* If just tried and failed to reuse lookahead token after an
3994
error, discard it. */
3996
if (yychar <= YYEOF)
3998
/* Return failure if at end of input. */
3999
if (yychar == YYEOF)
4004
yydestruct ("Error: discarding",
4005
yytoken, &yylval, &yylloc, lexer, dummy);
4010
/* Else will try to reuse lookahead token after shifting the error
4015
/*---------------------------------------------------.
4016
| yyerrorlab -- error raised explicitly by YYERROR. |
4017
`---------------------------------------------------*/
4020
/* Pacify compilers like GCC when the user code never invokes
4021
YYERROR and the label yyerrorlab therefore never appears in user
4023
if (/*CONSTCOND*/ 0)
4026
yyerror_range[0] = yylsp[1-yylen];
4027
/* Do not reclaim the symbols of the rule which action triggered
4031
YY_STACK_PRINT (yyss, yyssp);
4036
/*-------------------------------------------------------------.
4037
| yyerrlab1 -- common code for both syntax error and YYERROR. |
4038
`-------------------------------------------------------------*/
4040
yyerrstatus = 3; /* Each real token shifted decrements this. */
4044
yyn = yypact[yystate];
4045
if (yyn != YYPACT_NINF)
4048
if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
4056
/* Pop the current state because it cannot handle the error token. */
4060
yyerror_range[0] = *yylsp;
4061
yydestruct ("Error: popping",
4062
yystos[yystate], yyvsp, yylsp, lexer, dummy);
4065
YY_STACK_PRINT (yyss, yyssp);
4070
yyerror_range[1] = yylloc;
4071
/* Using YYLLOC is tempting, but would change the location of
4072
the lookahead. YYLOC is available though. */
4073
YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
4076
/* Shift the error token. */
4077
YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
4083
/*-------------------------------------.
4084
| yyacceptlab -- YYACCEPT comes here. |
4085
`-------------------------------------*/
4090
/*-----------------------------------.
4091
| yyabortlab -- YYABORT comes here. |
4092
`-----------------------------------*/
4097
#if !defined(yyoverflow) || YYERROR_VERBOSE
4098
/*-------------------------------------------------.
4099
| yyexhaustedlab -- memory exhaustion comes here. |
4100
`-------------------------------------------------*/
4102
yyerror (&yylloc, lexer, dummy, YY_("memory exhausted"));
4108
if (yychar != YYEMPTY)
4109
yydestruct ("Cleanup: discarding lookahead",
4110
yytoken, &yylval, &yylloc, lexer, dummy);
4111
/* Do not reclaim the symbols of the rule which action triggered
4112
this YYABORT or YYACCEPT. */
4114
YY_STACK_PRINT (yyss, yyssp);
4115
while (yyssp != yyss)
4117
yydestruct ("Cleanup: popping",
4118
yystos[*yyssp], yyvsp, yylsp, lexer, dummy);
4123
YYSTACK_FREE (yyss);
4126
if (yymsg != yymsgbuf)
4127
YYSTACK_FREE (yymsg);
4129
/* Make sure YYID is used. */
4130
return YYID (yyresult);
4135
/* Line 1675 of yacc.c */
4136
#line 784 "cfg-grammar.y"