summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin/perl/x2p/a2p.c
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/perl/x2p/a2p.c')
-rw-r--r--gnu/usr.bin/perl/x2p/a2p.c2715
1 files changed, 2715 insertions, 0 deletions
diff --git a/gnu/usr.bin/perl/x2p/a2p.c b/gnu/usr.bin/perl/x2p/a2p.c
new file mode 100644
index 0000000..c441634
--- /dev/null
+++ b/gnu/usr.bin/perl/x2p/a2p.c
@@ -0,0 +1,2715 @@
+#ifndef lint
+static char yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93";
+#endif
+#define YYBYACC 1
+#define YYMAJOR 1
+#define YYMINOR 9
+#define yyclearin (yychar=(-1))
+#define yyerrok (yyerrflag=0)
+#define YYRECOVERING (yyerrflag!=0)
+#define YYPREFIX "yy"
+#line 2 "a2p.y"
+/* $RCSfile: a2p.y,v $$Revision: 1.1.1.1 $$Date: 1993/08/23 21:30:09 $
+ *
+ * Copyright (c) 1991, Larry Wall
+ *
+ * You may distribute under the terms of either the GNU General Public
+ * License or the Artistic License, as specified in the README file.
+ *
+ * $Log: a2p.y,v $
+ * Revision 1.1.1.1 1993/08/23 21:30:09 nate
+ * PERL!
+ *
+ * Revision 4.0.1.2 92/06/08 16:13:03 lwall
+ * patch20: in a2p, getline should allow variable to be array element
+ *
+ * Revision 4.0.1.1 91/06/07 12:12:41 lwall
+ * patch4: new copyright notice
+ *
+ * Revision 4.0 91/03/20 01:57:21 lwall
+ * 4.0 baseline.
+ *
+ */
+
+#include "INTERN.h"
+#include "a2p.h"
+
+int root;
+int begins = Nullop;
+int ends = Nullop;
+
+#line 42 "y.tab.c"
+#define BEGIN 257
+#define END 258
+#define REGEX 259
+#define SEMINEW 260
+#define NEWLINE 261
+#define COMMENT 262
+#define FUN1 263
+#define FUNN 264
+#define GRGR 265
+#define PRINT 266
+#define PRINTF 267
+#define SPRINTF 268
+#define SPLIT 269
+#define IF 270
+#define ELSE 271
+#define WHILE 272
+#define FOR 273
+#define IN 274
+#define EXIT 275
+#define NEXT 276
+#define BREAK 277
+#define CONTINUE 278
+#define RET 279
+#define GETLINE 280
+#define DO 281
+#define SUB 282
+#define GSUB 283
+#define MATCH 284
+#define FUNCTION 285
+#define USERFUN 286
+#define DELETE 287
+#define ASGNOP 288
+#define OROR 289
+#define ANDAND 290
+#define NUMBER 291
+#define VAR 292
+#define SUBSTR 293
+#define INDEX 294
+#define MATCHOP 295
+#define RELOP 296
+#define OR 297
+#define STRING 298
+#define UMINUS 299
+#define NOT 300
+#define INCR 301
+#define DECR 302
+#define FIELD 303
+#define VFIELD 304
+#define YYERRCODE 256
+short yylhs[] = { -1,
+ 0, 3, 6, 6, 2, 2, 7, 7, 7, 7,
+ 7, 7, 9, 8, 8, 11, 11, 11, 11, 15,
+ 15, 15, 15, 14, 14, 14, 14, 13, 13, 13,
+ 13, 12, 12, 12, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
+ 17, 17, 17, 17, 10, 10, 10, 18, 18, 18,
+ 1, 1, 19, 19, 19, 19, 4, 4, 20, 20,
+ 21, 21, 21, 21, 5, 5, 22, 22, 22, 22,
+ 25, 25, 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 26, 26, 26, 24, 24,
+ 24, 24, 24, 24, 24, 24,
+};
+short yylen[] = { 2,
+ 2, 6, 5, 2, 3, 0, 1, 5, 10, 4,
+ 1, 1, 1, 1, 3, 1, 1, 1, 1, 3,
+ 4, 4, 2, 3, 3, 3, 3, 3, 3, 1,
+ 3, 1, 2, 3, 1, 1, 1, 3, 3, 3,
+ 3, 3, 3, 3, 5, 2, 2, 2, 2, 2,
+ 2, 3, 1, 2, 3, 4, 3, 4, 1, 3,
+ 4, 4, 4, 2, 8, 6, 8, 8, 6, 6,
+ 6, 6, 6, 6, 6, 6, 8, 8, 8, 8,
+ 1, 4, 1, 2, 1, 1, 0, 4, 4, 3,
+ 2, 0, 1, 1, 1, 1, 2, 0, 1, 1,
+ 2, 2, 2, 2, 2, 0, 3, 2, 2, 1,
+ 1, 0, 1, 4, 2, 4, 2, 1, 1, 1,
+ 2, 1, 1, 2, 5, 1, 1, 1, 6, 9,
+ 6, 7, 10, 9, 6, 5,
+};
+short yydefred[] = { 92,
+ 0, 0, 94, 95, 96, 93, 0, 91, 0, 0,
+ 30, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 36, 0, 0, 0, 37, 0, 0, 0, 0,
+ 0, 83, 0, 98, 0, 11, 0, 92, 0, 0,
+ 0, 17, 18, 19, 0, 0, 98, 98, 0, 0,
+ 0, 64, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 23,
+ 48, 49, 0, 0, 0, 0, 0, 0, 4, 0,
+ 98, 98, 98, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 46,
+ 47, 0, 0, 60, 0, 0, 0, 0, 0, 98,
+ 98, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 99, 100, 0, 97, 52, 31,
+ 27, 20, 0, 0, 0, 0, 29, 0, 0, 0,
+ 0, 44, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 61, 62, 90, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 13, 63, 82, 0,
+ 0, 98, 0, 0, 0, 0, 0, 0, 119, 118,
+ 122, 0, 98, 0, 98, 10, 98, 0, 105, 0,
+ 110, 0, 0, 21, 0, 58, 92, 3, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 98, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 98, 98, 98, 98, 98, 8, 0, 0,
+ 69, 0, 74, 0, 73, 0, 76, 0, 75, 0,
+ 71, 72, 0, 66, 0, 70, 127, 126, 128, 0,
+ 0, 0, 0, 0, 111, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 98, 0, 0, 0, 98, 98, 98, 0, 0, 0,
+ 98, 68, 67, 78, 77, 80, 79, 0, 65, 0,
+ 0, 0, 0, 0, 0, 125, 0, 0, 0, 131,
+ 135, 0, 0, 0, 9, 98, 98, 0, 132, 0,
+ 0, 98, 130, 134, 0, 133,
+};
+short yydgoto[] = { 1,
+ 2, 7, 36, 74, 127, 37, 38, 39, 166, 52,
+ 75, 188, 42, 43, 44, 45, 46, 54, 8, 128,
+ 227, 189, 190, 191, 256, 250,
+};
+short yysindex[] = { 0,
+ 0, -45, 0, 0, 0, 0, 4961, 0, -114, -98,
+ 0, -11, 7, 7279, 10, 6, 17, 25, 45, -195,
+ 62, 0, 5, 77, 83, 0, 7332, 7332, 5086, -252,
+ -252, 0, 7332, 0, 5086, 0, -154, 0, 8, -41,
+ 1605, 0, 0, 0, 118, -234, 0, 0, 6059, 7279,
+ 5487, 0, 5843, 85, 7332, 7332, 75, 6108, 6154, 7332,
+ 97, 7279, 7279, 7332, 7332, 5086, -73, -266, -73, 0,
+ 0, 0, 26, -183, -39, 102, 106, 116, 0, -45,
+ 0, 0, 0, 5086, 6219, 7332, 7332, 7332, 118, -133,
+ 7332, 7332, 7332, 7332, 7332, 7332, 7332, -116, 5086, 0,
+ 0, -183, -183, 0, 6289, 125, 5487, 166, 29, 0,
+ 0, 6335, 1522, 7332, 128, 6381, 134, 6423, 6484, 7279,
+ 141, 90, 6534, 6580, 0, 0, 5197, 0, 0, 0,
+ 0, 0, -183, 5362, 5362, -206, 0, 1522, 1522, 1522,
+ 1522, 0, -32, 395, 395, -73, -73, -73, -73, -252,
+ -206, 5242, 5288, 0, 0, 0, 3391, 3391, -108, 1522,
+ 7332, 7332, 7332, 7332, 6626, 145, 0, 0, 0, 7332,
+ 7332, 0, 7279, 7279, 147, 148, 149, 7332, 0, 0,
+ 0, 7332, 0, -102, 0, 0, 0, 7332, 0, -42,
+ 0, 5553, -99, 0, 7332, 0, 0, 0, 7332, 7332,
+ 31, 2565, 3715, 3794, 5752, 153, 6688, 0, 6017, 6749,
+ -183, -38, -38, 5086, 5086, 2408, 7332, 7332, 4312, 104,
+ -183, -183, 0, 0, 0, 0, 0, 0, 118, -45,
+ 0, 6802, 0, 7332, 0, 7332, 0, 7332, 0, 7332,
+ 0, 0, -86, 0, 7332, 0, 0, 0, 0, 7332,
+ 7332, -37, -35, 6856, 0, 137, -74, 7332, 5598, -183,
+ -183, -183, -183, -183, 156, 6898, 6953, 7014, 7067, 7128,
+ 0, 7170, 7332, 7332, 0, 0, 0, 2698, 159, 7218,
+ 0, 0, 0, 0, 0, 0, 0, -183, 0, 4312,
+ 4312, 4312, 2408, -52, 5086, 0, -183, 5643, -71, 0,
+ 0, 160, 2408, -33, 0, 0, 0, 161, 0, 4312,
+ 4312, 0, 0, 0, 4312, 0,
+};
+short yyrindex[] = { 0,
+ 0, 2363, 0, 0, 0, 0, 203, 0, 0, 0,
+ 0, 56, 0, 3556, 0, 2835, 0, 0, 0, 0,
+ 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2231, 0, 2279, 1209,
+ 3881, 0, 0, 0, 1818, 1664, 0, 0, 0, 173,
+ 0, 0, 3764, 111, 0, 0, 381, 0, 0, 0,
+ 0, 173, 129, 0, 0, 0, 564, 834, 889, 0,
+ 0, 0, 436, 5689, 0, -200, -180, -156, 0, 2462,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2084, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5689, 5689, 0, 0, 0, 0, -22, 0, 0,
+ 0, 0, 2883, 0, 0, 0, 0, 0, 0, 173,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5689, 0, 0, 2181, 0, 3122, 3167, 3212,
+ 3281, 0, 0, 1719, 1770, 943, 1016, 1286, 1340, 2780,
+ 1394, 0, 0, 0, 0, 0, 0, 0, 0, 3489,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 12, 12, 0, 0, 0, -29, 0, 0,
+ 0, 46, 0, 0, 0, 0, 0, 67, 0, 0,
+ 0, 0, 491, 0, 0, 0, 0, 0, 3604, 3676,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4374, 71, 103, 0, 0, 162, 126, 241, 0, 0,
+ 5689, 4441, 0, 0, 0, 0, 0, 0, 2132, 2510,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 165, 0, 0, 0, 0, 0, 4486,
+ 4751, 4796, 4841, 4887, 0, 0, 0, 0, 0, 0,
+ 0, 0, 296, 357, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 5689, 0, 0,
+ 0, 0, 184, 0, 0, 0, 5152, 0, 5954, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+};
+short yygindex[] = { 0,
+ -20, 0, 0, 4150, -75, 0, 0, 0, 0, 19,
+ -7, 4065, -19, -3, -1, 7551, 4353, -31, 0, 0,
+ 0, -170, -161, 0, -270, 16,
+};
+#define YYTABLESIZE 7831
+short yytable[] = { 40,
+ 81, 129, 84, 275, 96, 276, 303, 309, 47, 94,
+ 92, 120, 93, 6, 95, 76, 226, 80, 16, 109,
+ 97, 70, 302, 248, 48, 195, 152, 153, 49, 120,
+ 91, 77, 308, 78, 100, 101, 271, 81, 98, 23,
+ 81, 81, 81, 81, 81, 81, 50, 81, 257, 55,
+ 32, 33, 87, 99, 255, 59, 58, 192, 81, 81,
+ 81, 97, 81, 81, 59, 56, 100, 101, 106, 156,
+ 87, 231, 111, 87, 232, 109, 136, 125, 126, 98,
+ 121, 122, 82, 83, 60, 249, 123, 76, 17, 17,
+ 61, 151, 59, 81, 81, 63, 59, 59, 59, 59,
+ 59, 62, 59, 77, 123, 78, 79, 113, 18, 18,
+ 86, 115, 81, 59, 59, 59, 64, 59, 59, 299,
+ 300, 301, 65, 81, 81, 113, 193, 194, 111, 115,
+ 81, 255, 19, 19, 114, 87, 120, 98, 167, 313,
+ 314, 255, 130, 117, 316, 259, 131, 86, 59, 59,
+ 86, 86, 86, 86, 96, 86, 132, 86, 142, 94,
+ 92, 117, 93, 150, 95, 155, 121, 59, 86, 86,
+ 86, 161, 86, 86, 125, 126, 230, 163, 59, 59,
+ 91, 168, 169, 201, 121, 208, 214, 215, 216, 220,
+ 83, 212, 213, 241, 258, 278, 282, 279, 295, 306,
+ 307, 312, 1, 86, 86, 66, 252, 253, 27, 110,
+ 28, 97, 298, 87, 3, 4, 5, 223, 224, 225,
+ 112, 87, 86, 113, 112, 87, 247, 88, 251, 98,
+ 120, 120, 120, 86, 86, 0, 82, 83, 0, 0,
+ 0, 90, 0, 0, 0, 0, 0, 82, 83, 82,
+ 83, 82, 83, 82, 83, 82, 83, 81, 81, 81,
+ 81, 81, 81, 81, 81, 81, 16, 16, 81, 81,
+ 294, 87, 87, 87, 81, 0, 87, 0, 0, 0,
+ 81, 124, 81, 81, 81, 81, 81, 304, 81, 81,
+ 81, 81, 81, 81, 81, 81, 81, 23, 81, 124,
+ 81, 81, 81, 81, 81, 123, 123, 123, 32, 33,
+ 0, 0, 59, 59, 59, 59, 59, 59, 59, 59,
+ 59, 0, 0, 59, 59, 0, 113, 113, 113, 59,
+ 115, 115, 115, 0, 0, 59, 114, 59, 59, 59,
+ 59, 59, 0, 59, 59, 59, 59, 59, 59, 59,
+ 59, 59, 0, 59, 114, 59, 59, 59, 59, 59,
+ 0, 0, 117, 117, 117, 0, 0, 86, 86, 86,
+ 86, 86, 86, 86, 86, 86, 0, 0, 86, 86,
+ 54, 0, 0, 0, 86, 121, 121, 121, 0, 0,
+ 86, 90, 86, 86, 86, 86, 86, 116, 86, 86,
+ 86, 86, 86, 86, 86, 86, 86, 0, 86, 0,
+ 86, 86, 86, 86, 86, 116, 0, 54, 0, 0,
+ 54, 54, 54, 54, 54, 54, 0, 54, 12, 13,
+ 0, 96, 0, 14, 15, 84, 94, 0, 54, 54,
+ 0, 95, 54, 54, 0, 16, 0, 17, 18, 19,
+ 0, 21, 0, 0, 0, 0, 22, 23, 24, 25,
+ 85, 86, 0, 26, 0, 0, 30, 31, 32, 33,
+ 0, 0, 84, 54, 54, 84, 84, 84, 84, 84,
+ 84, 0, 84, 0, 0, 0, 0, 0, 97, 0,
+ 22, 0, 54, 84, 84, 84, 0, 84, 84, 0,
+ 124, 124, 124, 54, 54, 0, 98, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 22, 84, 84,
+ 22, 22, 22, 22, 22, 22, 0, 22, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 22, 22,
+ 22, 0, 22, 22, 0, 114, 114, 114, 84, 84,
+ 0, 0, 0, 51, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 22, 22, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 51, 0, 22, 51, 51, 51, 51, 51, 51, 0,
+ 51, 0, 0, 22, 22, 0, 116, 116, 116, 0,
+ 0, 51, 51, 51, 0, 51, 51, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 54, 54, 54,
+ 54, 54, 54, 54, 54, 54, 0, 0, 54, 54,
+ 0, 0, 0, 0, 54, 0, 51, 0, 0, 0,
+ 54, 0, 54, 54, 54, 54, 54, 0, 54, 54,
+ 54, 54, 54, 54, 54, 54, 54, 0, 54, 0,
+ 54, 54, 54, 54, 54, 0, 51, 51, 0, 0,
+ 0, 0, 84, 84, 84, 84, 84, 84, 84, 84,
+ 84, 0, 0, 84, 84, 0, 0, 0, 0, 84,
+ 0, 0, 0, 0, 0, 84, 0, 84, 84, 84,
+ 84, 84, 0, 84, 84, 84, 84, 84, 84, 84,
+ 84, 84, 0, 84, 0, 84, 84, 84, 84, 84,
+ 0, 0, 0, 0, 0, 0, 0, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 0, 0, 22, 22,
+ 0, 0, 0, 0, 22, 0, 0, 0, 0, 0,
+ 22, 0, 22, 22, 22, 22, 22, 0, 22, 22,
+ 0, 22, 22, 22, 22, 22, 22, 0, 22, 0,
+ 22, 22, 22, 22, 22, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 51, 51, 51, 51, 51, 51, 51, 51, 51, 0,
+ 0, 51, 51, 35, 0, 0, 0, 51, 0, 0,
+ 0, 0, 0, 51, 0, 51, 51, 51, 51, 51,
+ 0, 51, 51, 51, 51, 51, 51, 51, 51, 51,
+ 0, 51, 0, 51, 51, 51, 51, 51, 0, 0,
+ 35, 0, 0, 35, 35, 35, 35, 35, 35, 0,
+ 35, 0, 0, 0, 0, 0, 0, 0, 50, 0,
+ 0, 35, 35, 35, 0, 35, 35, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 50, 35, 35, 50, 50,
+ 50, 50, 50, 50, 0, 50, 0, 0, 0, 0,
+ 0, 0, 40, 0, 0, 35, 50, 50, 50, 0,
+ 50, 50, 0, 0, 0, 0, 35, 35, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
+ 0, 50, 40, 40, 40, 40, 40, 40, 0, 40,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 40, 40, 40, 0, 40, 40, 0, 0, 0, 0,
+ 0, 50, 50, 0, 0, 41, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 40, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 41, 0, 0, 41, 41, 41, 41, 41,
+ 41, 0, 41, 0, 0, 40, 40, 0, 0, 0,
+ 0, 0, 0, 41, 41, 41, 0, 41, 41, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 35, 35, 35, 35, 35, 35, 35, 35, 35, 0,
+ 0, 35, 35, 0, 0, 0, 0, 35, 41, 0,
+ 0, 0, 0, 35, 0, 35, 35, 35, 35, 35,
+ 0, 35, 35, 35, 35, 35, 35, 35, 35, 35,
+ 0, 35, 0, 35, 0, 0, 35, 35, 41, 41,
+ 0, 0, 0, 0, 0, 50, 50, 50, 50, 50,
+ 50, 50, 50, 50, 0, 0, 50, 50, 0, 0,
+ 0, 0, 50, 0, 0, 0, 0, 0, 50, 0,
+ 50, 50, 50, 50, 50, 0, 50, 50, 50, 50,
+ 50, 50, 50, 50, 50, 0, 50, 0, 50, 50,
+ 50, 50, 50, 0, 0, 0, 0, 0, 0, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 14, 0,
+ 40, 40, 0, 0, 0, 0, 40, 0, 0, 0,
+ 0, 0, 40, 0, 40, 40, 40, 40, 40, 0,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 0,
+ 40, 0, 40, 40, 40, 40, 40, 0, 14, 0,
+ 0, 14, 0, 14, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 14, 0, 0,
+ 0, 0, 41, 41, 41, 41, 41, 41, 41, 41,
+ 41, 0, 0, 41, 41, 42, 0, 0, 0, 41,
+ 0, 0, 0, 0, 0, 41, 0, 41, 41, 41,
+ 41, 41, 0, 41, 41, 41, 41, 41, 41, 41,
+ 41, 41, 0, 41, 0, 41, 41, 41, 41, 41,
+ 0, 0, 42, 0, 0, 42, 42, 42, 42, 42,
+ 42, 14, 42, 0, 0, 0, 0, 0, 0, 43,
+ 0, 0, 0, 42, 42, 42, 0, 42, 42, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 43, 0, 42, 43,
+ 43, 43, 43, 43, 43, 0, 43, 0, 0, 0,
+ 0, 0, 0, 34, 0, 0, 0, 43, 43, 43,
+ 0, 43, 43, 0, 0, 0, 0, 0, 42, 42,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 34, 0, 43, 34, 34, 34, 34, 34, 34, 0,
+ 34, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 34, 34, 34, 0, 34, 34, 0, 0, 0,
+ 0, 0, 43, 43, 0, 14, 14, 14, 14, 14,
+ 14, 14, 14, 0, 0, 0, 14, 14, 0, 0,
+ 0, 0, 0, 0, 0, 0, 34, 34, 14, 0,
+ 14, 14, 14, 14, 14, 0, 0, 0, 0, 14,
+ 14, 14, 14, 0, 0, 34, 14, 0, 14, 14,
+ 14, 14, 14, 0, 0, 0, 34, 34, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 42, 42, 42, 42, 42, 42, 42, 42,
+ 42, 0, 0, 42, 42, 0, 0, 0, 0, 42,
+ 0, 66, 0, 0, 27, 42, 28, 42, 42, 42,
+ 42, 42, 0, 42, 42, 42, 42, 42, 42, 42,
+ 42, 42, 0, 42, 0, 42, 42, 42, 42, 42,
+ 0, 0, 0, 0, 0, 0, 43, 43, 43, 43,
+ 43, 43, 43, 43, 43, 0, 0, 43, 43, 0,
+ 0, 0, 0, 43, 0, 0, 0, 0, 0, 43,
+ 0, 43, 43, 43, 43, 43, 0, 43, 43, 43,
+ 43, 43, 43, 43, 43, 43, 0, 43, 0, 43,
+ 43, 43, 43, 43, 66, 0, 0, 27, 0, 28,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 0,
+ 0, 34, 34, 35, 87, 0, 88, 34, 0, 0,
+ 0, 0, 0, 34, 0, 34, 34, 34, 34, 34,
+ 0, 34, 0, 0, 34, 34, 34, 34, 34, 34,
+ 0, 34, 0, 34, 34, 34, 34, 34, 0, 0,
+ 35, 0, 0, 35, 35, 35, 35, 35, 35, 0,
+ 35, 0, 0, 0, 0, 0, 0, 0, 38, 0,
+ 0, 35, 35, 35, 0, 35, 35, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 35, 35, 38, 38,
+ 0, 38, 38, 38, 0, 0, 0, 0, 0, 39,
+ 0, 0, 0, 0, 0, 35, 38, 38, 38, 0,
+ 38, 38, 0, 0, 12, 13, 35, 35, 0, 14,
+ 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 16, 0, 17, 18, 19, 0, 21, 0, 39,
+ 39, 38, 39, 39, 39, 0, 0, 32, 0, 26,
+ 0, 0, 30, 31, 32, 33, 0, 39, 39, 39,
+ 0, 39, 39, 0, 0, 0, 0, 0, 0, 0,
+ 0, 38, 38, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 32, 32, 0,
+ 0, 32, 39, 0, 0, 0, 0, 12, 13, 0,
+ 0, 0, 14, 15, 0, 32, 32, 32, 0, 32,
+ 0, 0, 0, 0, 16, 0, 17, 18, 19, 0,
+ 21, 0, 39, 39, 0, 22, 23, 24, 25, 85,
+ 86, 0, 26, 0, 0, 30, 31, 32, 33, 0,
+ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 35, 35, 35, 35, 35, 35, 35, 35, 35, 0,
+ 0, 35, 35, 0, 0, 0, 0, 35, 0, 0,
+ 32, 32, 0, 35, 0, 35, 35, 35, 35, 35,
+ 0, 0, 35, 35, 35, 35, 35, 35, 35, 35,
+ 0, 35, 0, 35, 0, 0, 35, 35, 0, 0,
+ 0, 0, 0, 0, 0, 38, 38, 38, 38, 38,
+ 38, 38, 38, 38, 0, 0, 38, 38, 0, 0,
+ 0, 0, 38, 0, 0, 0, 0, 0, 38, 0,
+ 38, 38, 38, 38, 38, 0, 38, 38, 38, 38,
+ 38, 38, 38, 38, 38, 0, 38, 0, 38, 38,
+ 38, 38, 38, 0, 0, 0, 39, 39, 39, 39,
+ 39, 39, 39, 39, 39, 0, 0, 39, 39, 0,
+ 0, 0, 0, 39, 0, 0, 0, 0, 0, 39,
+ 0, 39, 39, 39, 39, 39, 0, 39, 39, 39,
+ 39, 39, 39, 39, 39, 39, 0, 39, 0, 39,
+ 39, 39, 39, 39, 32, 32, 32, 32, 32, 32,
+ 32, 32, 32, 33, 0, 32, 32, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 32, 0, 32,
+ 32, 32, 32, 32, 0, 32, 32, 32, 32, 32,
+ 32, 32, 32, 32, 0, 32, 0, 32, 32, 32,
+ 32, 32, 0, 33, 33, 0, 0, 33, 0, 0,
+ 0, 45, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 33, 33, 33, 0, 33, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 45, 45, 0, 0, 45, 33, 0, 0, 0,
+ 15, 0, 0, 0, 0, 0, 0, 0, 0, 45,
+ 45, 45, 0, 45, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 33, 33, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 15, 0, 0, 15, 45, 15, 0, 0, 0, 0,
+ 12, 0, 0, 0, 0, 0, 0, 0, 0, 15,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 45, 45, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 12, 0, 0, 12, 0, 12, 0, 0, 7, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 15, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 7, 0,
+ 0, 7, 0, 7, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 7, 0, 0,
+ 33, 33, 33, 33, 33, 33, 33, 33, 33, 0,
+ 0, 33, 33, 12, 0, 0, 0, 0, 0, 0,
+ 0, 0, 6, 33, 0, 33, 33, 33, 33, 33,
+ 0, 33, 33, 33, 33, 33, 33, 33, 33, 33,
+ 0, 33, 0, 33, 33, 33, 33, 33, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 0, 0, 45,
+ 45, 0, 6, 0, 0, 6, 0, 6, 0, 0,
+ 0, 45, 0, 45, 45, 45, 45, 45, 0, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 0, 45,
+ 0, 45, 45, 45, 45, 45, 0, 15, 15, 15,
+ 15, 15, 15, 15, 15, 0, 0, 66, 15, 15,
+ 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
+ 15, 5, 15, 15, 15, 15, 15, 0, 0, 0,
+ 0, 15, 15, 15, 15, 0, 0, 0, 15, 0,
+ 15, 15, 15, 15, 15, 6, 0, 12, 12, 12,
+ 12, 0, 12, 12, 12, 0, 0, 0, 12, 12,
+ 0, 5, 0, 0, 5, 0, 5, 0, 0, 2,
+ 12, 0, 12, 12, 12, 12, 12, 0, 0, 0,
+ 0, 12, 12, 12, 12, 0, 0, 0, 12, 0,
+ 12, 12, 12, 12, 12, 7, 7, 7, 7, 7,
+ 7, 7, 7, 0, 0, 0, 7, 7, 0, 2,
+ 0, 0, 2, 0, 2, 0, 0, 0, 7, 0,
+ 7, 7, 7, 7, 7, 0, 0, 0, 0, 7,
+ 7, 7, 7, 0, 0, 0, 7, 0, 7, 7,
+ 7, 7, 7, 0, 5, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 66, 233, 0, 27, 234, 28,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
+ 6, 6, 0, 0, 0, 6, 6, 0, 0, 0,
+ 6, 6, 2, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 6, 0, 6, 6, 6, 6, 6, 0,
+ 0, 0, 0, 6, 6, 6, 6, 0, 0, 0,
+ 6, 0, 6, 6, 6, 6, 6, 0, 0, 0,
+ 12, 13, 0, 173, 174, 14, 15, 0, 0, 0,
+ 0, 0, 178, 179, 180, 181, 182, 16, 0, 17,
+ 18, 19, 0, 21, 184, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 0, 0, 0, 0, 0, 0, 5, 5,
+ 5, 0, 0, 0, 5, 5, 0, 0, 0, 5,
+ 5, 0, 0, 0, 0, 0, 0, 35, 0, 0,
+ 27, 5, 28, 5, 5, 5, 5, 5, 0, 0,
+ 0, 0, 5, 5, 5, 5, 293, 0, 0, 5,
+ 0, 5, 5, 5, 5, 5, 2, 2, 2, 0,
+ 0, 0, 2, 2, 0, 0, 0, 2, 2, 57,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
+ 0, 2, 2, 2, 2, 2, 0, 0, 0, 0,
+ 2, 2, 2, 2, 0, 0, 0, 2, 0, 2,
+ 2, 2, 2, 2, 0, 0, 57, 0, 0, 57,
+ 57, 57, 57, 57, 57, 0, 57, 12, 13, 0,
+ 0, 0, 14, 15, 53, 0, 0, 57, 57, 57,
+ 0, 57, 57, 0, 16, 0, 17, 18, 19, 0,
+ 21, 0, 0, 0, 0, 22, 23, 24, 25, 0,
+ 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
+ 0, 53, 57, 57, 53, 53, 53, 53, 53, 53,
+ 0, 53, 55, 0, 0, 0, 0, 0, 0, 0,
+ 0, 57, 53, 53, 0, 0, 53, 53, 0, 0,
+ 0, 0, 57, 57, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 55,
+ 0, 0, 0, 55, 55, 0, 55, 53, 53, 55,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 55, 55, 55, 0, 55, 55, 53, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 11, 53, 53, 0,
+ 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
+ 0, 0, 0, 0, 0, 55, 55, 16, 0, 17,
+ 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 55, 26, 0, 29, 30, 31,
+ 32, 33, 0, 0, 0, 55, 55, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 57, 57, 57, 57,
+ 57, 57, 57, 57, 57, 0, 0, 57, 57, 0,
+ 0, 0, 0, 57, 0, 0, 0, 0, 0, 57,
+ 0, 57, 57, 57, 57, 57, 0, 57, 57, 57,
+ 57, 0, 57, 57, 57, 57, 0, 57, 0, 57,
+ 57, 57, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 53, 53, 53, 53, 53, 53, 53, 53, 53,
+ 0, 0, 53, 53, 0, 0, 0, 0, 53, 0,
+ 0, 0, 0, 0, 53, 0, 53, 53, 53, 53,
+ 53, 28, 53, 53, 53, 53, 0, 53, 53, 53,
+ 53, 0, 53, 0, 53, 53, 53, 0, 0, 55,
+ 55, 55, 55, 55, 55, 0, 0, 55, 0, 0,
+ 0, 0, 0, 0, 0, 0, 55, 0, 28, 0,
+ 0, 0, 28, 28, 0, 28, 24, 55, 28, 0,
+ 55, 55, 55, 55, 55, 55, 55, 55, 55, 28,
+ 28, 28, 55, 28, 28, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 24, 0, 0, 0, 24, 24, 0,
+ 24, 26, 0, 24, 28, 28, 0, 0, 0, 0,
+ 0, 0, 0, 0, 24, 24, 24, 0, 24, 24,
+ 0, 0, 0, 28, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 28, 28, 0, 0, 26, 0,
+ 0, 0, 26, 26, 0, 26, 0, 0, 26, 24,
+ 24, 0, 0, 0, 0, 0, 0, 0, 0, 26,
+ 26, 26, 0, 26, 26, 0, 0, 0, 24, 0,
+ 25, 0, 0, 0, 0, 0, 0, 0, 0, 24,
+ 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 26, 26, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 25, 0, 0,
+ 0, 25, 25, 26, 25, 0, 0, 25, 0, 0,
+ 0, 0, 0, 0, 26, 26, 0, 0, 25, 25,
+ 25, 0, 25, 25, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 25, 25, 0, 0, 0, 28, 28,
+ 28, 28, 28, 28, 0, 0, 28, 0, 0, 0,
+ 0, 0, 25, 0, 0, 28, 0, 0, 0, 0,
+ 0, 0, 0, 25, 25, 0, 28, 0, 0, 28,
+ 28, 28, 28, 28, 28, 28, 28, 28, 0, 0,
+ 0, 28, 0, 24, 24, 24, 24, 24, 24, 0,
+ 66, 24, 0, 27, 0, 28, 0, 0, 0, 0,
+ 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 24, 0, 0, 24, 24, 24, 24, 24, 24,
+ 24, 24, 24, 0, 0, 0, 24, 0, 26, 26,
+ 26, 26, 26, 26, 0, 0, 26, 0, 0, 0,
+ 0, 0, 0, 0, 0, 26, 0, 0, 56, 0,
+ 0, 0, 0, 0, 0, 0, 26, 0, 0, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 0, 0,
+ 0, 26, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 56, 0, 0, 0, 56,
+ 56, 0, 56, 0, 0, 56, 0, 25, 25, 25,
+ 25, 25, 25, 0, 0, 25, 56, 56, 56, 0,
+ 56, 56, 0, 0, 25, 87, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 25, 0, 0, 25, 25,
+ 25, 25, 25, 25, 25, 25, 25, 0, 0, 0,
+ 25, 56, 56, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 87, 0, 0, 0, 87, 87, 0, 87,
+ 56, 0, 87, 88, 0, 0, 0, 0, 0, 0,
+ 0, 56, 56, 87, 87, 87, 0, 87, 87, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 88, 0, 0, 0, 88, 88, 0, 88, 87, 87,
+ 88, 125, 126, 12, 13, 0, 0, 0, 14, 15,
+ 0, 88, 88, 88, 0, 88, 88, 87, 0, 0,
+ 16, 0, 17, 18, 19, 89, 21, 0, 87, 87,
+ 0, 22, 23, 24, 25, 0, 0, 0, 26, 0,
+ 0, 30, 31, 32, 33, 0, 88, 88, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 89, 0, 0, 88, 89, 89, 0, 89,
+ 0, 0, 89, 0, 0, 0, 88, 88, 0, 0,
+ 0, 0, 0, 89, 89, 89, 0, 89, 89, 0,
+ 0, 0, 0, 0, 0, 56, 56, 56, 56, 56,
+ 56, 0, 0, 56, 66, 235, 0, 27, 236, 28,
+ 0, 0, 56, 85, 0, 0, 0, 0, 89, 89,
+ 0, 0, 0, 56, 0, 0, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 0, 0, 89, 56, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 89, 89,
+ 85, 0, 0, 0, 85, 85, 0, 0, 0, 0,
+ 85, 0, 87, 87, 87, 87, 87, 87, 0, 0,
+ 87, 85, 85, 85, 0, 85, 85, 0, 0, 87,
+ 0, 0, 0, 66, 237, 0, 27, 238, 28, 0,
+ 87, 0, 0, 87, 87, 87, 0, 0, 0, 0,
+ 87, 87, 0, 0, 0, 87, 85, 85, 0, 0,
+ 88, 88, 88, 88, 88, 88, 0, 0, 88, 0,
+ 0, 0, 0, 0, 0, 85, 0, 88, 0, 0,
+ 16, 0, 0, 0, 0, 0, 85, 85, 88, 0,
+ 0, 88, 88, 88, 0, 0, 0, 0, 88, 88,
+ 0, 0, 0, 88, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 16, 0, 0,
+ 0, 16, 16, 0, 16, 0, 0, 16, 0, 0,
+ 0, 0, 89, 89, 89, 89, 89, 89, 16, 16,
+ 89, 0, 0, 16, 0, 0, 0, 0, 0, 89,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 89, 0, 0, 89, 89, 89, 0, 0, 0, 0,
+ 89, 89, 0, 16, 16, 89, 0, 12, 13, 0,
+ 0, 0, 14, 15, 0, 0, 0, 0, 0, 0,
+ 0, 0, 16, 0, 16, 0, 17, 18, 19, 0,
+ 21, 0, 0, 16, 16, 22, 23, 24, 25, 0,
+ 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
+ 85, 85, 85, 85, 85, 85, 0, 0, 85, 0,
+ 0, 0, 0, 0, 0, 0, 0, 85, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 85, 0,
+ 0, 85, 85, 85, 0, 0, 12, 13, 85, 85,
+ 0, 14, 15, 85, 0, 0, 0, 0, 0, 0,
+ 0, 41, 0, 16, 0, 17, 18, 19, 53, 21,
+ 0, 0, 0, 0, 22, 23, 24, 25, 0, 0,
+ 0, 26, 0, 41, 30, 31, 32, 33, 0, 41,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 105, 53, 108, 0, 0, 0, 112,
+ 113, 0, 116, 118, 119, 0, 53, 53, 123, 124,
+ 41, 0, 0, 0, 0, 0, 0, 16, 16, 16,
+ 16, 16, 16, 0, 0, 16, 0, 0, 41, 138,
+ 139, 140, 141, 0, 16, 0, 0, 0, 0, 0,
+ 0, 0, 0, 41, 0, 16, 0, 0, 16, 16,
+ 16, 108, 0, 0, 0, 0, 0, 0, 160, 0,
+ 16, 0, 0, 0, 53, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 102, 103, 41, 41,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 199, 200, 0, 0, 202, 203, 204, 205, 207,
+ 133, 134, 135, 0, 209, 210, 0, 53, 53, 0,
+ 0, 0, 217, 0, 0, 0, 218, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 157,
+ 158, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 41, 41,
+ 254, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 266, 0, 267, 0,
+ 268, 0, 269, 0, 270, 0, 0, 0, 0, 272,
+ 0, 0, 0, 0, 273, 274, 0, 0, 0, 0,
+ 0, 211, 280, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 219, 0, 221, 0, 222, 0, 0, 0,
+ 0, 0, 41, 0, 0, 0, 0, 0, 0, 0,
+ 0, 66, 0, 0, 27, 0, 28, 243, 0, 41,
+ 0, 0, 0, 0, 0, 0, 0, 0, 57, 0,
+ 187, 0, 260, 261, 262, 263, 264, 0, 0, 68,
+ 68, 0, 71, 72, 0, 68, 0, 0, 0, 0,
+ 0, 0, 0, 68, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 68, 0, 0, 0, 0,
+ 0, 0, 0, 109, 0, 0, 109, 0, 109, 0,
+ 288, 0, 0, 0, 290, 291, 292, 0, 0, 0,
+ 297, 0, 109, 0, 185, 0, 0, 0, 0, 0,
+ 0, 0, 0, 68, 68, 68, 68, 68, 68, 68,
+ 0, 0, 0, 0, 0, 310, 311, 68, 0, 0,
+ 68, 315, 0, 0, 68, 68, 0, 0, 68, 0,
+ 68, 68, 0, 0, 0, 68, 68, 0, 0, 0,
+ 108, 0, 0, 108, 0, 108, 0, 0, 0, 0,
+ 68, 68, 68, 68, 0, 0, 109, 0, 109, 108,
+ 0, 0, 196, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 68, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 102, 0, 0, 102, 0,
+ 102, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 68, 0, 0, 0, 102, 0, 0, 68, 0, 0,
+ 0, 68, 68, 0, 68, 68, 68, 68, 0, 68,
+ 0, 68, 68, 108, 0, 108, 0, 0, 0, 68,
+ 68, 172, 125, 126, 12, 13, 0, 173, 174, 14,
+ 15, 175, 0, 176, 177, 0, 178, 179, 180, 181,
+ 182, 16, 183, 17, 18, 19, 0, 21, 184, 0,
+ 0, 0, 22, 23, 24, 25, 68, 0, 102, 26,
+ 102, 0, 30, 31, 32, 33, 0, 0, 68, 68,
+ 68, 68, 68, 0, 68, 68, 68, 0, 0, 0,
+ 0, 0, 68, 109, 0, 0, 109, 109, 0, 109,
+ 109, 109, 109, 109, 109, 109, 109, 0, 109, 109,
+ 109, 109, 109, 109, 109, 109, 109, 109, 0, 109,
+ 109, 0, 0, 0, 109, 109, 109, 109, 0, 0,
+ 0, 109, 0, 0, 109, 109, 109, 109, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 108, 0, 0, 108, 108, 0, 108, 108, 108, 108,
+ 108, 108, 108, 108, 0, 108, 108, 108, 108, 108,
+ 108, 108, 108, 108, 108, 0, 108, 108, 0, 0,
+ 0, 108, 108, 108, 108, 0, 0, 0, 108, 0,
+ 0, 108, 108, 108, 108, 102, 0, 0, 102, 102,
+ 0, 102, 102, 102, 102, 102, 102, 102, 102, 0,
+ 102, 102, 102, 102, 102, 102, 102, 102, 102, 102,
+ 0, 102, 102, 0, 0, 0, 102, 102, 102, 102,
+ 0, 0, 0, 102, 0, 0, 102, 102, 102, 102,
+ 103, 0, 0, 103, 0, 103, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 103,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 104, 0, 0, 104, 0,
+ 104, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 104, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 103, 0, 103, 0, 0, 0, 0,
+ 101, 0, 0, 101, 0, 101, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 101,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 104, 0,
+ 104, 0, 0, 0, 0, 0, 107, 0, 0, 107,
+ 0, 107, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 107, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 101, 0, 101, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 35, 0, 0, 27, 0, 28, 0, 0, 0, 107,
+ 103, 107, 0, 103, 103, 0, 103, 103, 103, 103,
+ 103, 103, 103, 103, 0, 103, 103, 103, 103, 103,
+ 103, 103, 103, 103, 103, 0, 103, 103, 0, 0,
+ 0, 103, 103, 103, 103, 0, 0, 0, 103, 0,
+ 0, 103, 103, 103, 103, 104, 0, 0, 104, 104,
+ 0, 104, 104, 104, 104, 104, 104, 104, 104, 0,
+ 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
+ 0, 104, 104, 34, 0, 0, 104, 104, 104, 104,
+ 0, 0, 0, 104, 0, 0, 104, 104, 104, 104,
+ 101, 0, 0, 101, 101, 0, 101, 101, 101, 101,
+ 101, 101, 101, 101, 0, 101, 101, 101, 101, 101,
+ 101, 101, 101, 101, 101, 35, 101, 101, 27, 0,
+ 28, 101, 101, 101, 101, 0, 0, 0, 101, 0,
+ 0, 101, 101, 101, 101, 0, 107, 0, 0, 107,
+ 107, 0, 107, 107, 107, 107, 107, 107, 107, 107,
+ 0, 107, 107, 107, 107, 107, 107, 107, 107, 107,
+ 107, 0, 107, 107, 0, 0, 0, 107, 107, 107,
+ 107, 0, 0, 0, 107, 0, 0, 107, 107, 107,
+ 107, 136, 0, 0, 136, 0, 136, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 136, 0, 0, 0, 0, 0, 0, 9, 10, 11,
+ 0, 0, 0, 12, 13, 0, 0, 0, 14, 15,
+ 0, 0, 0, 0, 0, 0, 66, 0, 0, 27,
+ 16, 28, 17, 18, 19, 20, 21, 0, 0, 0,
+ 0, 22, 23, 24, 25, 187, 0, 0, 26, 0,
+ 29, 30, 31, 32, 33, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 136, 0, 136, 0, 0, 0,
+ 0, 66, 0, 0, 27, 0, 28, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 187, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 0, 186, 0, 0, 0, 0, 0, 66, 0, 0,
+ 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 11, 0, 187, 0, 12, 13,
+ 0, 0, 0, 14, 15, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 16, 197, 17, 18, 19,
+ 0, 21, 0, 0, 0, 0, 22, 23, 24, 25,
+ 0, 0, 0, 26, 0, 29, 30, 31, 32, 33,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 35, 0, 0, 27, 0, 28, 0, 0, 0,
+ 185, 136, 198, 0, 136, 136, 0, 136, 136, 136,
+ 136, 136, 136, 136, 136, 0, 136, 136, 136, 136,
+ 136, 136, 136, 136, 136, 136, 0, 136, 136, 0,
+ 0, 0, 136, 136, 136, 136, 0, 0, 0, 136,
+ 0, 0, 136, 136, 136, 136, 172, 0, 0, 12,
+ 13, 0, 173, 174, 14, 15, 175, 0, 176, 177,
+ 0, 178, 179, 180, 181, 182, 16, 183, 17, 18,
+ 19, 0, 21, 184, 0, 0, 0, 22, 23, 24,
+ 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
+ 33, 172, 0, 0, 12, 13, 0, 173, 174, 14,
+ 15, 175, 0, 176, 177, 0, 178, 179, 180, 181,
+ 182, 16, 183, 17, 18, 19, 107, 21, 184, 27,
+ 0, 28, 22, 23, 24, 25, 0, 0, 0, 26,
+ 0, 0, 30, 31, 32, 33, 0, 172, 0, 0,
+ 12, 13, 0, 173, 174, 14, 15, 175, 0, 176,
+ 177, 0, 178, 179, 180, 181, 182, 16, 183, 17,
+ 18, 19, 0, 21, 184, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 66, 0, 0, 27, 0, 28, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 187, 0, 0, 0, 0, 0, 0, 0, 0,
+ 11, 0, 125, 126, 12, 13, 0, 0, 0, 14,
+ 15, 0, 0, 0, 0, 0, 0, 66, 0, 0,
+ 27, 16, 28, 17, 18, 19, 0, 21, 0, 0,
+ 0, 0, 22, 23, 24, 25, 187, 0, 0, 26,
+ 0, 29, 30, 31, 32, 33, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 0, 228, 0, 0,
+ 0, 0, 66, 0, 0, 27, 0, 28, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 187, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 0, 281, 0, 0, 0, 0, 0, 106, 0,
+ 0, 106, 0, 106, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 11, 0, 106, 0, 12,
+ 13, 0, 0, 0, 14, 15, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 16, 305, 17, 18,
+ 19, 0, 21, 0, 0, 0, 0, 22, 23, 24,
+ 25, 0, 0, 0, 26, 0, 29, 30, 31, 32,
+ 33, 66, 239, 0, 27, 240, 28, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 106, 172, 106, 0, 12, 13, 0, 173, 174,
+ 14, 15, 175, 0, 176, 177, 0, 178, 179, 180,
+ 181, 182, 16, 183, 17, 18, 19, 0, 21, 184,
+ 0, 0, 0, 22, 23, 24, 25, 0, 0, 0,
+ 26, 0, 0, 30, 31, 32, 33, 172, 0, 0,
+ 12, 13, 0, 173, 174, 14, 15, 175, 0, 176,
+ 177, 0, 178, 179, 180, 181, 182, 16, 183, 17,
+ 18, 19, 66, 21, 184, 27, 110, 28, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 172, 0, 0, 12, 13, 0, 173, 174,
+ 14, 15, 175, 0, 176, 177, 0, 178, 179, 180,
+ 181, 182, 16, 183, 17, 18, 19, 0, 21, 184,
+ 0, 0, 0, 22, 23, 24, 25, 0, 0, 0,
+ 26, 0, 0, 30, 31, 32, 33, 0, 106, 0,
+ 0, 106, 106, 0, 106, 106, 106, 106, 106, 0,
+ 106, 106, 0, 106, 106, 106, 106, 106, 106, 106,
+ 106, 106, 106, 0, 106, 106, 0, 0, 0, 106,
+ 106, 106, 106, 0, 0, 0, 106, 0, 0, 106,
+ 106, 106, 106, 129, 0, 0, 129, 0, 129, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 129, 0, 12, 13, 0, 0, 0, 14,
+ 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
+ 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
+ 0, 0, 30, 31, 32, 33, 66, 244, 0, 27,
+ 245, 28, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 129, 0, 129, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 66, 104,
+ 0, 27, 0, 28, 0, 12, 13, 0, 0, 0,
+ 14, 15, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
+ 0, 0, 0, 22, 23, 24, 25, 0, 0, 0,
+ 26, 0, 0, 30, 31, 32, 33, 66, 0, 0,
+ 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 66, 0, 0, 27, 0, 28, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 129, 0, 0, 129, 129, 0, 129,
+ 129, 129, 129, 129, 0, 129, 129, 0, 129, 129,
+ 129, 129, 129, 129, 129, 129, 129, 129, 0, 129,
+ 129, 0, 0, 0, 129, 129, 129, 129, 0, 0,
+ 0, 129, 0, 0, 129, 129, 129, 129, 66, 0,
+ 0, 27, 0, 28, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,
+ 13, 0, 0, 0, 14, 15, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 16, 0, 17, 18,
+ 19, 0, 21, 0, 0, 0, 0, 22, 23, 24,
+ 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
+ 33, 12, 13, 0, 0, 0, 14, 15, 66, 154,
+ 0, 27, 0, 28, 0, 0, 0, 0, 16, 0,
+ 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
+ 23, 24, 25, 0, 0, 0, 26, 0, 0, 30,
+ 31, 32, 33, 0, 0, 0, 115, 0, 0, 0,
+ 12, 13, 0, 0, 66, 14, 15, 27, 159, 28,
+ 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
+ 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 117, 0, 0, 0, 12, 13, 0, 0,
+ 66, 14, 15, 27, 162, 28, 0, 0, 0, 0,
+ 0, 0, 0, 16, 0, 17, 18, 19, 0, 21,
+ 0, 0, 0, 0, 22, 23, 24, 25, 0, 0,
+ 0, 26, 0, 0, 30, 31, 32, 33, 0, 0,
+ 0, 0, 66, 0, 0, 27, 164, 28, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 137, 0, 0,
+ 0, 12, 13, 0, 0, 0, 14, 15, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 16, 0,
+ 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
+ 23, 24, 25, 0, 0, 0, 26, 0, 0, 30,
+ 31, 32, 33, 66, 0, 0, 27, 165, 28, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 12, 13, 0, 0, 0, 14, 15, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 16, 0,
+ 17, 18, 19, 66, 21, 0, 27, 170, 28, 22,
+ 23, 24, 25, 0, 0, 0, 26, 0, 0, 30,
+ 31, 32, 33, 0, 0, 0, 0, 12, 13, 0,
+ 0, 0, 14, 15, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 16, 0, 17, 18, 19, 66,
+ 21, 0, 27, 171, 28, 22, 23, 24, 25, 0,
+ 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
+ 0, 0, 0, 12, 13, 0, 0, 0, 14, 15,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 16, 0, 17, 18, 19, 66, 21, 0, 27, 0,
+ 28, 22, 23, 24, 25, 0, 0, 0, 26, 0,
+ 0, 30, 31, 32, 33, 12, 13, 0, 0, 0,
+ 14, 15, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
+ 0, 0, 0, 22, 23, 24, 25, 0, 0, 0,
+ 26, 0, 0, 30, 31, 32, 33, 66, 242, 0,
+ 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 12, 13, 0, 0,
+ 0, 14, 15, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 16, 0, 17, 18, 19, 0, 21,
+ 0, 0, 0, 0, 22, 23, 24, 25, 0, 0,
+ 0, 26, 0, 0, 30, 31, 32, 33, 66, 246,
+ 0, 27, 0, 28, 0, 0, 12, 13, 0, 0,
+ 0, 14, 15, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 16, 0, 17, 18, 19, 0, 21,
+ 0, 0, 0, 0, 22, 23, 24, 25, 0, 0,
+ 0, 26, 0, 0, 30, 31, 32, 33, 0, 0,
+ 0, 66, 12, 13, 27, 0, 28, 14, 15, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
+ 0, 17, 18, 19, 0, 21, 0, 0, 0, 0,
+ 22, 23, 24, 25, 0, 0, 0, 26, 0, 0,
+ 30, 31, 32, 33, 206, 0, 0, 0, 12, 13,
+ 0, 0, 0, 14, 15, 66, 277, 0, 27, 0,
+ 28, 0, 0, 0, 0, 16, 0, 17, 18, 19,
+ 0, 21, 0, 0, 0, 0, 22, 23, 24, 25,
+ 0, 0, 0, 26, 0, 0, 30, 31, 32, 33,
+ 0, 0, 0, 0, 0, 0, 0, 66, 283, 0,
+ 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
+ 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
+ 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 66, 284, 0, 27, 0, 28, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 12, 13, 0, 0, 0, 14, 15, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 16, 0,
+ 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
+ 23, 24, 25, 0, 0, 0, 26, 0, 0, 30,
+ 31, 32, 33, 66, 285, 0, 27, 0, 28, 0,
+ 265, 0, 0, 0, 12, 13, 0, 0, 0, 14,
+ 15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
+ 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
+ 0, 0, 30, 31, 32, 33, 66, 286, 0, 27,
+ 0, 28, 0, 0, 0, 0, 0, 0, 12, 13,
+ 0, 0, 0, 14, 15, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 16, 0, 17, 18, 19,
+ 0, 21, 0, 0, 0, 0, 22, 23, 24, 25,
+ 0, 0, 0, 26, 0, 0, 30, 31, 32, 33,
+ 12, 13, 0, 0, 0, 14, 15, 66, 287, 0,
+ 27, 0, 28, 0, 0, 0, 0, 16, 0, 17,
+ 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 0, 0, 0, 0, 0, 0, 0, 66,
+ 289, 0, 27, 0, 28, 12, 13, 0, 0, 0,
+ 14, 15, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
+ 0, 0, 0, 22, 23, 24, 25, 0, 0, 0,
+ 26, 0, 0, 30, 31, 32, 33, 66, 0, 0,
+ 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 12, 13, 0, 0,
+ 0, 14, 15, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 16, 0, 17, 18, 19, 0, 21,
+ 0, 0, 0, 0, 22, 23, 24, 25, 0, 0,
+ 296, 26, 0, 0, 30, 31, 32, 33, 51, 0,
+ 0, 27, 0, 28, 0, 0, 0, 0, 0, 12,
+ 13, 0, 0, 0, 14, 15, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 16, 0, 17, 18,
+ 19, 0, 21, 0, 0, 0, 0, 22, 23, 24,
+ 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
+ 33, 66, 0, 0, 27, 0, 28, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
+ 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 12, 13, 0, 0, 0, 14, 15, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
+ 0, 17, 18, 19, 0, 21, 0, 0, 0, 0,
+ 22, 23, 24, 25, 0, 0, 0, 26, 0, 0,
+ 30, 31, 32, 33, 0, 0, 0, 0, 0, 0,
+ 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
+ 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 12, 13, 0, 0, 0, 14, 15, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 16, 0,
+ 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
+ 23, 24, 25, 0, 0, 0, 26, 67, 69, 30,
+ 31, 32, 33, 73, 0, 0, 0, 0, 0, 0,
+ 0, 89, 0, 0, 12, 13, 0, 0, 0, 14,
+ 15, 0, 0, 89, 0, 0, 0, 0, 0, 0,
+ 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
+ 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
+ 0, 0, 30, 31, 32, 33, 0, 0, 0, 0,
+ 0, 143, 144, 145, 146, 147, 148, 149, 0, 0,
+ 0, 0, 0, 0, 0, 89, 0, 0, 89, 0,
+ 0, 0, 89, 89, 0, 0, 89, 0, 89, 89,
+ 0, 0, 0, 89, 89, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 89, 89,
+ 89, 89, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 89, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 89, 0,
+ 0, 0, 0, 0, 0, 229, 0, 0, 0, 89,
+ 89, 0, 89, 89, 89, 89, 0, 89, 0, 89,
+ 89, 0, 0, 0, 0, 0, 0, 89, 89, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 89, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 89, 89, 89, 89,
+ 89, 0, 89, 89, 89, 0, 0, 0, 0, 0,
+ 89,
+};
+short yycheck[] = { 7,
+ 0, 41, 44, 41, 37, 41, 59, 41, 123, 42,
+ 43, 41, 45, 59, 47, 35, 59, 38, 41, 51,
+ 94, 29, 293, 62, 123, 58, 102, 103, 40, 59,
+ 63, 35, 303, 35, 301, 302, 123, 37, 112, 292,
+ 40, 41, 42, 43, 44, 45, 40, 47, 219, 40,
+ 303, 304, 41, 288, 216, 0, 40, 133, 58, 59,
+ 60, 94, 62, 63, 40, 60, 301, 302, 50, 41,
+ 59, 41, 44, 62, 44, 107, 84, 261, 262, 112,
+ 62, 63, 289, 290, 40, 124, 41, 107, 289, 290,
+ 286, 99, 37, 93, 94, 91, 41, 42, 43, 44,
+ 45, 40, 47, 107, 59, 107, 261, 41, 289, 290,
+ 0, 41, 112, 58, 59, 60, 40, 62, 63, 290,
+ 291, 292, 40, 123, 124, 59, 134, 135, 44, 59,
+ 123, 293, 289, 290, 60, 124, 40, 112, 120, 310,
+ 311, 303, 41, 41, 315, 221, 41, 37, 93, 94,
+ 40, 41, 42, 43, 37, 45, 41, 47, 292, 42,
+ 43, 59, 45, 280, 47, 41, 41, 112, 58, 59,
+ 60, 44, 62, 63, 261, 262, 197, 44, 123, 124,
+ 63, 41, 93, 292, 59, 41, 40, 40, 40, 292,
+ 290, 173, 174, 41, 91, 59, 41, 272, 40, 271,
+ 41, 41, 0, 93, 94, 40, 214, 215, 43, 44,
+ 45, 94, 288, 41, 260, 261, 262, 260, 261, 262,
+ 59, 93, 112, 59, 41, 60, 265, 62, 213, 112,
+ 260, 261, 262, 123, 124, -1, 289, 290, -1, -1,
+ -1, 274, -1, -1, -1, -1, -1, 289, 290, 289,
+ 290, 289, 290, 289, 290, 289, 290, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 289, 290, 268, 269,
+ 278, 260, 261, 262, 274, -1, 265, -1, -1, -1,
+ 280, 41, 282, 283, 284, 285, 286, 295, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 292, 298, 59,
+ 300, 301, 302, 303, 304, 260, 261, 262, 303, 304,
+ -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, -1, -1, 268, 269, -1, 260, 261, 262, 274,
+ 260, 261, 262, -1, -1, 280, 41, 282, 283, 284,
+ 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, -1, 298, 59, 300, 301, 302, 303, 304,
+ -1, -1, 260, 261, 262, -1, -1, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
+ 0, -1, -1, -1, 274, 260, 261, 262, -1, -1,
+ 280, 274, 282, 283, 284, 285, 286, 41, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, -1, 298, -1,
+ 300, 301, 302, 303, 304, 59, -1, 37, -1, -1,
+ 40, 41, 42, 43, 44, 45, -1, 47, 263, 264,
+ -1, 37, -1, 268, 269, 0, 42, -1, 58, 59,
+ -1, 47, 62, 63, -1, 280, -1, 282, 283, 284,
+ -1, 286, -1, -1, -1, -1, 291, 292, 293, 294,
+ 295, 296, -1, 298, -1, -1, 301, 302, 303, 304,
+ -1, -1, 37, 93, 94, 40, 41, 42, 43, 44,
+ 45, -1, 47, -1, -1, -1, -1, -1, 94, -1,
+ 0, -1, 112, 58, 59, 60, -1, 62, 63, -1,
+ 260, 261, 262, 123, 124, -1, 112, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 37, 93, 94,
+ 40, 41, 42, 43, 44, 45, -1, 47, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
+ 60, -1, 62, 63, -1, 260, 261, 262, 123, 124,
+ -1, -1, -1, 0, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 93, 94, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 37, -1, 112, 40, 41, 42, 43, 44, 45, -1,
+ 47, -1, -1, 123, 124, -1, 260, 261, 262, -1,
+ -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
+ -1, -1, -1, -1, 274, -1, 93, -1, -1, -1,
+ 280, -1, 282, 283, 284, 285, 286, -1, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, -1, 298, -1,
+ 300, 301, 302, 303, 304, -1, 123, 124, -1, -1,
+ -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, -1, -1, 268, 269, -1, -1, -1, -1, 274,
+ -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
+ 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, -1, 298, -1, 300, 301, 302, 303, 304,
+ -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
+ -1, -1, -1, -1, 274, -1, -1, -1, -1, -1,
+ 280, -1, 282, 283, 284, 285, 286, -1, 288, 289,
+ -1, 291, 292, 293, 294, 295, 296, -1, 298, -1,
+ 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
+ -1, 268, 269, 0, -1, -1, -1, 274, -1, -1,
+ -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
+ -1, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ -1, 298, -1, 300, 301, 302, 303, 304, -1, -1,
+ 37, -1, -1, 40, 41, 42, 43, 44, 45, -1,
+ 47, -1, -1, -1, -1, -1, -1, -1, 0, -1,
+ -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 37, 93, 94, 40, 41,
+ 42, 43, 44, 45, -1, 47, -1, -1, -1, -1,
+ -1, -1, 0, -1, -1, 112, 58, 59, 60, -1,
+ 62, 63, -1, -1, -1, -1, 123, 124, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 37,
+ -1, 93, 40, 41, 42, 43, 44, 45, -1, 47,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 58, 59, 60, -1, 62, 63, -1, -1, -1, -1,
+ -1, 123, 124, -1, -1, 0, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 93, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 37, -1, -1, 40, 41, 42, 43, 44,
+ 45, -1, 47, -1, -1, 123, 124, -1, -1, -1,
+ -1, -1, -1, 58, 59, 60, -1, 62, 63, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
+ -1, 268, 269, -1, -1, -1, -1, 274, 93, -1,
+ -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
+ -1, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ -1, 298, -1, 300, -1, -1, 303, 304, 123, 124,
+ -1, -1, -1, -1, -1, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, -1, -1, 268, 269, -1, -1,
+ -1, -1, 274, -1, -1, -1, -1, -1, 280, -1,
+ 282, 283, 284, 285, 286, -1, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, -1, 298, -1, 300, 301,
+ 302, 303, 304, -1, -1, -1, -1, -1, -1, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 0, -1,
+ 268, 269, -1, -1, -1, -1, 274, -1, -1, -1,
+ -1, -1, 280, -1, 282, 283, 284, 285, 286, -1,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, -1,
+ 298, -1, 300, 301, 302, 303, 304, -1, 40, -1,
+ -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
+ -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, -1, -1, 268, 269, 0, -1, -1, -1, 274,
+ -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
+ 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, -1, 298, -1, 300, 301, 302, 303, 304,
+ -1, -1, 37, -1, -1, 40, 41, 42, 43, 44,
+ 45, 123, 47, -1, -1, -1, -1, -1, -1, 0,
+ -1, -1, -1, 58, 59, 60, -1, 62, 63, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 37, -1, 93, 40,
+ 41, 42, 43, 44, 45, -1, 47, -1, -1, -1,
+ -1, -1, -1, 0, -1, -1, -1, 58, 59, 60,
+ -1, 62, 63, -1, -1, -1, -1, -1, 123, 124,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 37, -1, 93, 40, 41, 42, 43, 44, 45, -1,
+ 47, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
+ -1, -1, 123, 124, -1, 257, 258, 259, 260, 261,
+ 262, 263, 264, -1, -1, -1, 268, 269, -1, -1,
+ -1, -1, -1, -1, -1, -1, 93, 94, 280, -1,
+ 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
+ 292, 293, 294, -1, -1, 112, 298, -1, 300, 301,
+ 302, 303, 304, -1, -1, -1, 123, 124, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, -1, -1, 268, 269, -1, -1, -1, -1, 274,
+ -1, 40, -1, -1, 43, 280, 45, 282, 283, 284,
+ 285, 286, -1, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, -1, 298, -1, 300, 301, 302, 303, 304,
+ -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, -1, -1, 268, 269, -1,
+ -1, -1, -1, 274, -1, -1, -1, -1, -1, 280,
+ -1, 282, 283, 284, 285, 286, -1, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, -1, 298, -1, 300,
+ 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
+ -1, 268, 269, 0, 60, -1, 62, 274, -1, -1,
+ -1, -1, -1, 280, -1, 282, 283, 284, 285, 286,
+ -1, 288, -1, -1, 291, 292, 293, 294, 295, 296,
+ -1, 298, -1, 300, 301, 302, 303, 304, -1, -1,
+ 37, -1, -1, 40, 41, 42, 43, 44, 45, -1,
+ 47, -1, -1, -1, -1, -1, -1, -1, 0, -1,
+ -1, 58, 59, 60, -1, 62, 63, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 93, 94, 40, 41,
+ -1, 43, 44, 45, -1, -1, -1, -1, -1, 0,
+ -1, -1, -1, -1, -1, 112, 58, 59, 60, -1,
+ 62, 63, -1, -1, 263, 264, 123, 124, -1, 268,
+ 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 280, -1, 282, 283, 284, -1, 286, -1, 40,
+ 41, 93, 43, 44, 45, -1, -1, 0, -1, 298,
+ -1, -1, 301, 302, 303, 304, -1, 58, 59, 60,
+ -1, 62, 63, -1, -1, -1, -1, -1, -1, -1,
+ -1, 123, 124, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 40, 41, -1,
+ -1, 44, 93, -1, -1, -1, -1, 263, 264, -1,
+ -1, -1, 268, 269, -1, 58, 59, 60, -1, 62,
+ -1, -1, -1, -1, 280, -1, 282, 283, 284, -1,
+ 286, -1, 123, 124, -1, 291, 292, 293, 294, 295,
+ 296, -1, 298, -1, -1, 301, 302, 303, 304, -1,
+ 93, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
+ -1, 268, 269, -1, -1, -1, -1, 274, -1, -1,
+ 123, 124, -1, 280, -1, 282, 283, 284, 285, 286,
+ -1, -1, 289, 290, 291, 292, 293, 294, 295, 296,
+ -1, 298, -1, 300, -1, -1, 303, 304, -1, -1,
+ -1, -1, -1, -1, -1, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, -1, -1, 268, 269, -1, -1,
+ -1, -1, 274, -1, -1, -1, -1, -1, 280, -1,
+ 282, 283, 284, 285, 286, -1, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, -1, 298, -1, 300, 301,
+ 302, 303, 304, -1, -1, -1, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, -1, -1, 268, 269, -1,
+ -1, -1, -1, 274, -1, -1, -1, -1, -1, 280,
+ -1, 282, 283, 284, 285, 286, -1, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, -1, 298, -1, 300,
+ 301, 302, 303, 304, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 0, -1, 268, 269, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
+ 283, 284, 285, 286, -1, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, -1, 298, -1, 300, 301, 302,
+ 303, 304, -1, 40, 41, -1, -1, 44, -1, -1,
+ -1, 0, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 58, 59, 60, -1, 62, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 40, 41, -1, -1, 44, 93, -1, -1, -1,
+ 0, -1, -1, -1, -1, -1, -1, -1, -1, 58,
+ 59, 60, -1, 62, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 123, 124, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, 43, 93, 45, -1, -1, -1, -1,
+ 0, -1, -1, -1, -1, -1, -1, -1, -1, 59,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 123, 124, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, 43, -1, 45, -1, -1, 0, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 123, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
+ -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 59, -1, -1,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
+ -1, 268, 269, 123, -1, -1, -1, -1, -1, -1,
+ -1, -1, 0, 280, -1, 282, 283, 284, 285, 286,
+ -1, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ -1, 298, -1, 300, 301, 302, 303, 304, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, -1, -1, 268,
+ 269, -1, 40, -1, -1, 43, -1, 45, -1, -1,
+ -1, 280, -1, 282, 283, 284, 285, 286, -1, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, -1, 298,
+ -1, 300, 301, 302, 303, 304, -1, 257, 258, 259,
+ 260, 261, 262, 263, 264, -1, -1, 40, 268, 269,
+ 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
+ 280, 0, 282, 283, 284, 285, 286, -1, -1, -1,
+ -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
+ 300, 301, 302, 303, 304, 123, -1, 257, 258, 259,
+ 260, -1, 262, 263, 264, -1, -1, -1, 268, 269,
+ -1, 40, -1, -1, 43, -1, 45, -1, -1, 0,
+ 280, -1, 282, 283, 284, 285, 286, -1, -1, -1,
+ -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
+ 300, 301, 302, 303, 304, 257, 258, 259, 260, 261,
+ 262, 263, 264, -1, -1, -1, 268, 269, -1, 40,
+ -1, -1, 43, -1, 45, -1, -1, -1, 280, -1,
+ 282, 283, 284, 285, 286, -1, -1, -1, -1, 291,
+ 292, 293, 294, -1, -1, -1, 298, -1, 300, 301,
+ 302, 303, 304, -1, 123, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 40, 41, -1, 43, 44, 45,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
+ 258, 259, -1, -1, -1, 263, 264, -1, -1, -1,
+ 268, 269, 123, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 280, -1, 282, 283, 284, 285, 286, -1,
+ -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
+ 298, -1, 300, 301, 302, 303, 304, -1, -1, -1,
+ 263, 264, -1, 266, 267, 268, 269, -1, -1, -1,
+ -1, -1, 275, 276, 277, 278, 279, 280, -1, 282,
+ 283, 284, -1, 286, 287, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, -1, -1, -1, -1, -1, -1, 257, 258,
+ 259, -1, -1, -1, 263, 264, -1, -1, -1, 268,
+ 269, -1, -1, -1, -1, -1, -1, 40, -1, -1,
+ 43, 280, 45, 282, 283, 284, 285, 286, -1, -1,
+ -1, -1, 291, 292, 293, 294, 59, -1, -1, 298,
+ -1, 300, 301, 302, 303, 304, 257, 258, 259, -1,
+ -1, -1, 263, 264, -1, -1, -1, 268, 269, 0,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
+ -1, 282, 283, 284, 285, 286, -1, -1, -1, -1,
+ 291, 292, 293, 294, -1, -1, -1, 298, -1, 300,
+ 301, 302, 303, 304, -1, -1, 37, -1, -1, 40,
+ 41, 42, 43, 44, 45, -1, 47, 263, 264, -1,
+ -1, -1, 268, 269, 0, -1, -1, 58, 59, 60,
+ -1, 62, 63, -1, 280, -1, 282, 283, 284, -1,
+ 286, -1, -1, -1, -1, 291, 292, 293, 294, -1,
+ -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
+ -1, 37, 93, 94, 40, 41, 42, 43, 44, 45,
+ -1, 47, 0, -1, -1, -1, -1, -1, -1, -1,
+ -1, 112, 58, 59, -1, -1, 62, 63, -1, -1,
+ -1, -1, 123, 124, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 37,
+ -1, -1, -1, 41, 42, -1, 44, 93, 94, 47,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 58, 59, 60, -1, 62, 63, 112, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 259, 123, 124, -1,
+ 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
+ -1, -1, -1, -1, -1, 93, 94, 280, -1, 282,
+ 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, 112, 298, -1, 300, 301, 302,
+ 303, 304, -1, -1, -1, 123, 124, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, -1, -1, 268, 269, -1,
+ -1, -1, -1, 274, -1, -1, -1, -1, -1, 280,
+ -1, 282, 283, 284, 285, 286, -1, 288, 289, 290,
+ 291, -1, 293, 294, 295, 296, -1, 298, -1, 300,
+ 301, 302, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ -1, -1, 268, 269, -1, -1, -1, -1, 274, -1,
+ -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
+ 286, 0, 288, 289, 290, 291, -1, 293, 294, 295,
+ 296, -1, 298, -1, 300, 301, 302, -1, -1, 257,
+ 258, 259, 260, 261, 262, -1, -1, 265, -1, -1,
+ -1, -1, -1, -1, -1, -1, 274, -1, 37, -1,
+ -1, -1, 41, 42, -1, 44, 0, 285, 47, -1,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 58,
+ 59, 60, 300, 62, 63, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 37, -1, -1, -1, 41, 42, -1,
+ 44, 0, -1, 47, 93, 94, -1, -1, -1, -1,
+ -1, -1, -1, -1, 58, 59, 60, -1, 62, 63,
+ -1, -1, -1, 112, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 123, 124, -1, -1, 37, -1,
+ -1, -1, 41, 42, -1, 44, -1, -1, 47, 93,
+ 94, -1, -1, -1, -1, -1, -1, -1, -1, 58,
+ 59, 60, -1, 62, 63, -1, -1, -1, 112, -1,
+ 0, -1, -1, -1, -1, -1, -1, -1, -1, 123,
+ 124, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 93, 94, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 37, -1, -1,
+ -1, 41, 42, 112, 44, -1, -1, 47, -1, -1,
+ -1, -1, -1, -1, 123, 124, -1, -1, 58, 59,
+ 60, -1, 62, 63, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 93, 94, -1, -1, -1, 257, 258,
+ 259, 260, 261, 262, -1, -1, 265, -1, -1, -1,
+ -1, -1, 112, -1, -1, 274, -1, -1, -1, -1,
+ -1, -1, -1, 123, 124, -1, 285, -1, -1, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, -1, -1,
+ -1, 300, -1, 257, 258, 259, 260, 261, 262, -1,
+ 40, 265, -1, 43, -1, 45, -1, -1, -1, -1,
+ 274, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 285, -1, -1, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, -1, -1, -1, 300, -1, 257, 258,
+ 259, 260, 261, 262, -1, -1, 265, -1, -1, -1,
+ -1, -1, -1, -1, -1, 274, -1, -1, 0, -1,
+ -1, -1, -1, -1, -1, -1, 285, -1, -1, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, -1, -1,
+ -1, 300, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 37, -1, -1, -1, 41,
+ 42, -1, 44, -1, -1, 47, -1, 257, 258, 259,
+ 260, 261, 262, -1, -1, 265, 58, 59, 60, -1,
+ 62, 63, -1, -1, 274, 0, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 285, -1, -1, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, -1, -1, -1,
+ 300, 93, 94, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 37, -1, -1, -1, 41, 42, -1, 44,
+ 112, -1, 47, 0, -1, -1, -1, -1, -1, -1,
+ -1, 123, 124, 58, 59, 60, -1, 62, 63, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 37, -1, -1, -1, 41, 42, -1, 44, 93, 94,
+ 47, 261, 262, 263, 264, -1, -1, -1, 268, 269,
+ -1, 58, 59, 60, -1, 62, 63, 112, -1, -1,
+ 280, -1, 282, 283, 284, 0, 286, -1, 123, 124,
+ -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
+ -1, 301, 302, 303, 304, -1, 93, 94, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 37, -1, -1, 112, 41, 42, -1, 44,
+ -1, -1, 47, -1, -1, -1, 123, 124, -1, -1,
+ -1, -1, -1, 58, 59, 60, -1, 62, 63, -1,
+ -1, -1, -1, -1, -1, 257, 258, 259, 260, 261,
+ 262, -1, -1, 265, 40, 41, -1, 43, 44, 45,
+ -1, -1, 274, 0, -1, -1, -1, -1, 93, 94,
+ -1, -1, -1, 285, -1, -1, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, -1, -1, 112, 300, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 123, 124,
+ 37, -1, -1, -1, 41, 42, -1, -1, -1, -1,
+ 47, -1, 257, 258, 259, 260, 261, 262, -1, -1,
+ 265, 58, 59, 60, -1, 62, 63, -1, -1, 274,
+ -1, -1, -1, 40, 41, -1, 43, 44, 45, -1,
+ 285, -1, -1, 288, 289, 290, -1, -1, -1, -1,
+ 295, 296, -1, -1, -1, 300, 93, 94, -1, -1,
+ 257, 258, 259, 260, 261, 262, -1, -1, 265, -1,
+ -1, -1, -1, -1, -1, 112, -1, 274, -1, -1,
+ 0, -1, -1, -1, -1, -1, 123, 124, 285, -1,
+ -1, 288, 289, 290, -1, -1, -1, -1, 295, 296,
+ -1, -1, -1, 300, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 37, -1, -1,
+ -1, 41, 42, -1, 44, -1, -1, 47, -1, -1,
+ -1, -1, 257, 258, 259, 260, 261, 262, 58, 59,
+ 265, -1, -1, 63, -1, -1, -1, -1, -1, 274,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 285, -1, -1, 288, 289, 290, -1, -1, -1, -1,
+ 295, 296, -1, 93, 94, 300, -1, 263, 264, -1,
+ -1, -1, 268, 269, -1, -1, -1, -1, -1, -1,
+ -1, -1, 112, -1, 280, -1, 282, 283, 284, -1,
+ 286, -1, -1, 123, 124, 291, 292, 293, 294, -1,
+ -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
+ 257, 258, 259, 260, 261, 262, -1, -1, 265, -1,
+ -1, -1, -1, -1, -1, -1, -1, 274, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 285, -1,
+ -1, 288, 289, 290, -1, -1, 263, 264, 295, 296,
+ -1, 268, 269, 300, -1, -1, -1, -1, -1, -1,
+ -1, 7, -1, 280, -1, 282, 283, 284, 14, 286,
+ -1, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ -1, 298, -1, 29, 301, 302, 303, 304, -1, 35,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 49, 50, 51, -1, -1, -1, 55,
+ 56, -1, 58, 59, 60, -1, 62, 63, 64, 65,
+ 66, -1, -1, -1, -1, -1, -1, 257, 258, 259,
+ 260, 261, 262, -1, -1, 265, -1, -1, 84, 85,
+ 86, 87, 88, -1, 274, -1, -1, -1, -1, -1,
+ -1, -1, -1, 99, -1, 285, -1, -1, 288, 289,
+ 290, 107, -1, -1, -1, -1, -1, -1, 114, -1,
+ 300, -1, -1, -1, 120, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 47, 48, 134, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 157, 158, -1, -1, 161, 162, 163, 164, 165,
+ 81, 82, 83, -1, 170, 171, -1, 173, 174, -1,
+ -1, -1, 178, -1, -1, -1, 182, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 110,
+ 111, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 214, 215,
+ 216, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 232, -1, 234, -1,
+ 236, -1, 238, -1, 240, -1, -1, -1, -1, 245,
+ -1, -1, -1, -1, 250, 251, -1, -1, -1, -1,
+ -1, 172, 258, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 183, -1, 185, -1, 187, -1, -1, -1,
+ -1, -1, 278, -1, -1, -1, -1, -1, -1, -1,
+ -1, 40, -1, -1, 43, -1, 45, 208, -1, 295,
+ -1, -1, -1, -1, -1, -1, -1, -1, 16, -1,
+ 59, -1, 223, 224, 225, 226, 227, -1, -1, 27,
+ 28, -1, 30, 31, -1, 33, -1, -1, -1, -1,
+ -1, -1, -1, 41, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 53, -1, -1, -1, -1,
+ -1, -1, -1, 40, -1, -1, 43, -1, 45, -1,
+ 271, -1, -1, -1, 275, 276, 277, -1, -1, -1,
+ 281, -1, 59, -1, 123, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, 92, 93, 94, 95, 96, 97,
+ -1, -1, -1, -1, -1, 306, 307, 105, -1, -1,
+ 108, 312, -1, -1, 112, 113, -1, -1, 116, -1,
+ 118, 119, -1, -1, -1, 123, 124, -1, -1, -1,
+ 40, -1, -1, 43, -1, 45, -1, -1, -1, -1,
+ 138, 139, 140, 141, -1, -1, 123, -1, 125, 59,
+ -1, -1, 150, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 160, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
+ 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, 59, -1, -1, 195, -1, -1,
+ -1, 199, 200, -1, 202, 203, 204, 205, -1, 207,
+ -1, 209, 210, 123, -1, 125, -1, -1, -1, 217,
+ 218, 260, 261, 262, 263, 264, -1, 266, 267, 268,
+ 269, 270, -1, 272, 273, -1, 275, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, -1, 286, 287, -1,
+ -1, -1, 291, 292, 293, 294, 254, -1, 123, 298,
+ 125, -1, 301, 302, 303, 304, -1, -1, 266, 267,
+ 268, 269, 270, -1, 272, 273, 274, -1, -1, -1,
+ -1, -1, 280, 260, -1, -1, 263, 264, -1, 266,
+ 267, 268, 269, 270, 271, 272, 273, -1, 275, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, -1, 286,
+ 287, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ -1, 298, -1, -1, 301, 302, 303, 304, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 260, -1, -1, 263, 264, -1, 266, 267, 268, 269,
+ 270, 271, 272, 273, -1, 275, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, -1, 286, 287, -1, -1,
+ -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
+ -1, 301, 302, 303, 304, 260, -1, -1, 263, 264,
+ -1, 266, 267, 268, 269, 270, 271, 272, 273, -1,
+ 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ -1, 286, 287, -1, -1, -1, 291, 292, 293, 294,
+ -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
+ 40, -1, -1, 43, -1, 45, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
+ 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 123, -1, 125, -1, -1, -1, -1,
+ 40, -1, -1, 43, -1, 45, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 59,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
+ 125, -1, -1, -1, -1, -1, 40, -1, -1, 43,
+ -1, 45, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 59, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 123, -1, 125, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, 43, -1, 45, -1, -1, -1, 123,
+ 260, 125, -1, 263, 264, -1, 266, 267, 268, 269,
+ 270, 271, 272, 273, -1, 275, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, -1, 286, 287, -1, -1,
+ -1, 291, 292, 293, 294, -1, -1, -1, 298, -1,
+ -1, 301, 302, 303, 304, 260, -1, -1, 263, 264,
+ -1, 266, 267, 268, 269, 270, 271, 272, 273, -1,
+ 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ -1, 286, 287, 123, -1, -1, 291, 292, 293, 294,
+ -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
+ 260, -1, -1, 263, 264, -1, 266, 267, 268, 269,
+ 270, 271, 272, 273, -1, 275, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 40, 286, 287, 43, -1,
+ 45, 291, 292, 293, 294, -1, -1, -1, 298, -1,
+ -1, 301, 302, 303, 304, -1, 260, -1, -1, 263,
+ 264, -1, 266, 267, 268, 269, 270, 271, 272, 273,
+ -1, 275, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, -1, 286, 287, -1, -1, -1, 291, 292, 293,
+ 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
+ 304, 40, -1, -1, 43, -1, 45, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 59, -1, -1, -1, -1, -1, -1, 257, 258, 259,
+ -1, -1, -1, 263, 264, -1, -1, -1, 268, 269,
+ -1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
+ 280, 45, 282, 283, 284, 285, 286, -1, -1, -1,
+ -1, 291, 292, 293, 294, 59, -1, -1, 298, -1,
+ 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 123, -1, 125, -1, -1, -1,
+ -1, 40, -1, -1, 43, -1, 45, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 59, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
+ -1, 125, -1, -1, -1, -1, -1, 40, -1, -1,
+ 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 259, -1, 59, -1, 263, 264,
+ -1, -1, -1, 268, 269, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 123, 280, 125, 282, 283, 284,
+ -1, 286, -1, -1, -1, -1, 291, 292, 293, 294,
+ -1, -1, -1, 298, -1, 300, 301, 302, 303, 304,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 40, -1, -1, 43, -1, 45, -1, -1, -1,
+ 123, 260, 125, -1, 263, 264, -1, 266, 267, 268,
+ 269, 270, 271, 272, 273, -1, 275, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, -1, 286, 287, -1,
+ -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
+ -1, -1, 301, 302, 303, 304, 260, -1, -1, 263,
+ 264, -1, 266, 267, 268, 269, 270, -1, 272, 273,
+ -1, 275, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, -1, 286, 287, -1, -1, -1, 291, 292, 293,
+ 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
+ 304, 260, -1, -1, 263, 264, -1, 266, 267, 268,
+ 269, 270, -1, 272, 273, -1, 275, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 40, 286, 287, 43,
+ -1, 45, 291, 292, 293, 294, -1, -1, -1, 298,
+ -1, -1, 301, 302, 303, 304, -1, 260, -1, -1,
+ 263, 264, -1, 266, 267, 268, 269, 270, -1, 272,
+ 273, -1, 275, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, -1, 286, 287, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, 40, -1, -1, 43, -1, 45, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
+ 259, -1, 261, 262, 263, 264, -1, -1, -1, 268,
+ 269, -1, -1, -1, -1, -1, -1, 40, -1, -1,
+ 43, 280, 45, 282, 283, 284, -1, 286, -1, -1,
+ -1, -1, 291, 292, 293, 294, 59, -1, -1, 298,
+ -1, 300, 301, 302, 303, 304, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 123, -1, 125, -1, -1,
+ -1, -1, 40, -1, -1, 43, -1, 45, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 59, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 123, -1, 125, -1, -1, -1, -1, -1, 40, -1,
+ -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 259, -1, 59, -1, 263,
+ 264, -1, -1, -1, 268, 269, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 123, 280, 125, 282, 283,
+ 284, -1, 286, -1, -1, -1, -1, 291, 292, 293,
+ 294, -1, -1, -1, 298, -1, 300, 301, 302, 303,
+ 304, 40, 41, -1, 43, 44, 45, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 123, 260, 125, -1, 263, 264, -1, 266, 267,
+ 268, 269, 270, -1, 272, 273, -1, 275, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, -1, 286, 287,
+ -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
+ 298, -1, -1, 301, 302, 303, 304, 260, -1, -1,
+ 263, 264, -1, 266, 267, 268, 269, 270, -1, 272,
+ 273, -1, 275, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 40, 286, 287, 43, 44, 45, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, 260, -1, -1, 263, 264, -1, 266, 267,
+ 268, 269, 270, -1, 272, 273, -1, 275, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, -1, 286, 287,
+ -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
+ 298, -1, -1, 301, 302, 303, 304, -1, 260, -1,
+ -1, 263, 264, -1, 266, 267, 268, 269, 270, -1,
+ 272, 273, -1, 275, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, -1, 286, 287, -1, -1, -1, 291,
+ 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
+ 302, 303, 304, 40, -1, -1, 43, -1, 45, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 59, -1, 263, 264, -1, -1, -1, 268,
+ 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
+ -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
+ -1, -1, 301, 302, 303, 304, 40, 41, -1, 43,
+ 44, 45, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 123, -1, 125, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 40, 41,
+ -1, 43, -1, 45, -1, 263, 264, -1, -1, -1,
+ 268, 269, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
+ -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
+ 298, -1, -1, 301, 302, 303, 304, 40, -1, -1,
+ 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 40, -1, -1, 43, -1, 45, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 260, -1, -1, 263, 264, -1, 266,
+ 267, 268, 269, 270, -1, 272, 273, -1, 275, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, -1, 286,
+ 287, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ -1, 298, -1, -1, 301, 302, 303, 304, 40, -1,
+ -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 263,
+ 264, -1, -1, -1, 268, 269, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
+ 284, -1, 286, -1, -1, -1, -1, 291, 292, 293,
+ 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
+ 304, 263, 264, -1, -1, -1, 268, 269, 40, 41,
+ -1, 43, -1, 45, -1, -1, -1, -1, 280, -1,
+ 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
+ 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
+ 302, 303, 304, -1, -1, -1, 259, -1, -1, -1,
+ 263, 264, -1, -1, 40, 268, 269, 43, 44, 45,
+ -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
+ 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, 259, -1, -1, -1, 263, 264, -1, -1,
+ 40, 268, 269, 43, 44, 45, -1, -1, -1, -1,
+ -1, -1, -1, 280, -1, 282, 283, 284, -1, 286,
+ -1, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ -1, 298, -1, -1, 301, 302, 303, 304, -1, -1,
+ -1, -1, 40, -1, -1, 43, 44, 45, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 259, -1, -1,
+ -1, 263, 264, -1, -1, -1, 268, 269, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
+ 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
+ 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
+ 302, 303, 304, 40, -1, -1, 43, 44, 45, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 263, 264, -1, -1, -1, 268, 269, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
+ 282, 283, 284, 40, 286, -1, 43, 44, 45, 291,
+ 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
+ 302, 303, 304, -1, -1, -1, -1, 263, 264, -1,
+ -1, -1, 268, 269, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 280, -1, 282, 283, 284, 40,
+ 286, -1, 43, 44, 45, 291, 292, 293, 294, -1,
+ -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
+ -1, -1, -1, 263, 264, -1, -1, -1, 268, 269,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 280, -1, 282, 283, 284, 40, 286, -1, 43, -1,
+ 45, 291, 292, 293, 294, -1, -1, -1, 298, -1,
+ -1, 301, 302, 303, 304, 263, 264, -1, -1, -1,
+ 268, 269, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
+ -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
+ 298, -1, -1, 301, 302, 303, 304, 40, 41, -1,
+ 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 263, 264, -1, -1,
+ -1, 268, 269, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 280, -1, 282, 283, 284, -1, 286,
+ -1, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ -1, 298, -1, -1, 301, 302, 303, 304, 40, 41,
+ -1, 43, -1, 45, -1, -1, 263, 264, -1, -1,
+ -1, 268, 269, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 280, -1, 282, 283, 284, -1, 286,
+ -1, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ -1, 298, -1, -1, 301, 302, 303, 304, -1, -1,
+ -1, 40, 263, 264, 43, -1, 45, 268, 269, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
+ -1, 282, 283, 284, -1, 286, -1, -1, -1, -1,
+ 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
+ 301, 302, 303, 304, 259, -1, -1, -1, 263, 264,
+ -1, -1, -1, 268, 269, 40, 41, -1, 43, -1,
+ 45, -1, -1, -1, -1, 280, -1, 282, 283, 284,
+ -1, 286, -1, -1, -1, -1, 291, 292, 293, 294,
+ -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
+ -1, -1, -1, -1, -1, -1, -1, 40, 41, -1,
+ 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
+ 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
+ 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, 40, 41, -1, 43, -1, 45, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 263, 264, -1, -1, -1, 268, 269, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
+ 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
+ 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
+ 302, 303, 304, 40, 41, -1, 43, -1, 45, -1,
+ 259, -1, -1, -1, 263, 264, -1, -1, -1, 268,
+ 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
+ -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
+ -1, -1, 301, 302, 303, 304, 40, 41, -1, 43,
+ -1, 45, -1, -1, -1, -1, -1, -1, 263, 264,
+ -1, -1, -1, 268, 269, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
+ -1, 286, -1, -1, -1, -1, 291, 292, 293, 294,
+ -1, -1, -1, 298, -1, -1, 301, 302, 303, 304,
+ 263, 264, -1, -1, -1, 268, 269, 40, 41, -1,
+ 43, -1, 45, -1, -1, -1, -1, 280, -1, 282,
+ 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, -1, -1, -1, -1, -1, -1, -1, 40,
+ 41, -1, 43, -1, 45, 263, 264, -1, -1, -1,
+ 268, 269, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
+ -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
+ 298, -1, -1, 301, 302, 303, 304, 40, -1, -1,
+ 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 263, 264, -1, -1,
+ -1, 268, 269, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 280, -1, 282, 283, 284, -1, 286,
+ -1, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ 93, 298, -1, -1, 301, 302, 303, 304, 40, -1,
+ -1, 43, -1, 45, -1, -1, -1, -1, -1, 263,
+ 264, -1, -1, -1, 268, 269, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 280, -1, 282, 283,
+ 284, -1, 286, -1, -1, -1, -1, 291, 292, 293,
+ 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
+ 304, 40, -1, -1, 43, -1, 45, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
+ 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, 263, 264, -1, -1, -1, 268, 269, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
+ -1, 282, 283, 284, -1, 286, -1, -1, -1, -1,
+ 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
+ 301, 302, 303, 304, -1, -1, -1, -1, -1, -1,
+ 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
+ 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 263, 264, -1, -1, -1, 268, 269, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 280, -1,
+ 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
+ 292, 293, 294, -1, -1, -1, 298, 27, 28, 301,
+ 302, 303, 304, 33, -1, -1, -1, -1, -1, -1,
+ -1, 41, -1, -1, 263, 264, -1, -1, -1, 268,
+ 269, -1, -1, 53, -1, -1, -1, -1, -1, -1,
+ -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
+ -1, -1, 291, 292, 293, 294, -1, -1, -1, 298,
+ -1, -1, 301, 302, 303, 304, -1, -1, -1, -1,
+ -1, 91, 92, 93, 94, 95, 96, 97, -1, -1,
+ -1, -1, -1, -1, -1, 105, -1, -1, 108, -1,
+ -1, -1, 112, 113, -1, -1, 116, -1, 118, 119,
+ -1, -1, -1, 123, 124, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 138, 139,
+ 140, 141, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 160, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, 199,
+ 200, -1, 202, 203, 204, 205, -1, 207, -1, 209,
+ 210, -1, -1, -1, -1, -1, -1, 217, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 254, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 266, 267, 268, 269,
+ 270, -1, 272, 273, 274, -1, -1, -1, -1, -1,
+ 280,
+};
+#define YYFINAL 1
+#ifndef YYDEBUG
+#define YYDEBUG 0
+#endif
+#define YYMAXTOKEN 304
+#if YYDEBUG
+char *yyname[] = {
+"end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,"'%'",0,0,"'('","')'","'*'","'+'","','","'-'",0,"'/'",0,0,0,0,0,0,0,0,0,0,
+"':'","';'","'<'",0,"'>'","'?'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,"'['",0,"']'","'^'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"'p'",0,0,0,0,0,0,0,
+0,0,0,"'{'","'|'","'}'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"BEGIN","END","REGEX","SEMINEW",
+"NEWLINE","COMMENT","FUN1","FUNN","GRGR","PRINT","PRINTF","SPRINTF","SPLIT",
+"IF","ELSE","WHILE","FOR","IN","EXIT","NEXT","BREAK","CONTINUE","RET","GETLINE",
+"DO","SUB","GSUB","MATCH","FUNCTION","USERFUN","DELETE","ASGNOP","OROR",
+"ANDAND","NUMBER","VAR","SUBSTR","INDEX","MATCHOP","RELOP","OR","STRING",
+"UMINUS","NOT","INCR","DECR","FIELD","VFIELD",
+};
+char *yyrule[] = {
+"$accept : program",
+"program : junk hunks",
+"begin : BEGIN '{' maybe states '}' junk",
+"end : END '{' maybe states '}'",
+"end : end NEWLINE",
+"hunks : hunks hunk junk",
+"hunks :",
+"hunk : patpat",
+"hunk : patpat '{' maybe states '}'",
+"hunk : FUNCTION USERFUN '(' arg_list ')' maybe '{' maybe states '}'",
+"hunk : '{' maybe states '}'",
+"hunk : begin",
+"hunk : end",
+"arg_list : expr_list",
+"patpat : cond",
+"patpat : cond ',' cond",
+"cond : expr",
+"cond : match",
+"cond : rel",
+"cond : compound_cond",
+"compound_cond : '(' compound_cond ')'",
+"compound_cond : cond ANDAND maybe cond",
+"compound_cond : cond OROR maybe cond",
+"compound_cond : NOT cond",
+"rel : expr RELOP expr",
+"rel : expr '>' expr",
+"rel : expr '<' expr",
+"rel : '(' rel ')'",
+"match : expr MATCHOP expr",
+"match : expr MATCHOP REGEX",
+"match : REGEX",
+"match : '(' match ')'",
+"expr : term",
+"expr : expr term",
+"expr : variable ASGNOP cond",
+"term : variable",
+"term : NUMBER",
+"term : STRING",
+"term : term '+' term",
+"term : term '-' term",
+"term : term '*' term",
+"term : term '/' term",
+"term : term '%' term",
+"term : term '^' term",
+"term : term IN VAR",
+"term : term '?' term ':' term",
+"term : variable INCR",
+"term : variable DECR",
+"term : INCR variable",
+"term : DECR variable",
+"term : '-' term",
+"term : '+' term",
+"term : '(' cond ')'",
+"term : GETLINE",
+"term : GETLINE variable",
+"term : GETLINE '<' expr",
+"term : GETLINE variable '<' expr",
+"term : term 'p' GETLINE",
+"term : term 'p' GETLINE variable",
+"term : FUN1",
+"term : FUN1 '(' ')'",
+"term : FUN1 '(' expr ')'",
+"term : FUNN '(' expr_list ')'",
+"term : USERFUN '(' expr_list ')'",
+"term : SPRINTF expr_list",
+"term : SUBSTR '(' expr ',' expr ',' expr ')'",
+"term : SUBSTR '(' expr ',' expr ')'",
+"term : SPLIT '(' expr ',' VAR ',' expr ')'",
+"term : SPLIT '(' expr ',' VAR ',' REGEX ')'",
+"term : SPLIT '(' expr ',' VAR ')'",
+"term : INDEX '(' expr ',' expr ')'",
+"term : MATCH '(' expr ',' REGEX ')'",
+"term : MATCH '(' expr ',' expr ')'",
+"term : SUB '(' expr ',' expr ')'",
+"term : SUB '(' REGEX ',' expr ')'",
+"term : GSUB '(' expr ',' expr ')'",
+"term : GSUB '(' REGEX ',' expr ')'",
+"term : SUB '(' expr ',' expr ',' expr ')'",
+"term : SUB '(' REGEX ',' expr ',' expr ')'",
+"term : GSUB '(' expr ',' expr ',' expr ')'",
+"term : GSUB '(' REGEX ',' expr ',' expr ')'",
+"variable : VAR",
+"variable : VAR '[' expr_list ']'",
+"variable : FIELD",
+"variable : VFIELD term",
+"expr_list : expr",
+"expr_list : clist",
+"expr_list :",
+"clist : expr ',' maybe expr",
+"clist : clist ',' maybe expr",
+"clist : '(' clist ')'",
+"junk : junk hunksep",
+"junk :",
+"hunksep : ';'",
+"hunksep : SEMINEW",
+"hunksep : NEWLINE",
+"hunksep : COMMENT",
+"maybe : maybe nlstuff",
+"maybe :",
+"nlstuff : NEWLINE",
+"nlstuff : COMMENT",
+"separator : ';' maybe",
+"separator : SEMINEW maybe",
+"separator : NEWLINE maybe",
+"separator : COMMENT maybe",
+"states : states statement",
+"states :",
+"statement : simple separator maybe",
+"statement : ';' maybe",
+"statement : SEMINEW maybe",
+"statement : compound",
+"simpnull : simple",
+"simpnull :",
+"simple : expr",
+"simple : PRINT expr_list redir expr",
+"simple : PRINT expr_list",
+"simple : PRINTF expr_list redir expr",
+"simple : PRINTF expr_list",
+"simple : BREAK",
+"simple : NEXT",
+"simple : EXIT",
+"simple : EXIT expr",
+"simple : CONTINUE",
+"simple : RET",
+"simple : RET expr",
+"simple : DELETE VAR '[' expr ']'",
+"redir : '>'",
+"redir : GRGR",
+"redir : '|'",
+"compound : IF '(' cond ')' maybe statement",
+"compound : IF '(' cond ')' maybe statement ELSE maybe statement",
+"compound : WHILE '(' cond ')' maybe statement",
+"compound : DO maybe statement WHILE '(' cond ')'",
+"compound : FOR '(' simpnull ';' cond ';' simpnull ')' maybe statement",
+"compound : FOR '(' simpnull ';' ';' simpnull ')' maybe statement",
+"compound : FOR '(' expr ')' maybe statement",
+"compound : '{' maybe states '}' maybe",
+};
+#endif
+#ifndef YYSTYPE
+typedef int YYSTYPE;
+#endif
+#ifdef YYSTACKSIZE
+#undef YYMAXDEPTH
+#define YYMAXDEPTH YYSTACKSIZE
+#else
+#ifdef YYMAXDEPTH
+#define YYSTACKSIZE YYMAXDEPTH
+#else
+#define YYSTACKSIZE 500
+#define YYMAXDEPTH 500
+#endif
+#endif
+int yydebug;
+int yynerrs;
+int yyerrflag;
+int yychar;
+short *yyssp;
+YYSTYPE *yyvsp;
+YYSTYPE yyval;
+YYSTYPE yylval;
+short yyss[YYSTACKSIZE];
+YYSTYPE yyvs[YYSTACKSIZE];
+#define yystacksize YYSTACKSIZE
+#line 406 "a2p.y"
+#include "a2py.c"
+#line 1997 "y.tab.c"
+#define YYABORT goto yyabort
+#define YYREJECT goto yyabort
+#define YYACCEPT goto yyaccept
+#define YYERROR goto yyerrlab
+int
+yyparse()
+{
+ register int yym, yyn, yystate;
+#if YYDEBUG
+ register char *yys;
+ extern char *getenv();
+
+ if (yys = getenv("YYDEBUG"))
+ {
+ yyn = *yys;
+ if (yyn >= '0' && yyn <= '9')
+ yydebug = yyn - '0';
+ }
+#endif
+
+ yynerrs = 0;
+ yyerrflag = 0;
+ yychar = (-1);
+
+ yyssp = yyss;
+ yyvsp = yyvs;
+ *yyssp = yystate = 0;
+
+yyloop:
+ if (yyn = yydefred[yystate]) goto yyreduce;
+ if (yychar < 0)
+ {
+ if ((yychar = yylex()) < 0) yychar = 0;
+#if YYDEBUG
+ if (yydebug)
+ {
+ yys = 0;
+ if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
+ if (!yys) yys = "illegal-symbol";
+ printf("%sdebug: state %d, reading %d (%s)\n",
+ YYPREFIX, yystate, yychar, yys);
+ }
+#endif
+ }
+ if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
+ yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("%sdebug: state %d, shifting to state %d\n",
+ YYPREFIX, yystate, yytable[yyn]);
+#endif
+ if (yyssp >= yyss + yystacksize - 1)
+ {
+ goto yyoverflow;
+ }
+ *++yyssp = yystate = yytable[yyn];
+ *++yyvsp = yylval;
+ yychar = (-1);
+ if (yyerrflag > 0) --yyerrflag;
+ goto yyloop;
+ }
+ if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
+ yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
+ {
+ yyn = yytable[yyn];
+ goto yyreduce;
+ }
+ if (yyerrflag) goto yyinrecovery;
+#ifdef lint
+ goto yynewerror;
+#endif
+yynewerror:
+ yyerror("syntax error");
+#ifdef lint
+ goto yyerrlab;
+#endif
+yyerrlab:
+ ++yynerrs;
+yyinrecovery:
+ if (yyerrflag < 3)
+ {
+ yyerrflag = 3;
+ for (;;)
+ {
+ if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
+ yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("%sdebug: state %d, error recovery shifting\
+ to state %d\n", YYPREFIX, *yyssp, yytable[yyn]);
+#endif
+ if (yyssp >= yyss + yystacksize - 1)
+ {
+ goto yyoverflow;
+ }
+ *++yyssp = yystate = yytable[yyn];
+ *++yyvsp = yylval;
+ goto yyloop;
+ }
+ else
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("%sdebug: error recovery discarding state %d\n",
+ YYPREFIX, *yyssp);
+#endif
+ if (yyssp <= yyss) goto yyabort;
+ --yyssp;
+ --yyvsp;
+ }
+ }
+ }
+ else
+ {
+ if (yychar == 0) goto yyabort;
+#if YYDEBUG
+ if (yydebug)
+ {
+ yys = 0;
+ if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
+ if (!yys) yys = "illegal-symbol";
+ printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
+ YYPREFIX, yystate, yychar, yys);
+ }
+#endif
+ yychar = (-1);
+ goto yyloop;
+ }
+yyreduce:
+#if YYDEBUG
+ if (yydebug)
+ printf("%sdebug: state %d, reducing by rule %d (%s)\n",
+ YYPREFIX, yystate, yyn, yyrule[yyn]);
+#endif
+ yym = yylen[yyn];
+ yyval = yyvsp[1-yym];
+ switch (yyn)
+ {
+case 1:
+#line 63 "a2p.y"
+{ root = oper4(OPROG,yyvsp[-1],begins,yyvsp[0],ends); }
+break;
+case 2:
+#line 67 "a2p.y"
+{ begins = oper4(OJUNK,begins,yyvsp[-3],yyvsp[-2],yyvsp[0]); in_begin = FALSE;
+ yyval = Nullop; }
+break;
+case 3:
+#line 72 "a2p.y"
+{ ends = oper3(OJUNK,ends,yyvsp[-2],yyvsp[-1]); yyval = Nullop; }
+break;
+case 4:
+#line 74 "a2p.y"
+{ yyval = yyvsp[-1]; }
+break;
+case 5:
+#line 78 "a2p.y"
+{ yyval = oper3(OHUNKS,yyvsp[-2],yyvsp[-1],yyvsp[0]); }
+break;
+case 6:
+#line 80 "a2p.y"
+{ yyval = Nullop; }
+break;
+case 7:
+#line 84 "a2p.y"
+{ yyval = oper1(OHUNK,yyvsp[0]); need_entire = TRUE; }
+break;
+case 8:
+#line 86 "a2p.y"
+{ yyval = oper2(OHUNK,yyvsp[-4],oper2(OJUNK,yyvsp[-2],yyvsp[-1])); }
+break;
+case 9:
+#line 88 "a2p.y"
+{ fixfargs(yyvsp[-8],yyvsp[-6],0); yyval = oper5(OUSERDEF,yyvsp[-8],yyvsp[-6],yyvsp[-4],yyvsp[-2],yyvsp[-1]); }
+break;
+case 10:
+#line 90 "a2p.y"
+{ yyval = oper2(OHUNK,Nullop,oper2(OJUNK,yyvsp[-2],yyvsp[-1])); }
+break;
+case 13:
+#line 96 "a2p.y"
+{ yyval = rememberargs(yyval); }
+break;
+case 14:
+#line 100 "a2p.y"
+{ yyval = oper1(OPAT,yyvsp[0]); }
+break;
+case 15:
+#line 102 "a2p.y"
+{ yyval = oper2(ORANGE,yyvsp[-2],yyvsp[0]); }
+break;
+case 20:
+#line 113 "a2p.y"
+{ yyval = oper1(OCPAREN,yyvsp[-1]); }
+break;
+case 21:
+#line 115 "a2p.y"
+{ yyval = oper3(OCANDAND,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
+break;
+case 22:
+#line 117 "a2p.y"
+{ yyval = oper3(OCOROR,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
+break;
+case 23:
+#line 119 "a2p.y"
+{ yyval = oper1(OCNOT,yyvsp[0]); }
+break;
+case 24:
+#line 123 "a2p.y"
+{ yyval = oper3(ORELOP,yyvsp[-1],yyvsp[-2],yyvsp[0]); }
+break;
+case 25:
+#line 125 "a2p.y"
+{ yyval = oper3(ORELOP,string(">",1),yyvsp[-2],yyvsp[0]); }
+break;
+case 26:
+#line 127 "a2p.y"
+{ yyval = oper3(ORELOP,string("<",1),yyvsp[-2],yyvsp[0]); }
+break;
+case 27:
+#line 129 "a2p.y"
+{ yyval = oper1(ORPAREN,yyvsp[-1]); }
+break;
+case 28:
+#line 133 "a2p.y"
+{ yyval = oper3(OMATCHOP,yyvsp[-1],yyvsp[-2],yyvsp[0]); }
+break;
+case 29:
+#line 135 "a2p.y"
+{ yyval = oper3(OMATCHOP,yyvsp[-1],yyvsp[-2],oper1(OREGEX,yyvsp[0])); }
+break;
+case 30:
+#line 137 "a2p.y"
+{ yyval = oper1(OREGEX,yyvsp[0]); }
+break;
+case 31:
+#line 139 "a2p.y"
+{ yyval = oper1(OMPAREN,yyvsp[-1]); }
+break;
+case 32:
+#line 143 "a2p.y"
+{ yyval = yyvsp[0]; }
+break;
+case 33:
+#line 145 "a2p.y"
+{ yyval = oper2(OCONCAT,yyvsp[-1],yyvsp[0]); }
+break;
+case 34:
+#line 147 "a2p.y"
+{ yyval = oper3(OASSIGN,yyvsp[-1],yyvsp[-2],yyvsp[0]);
+ if ((ops[yyvsp[-2]].ival & 255) == OFLD)
+ lval_field = TRUE;
+ if ((ops[yyvsp[-2]].ival & 255) == OVFLD)
+ lval_field = TRUE;
+ }
+break;
+case 35:
+#line 156 "a2p.y"
+{ yyval = yyvsp[0]; }
+break;
+case 36:
+#line 158 "a2p.y"
+{ yyval = oper1(ONUM,yyvsp[0]); }
+break;
+case 37:
+#line 160 "a2p.y"
+{ yyval = oper1(OSTR,yyvsp[0]); }
+break;
+case 38:
+#line 162 "a2p.y"
+{ yyval = oper2(OADD,yyvsp[-2],yyvsp[0]); }
+break;
+case 39:
+#line 164 "a2p.y"
+{ yyval = oper2(OSUBTRACT,yyvsp[-2],yyvsp[0]); }
+break;
+case 40:
+#line 166 "a2p.y"
+{ yyval = oper2(OMULT,yyvsp[-2],yyvsp[0]); }
+break;
+case 41:
+#line 168 "a2p.y"
+{ yyval = oper2(ODIV,yyvsp[-2],yyvsp[0]); }
+break;
+case 42:
+#line 170 "a2p.y"
+{ yyval = oper2(OMOD,yyvsp[-2],yyvsp[0]); }
+break;
+case 43:
+#line 172 "a2p.y"
+{ yyval = oper2(OPOW,yyvsp[-2],yyvsp[0]); }
+break;
+case 44:
+#line 174 "a2p.y"
+{ yyval = oper2(ODEFINED,aryrefarg(yyvsp[0]),yyvsp[-2]); }
+break;
+case 45:
+#line 176 "a2p.y"
+{ yyval = oper3(OCOND,yyvsp[-4],yyvsp[-2],yyvsp[0]); }
+break;
+case 46:
+#line 178 "a2p.y"
+{ yyval = oper1(OPOSTINCR,yyvsp[-1]); }
+break;
+case 47:
+#line 180 "a2p.y"
+{ yyval = oper1(OPOSTDECR,yyvsp[-1]); }
+break;
+case 48:
+#line 182 "a2p.y"
+{ yyval = oper1(OPREINCR,yyvsp[0]); }
+break;
+case 49:
+#line 184 "a2p.y"
+{ yyval = oper1(OPREDECR,yyvsp[0]); }
+break;
+case 50:
+#line 186 "a2p.y"
+{ yyval = oper1(OUMINUS,yyvsp[0]); }
+break;
+case 51:
+#line 188 "a2p.y"
+{ yyval = oper1(OUPLUS,yyvsp[0]); }
+break;
+case 52:
+#line 190 "a2p.y"
+{ yyval = oper1(OPAREN,yyvsp[-1]); }
+break;
+case 53:
+#line 192 "a2p.y"
+{ yyval = oper0(OGETLINE); }
+break;
+case 54:
+#line 194 "a2p.y"
+{ yyval = oper1(OGETLINE,yyvsp[0]); }
+break;
+case 55:
+#line 196 "a2p.y"
+{ yyval = oper3(OGETLINE,Nullop,string("<",1),yyvsp[0]);
+ if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
+break;
+case 56:
+#line 199 "a2p.y"
+{ yyval = oper3(OGETLINE,yyvsp[-2],string("<",1),yyvsp[0]);
+ if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
+break;
+case 57:
+#line 202 "a2p.y"
+{ yyval = oper3(OGETLINE,Nullop,string("|",1),yyvsp[-2]);
+ if (ops[yyvsp[-2]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
+break;
+case 58:
+#line 205 "a2p.y"
+{ yyval = oper3(OGETLINE,yyvsp[0],string("|",1),yyvsp[-3]);
+ if (ops[yyvsp[-3]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
+break;
+case 59:
+#line 208 "a2p.y"
+{ yyval = oper0(yyvsp[0]); need_entire = do_chop = TRUE; }
+break;
+case 60:
+#line 210 "a2p.y"
+{ yyval = oper1(yyvsp[-2],Nullop); need_entire = do_chop = TRUE; }
+break;
+case 61:
+#line 212 "a2p.y"
+{ yyval = oper1(yyvsp[-3],yyvsp[-1]); }
+break;
+case 62:
+#line 214 "a2p.y"
+{ yyval = oper1(yyvsp[-3],yyvsp[-1]); }
+break;
+case 63:
+#line 216 "a2p.y"
+{ yyval = oper2(OUSERFUN,yyvsp[-3],yyvsp[-1]); }
+break;
+case 64:
+#line 218 "a2p.y"
+{ yyval = oper1(OSPRINTF,yyvsp[0]); }
+break;
+case 65:
+#line 220 "a2p.y"
+{ yyval = oper3(OSUBSTR,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
+break;
+case 66:
+#line 222 "a2p.y"
+{ yyval = oper2(OSUBSTR,yyvsp[-3],yyvsp[-1]); }
+break;
+case 67:
+#line 224 "a2p.y"
+{ yyval = oper3(OSPLIT,yyvsp[-5],aryrefarg(numary(yyvsp[-3])),yyvsp[-1]); }
+break;
+case 68:
+#line 226 "a2p.y"
+{ yyval = oper3(OSPLIT,yyvsp[-5],aryrefarg(numary(yyvsp[-3])),oper1(OREGEX,yyvsp[-1]));}
+break;
+case 69:
+#line 228 "a2p.y"
+{ yyval = oper2(OSPLIT,yyvsp[-3],aryrefarg(numary(yyvsp[-1]))); }
+break;
+case 70:
+#line 230 "a2p.y"
+{ yyval = oper2(OINDEX,yyvsp[-3],yyvsp[-1]); }
+break;
+case 71:
+#line 232 "a2p.y"
+{ yyval = oper2(OMATCH,yyvsp[-3],oper1(OREGEX,yyvsp[-1])); }
+break;
+case 72:
+#line 234 "a2p.y"
+{ yyval = oper2(OMATCH,yyvsp[-3],yyvsp[-1]); }
+break;
+case 73:
+#line 236 "a2p.y"
+{ yyval = oper2(OSUB,yyvsp[-3],yyvsp[-1]); }
+break;
+case 74:
+#line 238 "a2p.y"
+{ yyval = oper2(OSUB,oper1(OREGEX,yyvsp[-3]),yyvsp[-1]); }
+break;
+case 75:
+#line 240 "a2p.y"
+{ yyval = oper2(OGSUB,yyvsp[-3],yyvsp[-1]); }
+break;
+case 76:
+#line 242 "a2p.y"
+{ yyval = oper2(OGSUB,oper1(OREGEX,yyvsp[-3]),yyvsp[-1]); }
+break;
+case 77:
+#line 244 "a2p.y"
+{ yyval = oper3(OSUB,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
+break;
+case 78:
+#line 246 "a2p.y"
+{ yyval = oper3(OSUB,oper1(OREGEX,yyvsp[-5]),yyvsp[-3],yyvsp[-1]); }
+break;
+case 79:
+#line 248 "a2p.y"
+{ yyval = oper3(OGSUB,yyvsp[-5],yyvsp[-3],yyvsp[-1]); }
+break;
+case 80:
+#line 250 "a2p.y"
+{ yyval = oper3(OGSUB,oper1(OREGEX,yyvsp[-5]),yyvsp[-3],yyvsp[-1]); }
+break;
+case 81:
+#line 254 "a2p.y"
+{ yyval = oper1(OVAR,yyvsp[0]); }
+break;
+case 82:
+#line 256 "a2p.y"
+{ yyval = oper2(OVAR,aryrefarg(yyvsp[-3]),yyvsp[-1]); }
+break;
+case 83:
+#line 258 "a2p.y"
+{ yyval = oper1(OFLD,yyvsp[0]); }
+break;
+case 84:
+#line 260 "a2p.y"
+{ yyval = oper1(OVFLD,yyvsp[0]); }
+break;
+case 87:
+#line 267 "a2p.y"
+{ yyval = Nullop; }
+break;
+case 88:
+#line 271 "a2p.y"
+{ yyval = oper3(OCOMMA,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
+break;
+case 89:
+#line 273 "a2p.y"
+{ yyval = oper3(OCOMMA,yyvsp[-3],yyvsp[-1],yyvsp[0]); }
+break;
+case 90:
+#line 275 "a2p.y"
+{ yyval = yyvsp[-1]; }
+break;
+case 91:
+#line 279 "a2p.y"
+{ yyval = oper2(OJUNK,yyvsp[-1],yyvsp[0]); }
+break;
+case 92:
+#line 281 "a2p.y"
+{ yyval = Nullop; }
+break;
+case 93:
+#line 285 "a2p.y"
+{ yyval = oper2(OJUNK,oper0(OSEMICOLON),oper0(ONEWLINE)); }
+break;
+case 94:
+#line 287 "a2p.y"
+{ yyval = oper2(OJUNK,oper0(OSEMICOLON),oper0(ONEWLINE)); }
+break;
+case 95:
+#line 289 "a2p.y"
+{ yyval = oper0(ONEWLINE); }
+break;
+case 96:
+#line 291 "a2p.y"
+{ yyval = oper1(OCOMMENT,yyvsp[0]); }
+break;
+case 97:
+#line 295 "a2p.y"
+{ yyval = oper2(OJUNK,yyvsp[-1],yyvsp[0]); }
+break;
+case 98:
+#line 297 "a2p.y"
+{ yyval = Nullop; }
+break;
+case 99:
+#line 301 "a2p.y"
+{ yyval = oper0(ONEWLINE); }
+break;
+case 100:
+#line 303 "a2p.y"
+{ yyval = oper1(OCOMMENT,yyvsp[0]); }
+break;
+case 101:
+#line 308 "a2p.y"
+{ yyval = oper2(OJUNK,oper0(OSEMICOLON),yyvsp[0]); }
+break;
+case 102:
+#line 310 "a2p.y"
+{ yyval = oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0]); }
+break;
+case 103:
+#line 312 "a2p.y"
+{ yyval = oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0]); }
+break;
+case 104:
+#line 314 "a2p.y"
+{ yyval = oper2(OJUNK,oper1(OSCOMMENT,yyvsp[-1]),yyvsp[0]); }
+break;
+case 105:
+#line 318 "a2p.y"
+{ yyval = oper2(OSTATES,yyvsp[-1],yyvsp[0]); }
+break;
+case 106:
+#line 320 "a2p.y"
+{ yyval = Nullop; }
+break;
+case 107:
+#line 325 "a2p.y"
+{ yyval = oper2(OJUNK,oper2(OSTATE,yyvsp[-2],yyvsp[-1]),yyvsp[0]); }
+break;
+case 108:
+#line 327 "a2p.y"
+{ yyval = oper2(OSTATE,Nullop,oper2(OJUNK,oper0(OSEMICOLON),yyvsp[0])); }
+break;
+case 109:
+#line 329 "a2p.y"
+{ yyval = oper2(OSTATE,Nullop,oper2(OJUNK,oper0(OSNEWLINE),yyvsp[0])); }
+break;
+case 112:
+#line 335 "a2p.y"
+{ yyval = Nullop; }
+break;
+case 114:
+#line 341 "a2p.y"
+{ yyval = oper3(OPRINT,yyvsp[-2],yyvsp[-1],yyvsp[0]);
+ do_opens = TRUE;
+ saw_ORS = saw_OFS = TRUE;
+ if (!yyvsp[-2]) need_entire = TRUE;
+ if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
+break;
+case 115:
+#line 347 "a2p.y"
+{ yyval = oper1(OPRINT,yyvsp[0]);
+ if (!yyvsp[0]) need_entire = TRUE;
+ saw_ORS = saw_OFS = TRUE;
+ }
+break;
+case 116:
+#line 352 "a2p.y"
+{ yyval = oper3(OPRINTF,yyvsp[-2],yyvsp[-1],yyvsp[0]);
+ do_opens = TRUE;
+ if (!yyvsp[-2]) need_entire = TRUE;
+ if (ops[yyvsp[0]].ival != OSTR + (1<<8)) do_fancy_opens = TRUE; }
+break;
+case 117:
+#line 357 "a2p.y"
+{ yyval = oper1(OPRINTF,yyvsp[0]);
+ if (!yyvsp[0]) need_entire = TRUE;
+ }
+break;
+case 118:
+#line 361 "a2p.y"
+{ yyval = oper0(OBREAK); }
+break;
+case 119:
+#line 363 "a2p.y"
+{ yyval = oper0(ONEXT); }
+break;
+case 120:
+#line 365 "a2p.y"
+{ yyval = oper0(OEXIT); }
+break;
+case 121:
+#line 367 "a2p.y"
+{ yyval = oper1(OEXIT,yyvsp[0]); }
+break;
+case 122:
+#line 369 "a2p.y"
+{ yyval = oper0(OCONTINUE); }
+break;
+case 123:
+#line 371 "a2p.y"
+{ yyval = oper0(ORETURN); }
+break;
+case 124:
+#line 373 "a2p.y"
+{ yyval = oper1(ORETURN,yyvsp[0]); }
+break;
+case 125:
+#line 375 "a2p.y"
+{ yyval = oper2(ODELETE,aryrefarg(yyvsp[-3]),yyvsp[-1]); }
+break;
+case 126:
+#line 379 "a2p.y"
+{ yyval = oper1(OREDIR,string(">",1)); }
+break;
+case 127:
+#line 381 "a2p.y"
+{ yyval = oper1(OREDIR,string(">>",2)); }
+break;
+case 128:
+#line 383 "a2p.y"
+{ yyval = oper1(OREDIR,string("|",1)); }
+break;
+case 129:
+#line 388 "a2p.y"
+{ yyval = oper2(OIF,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
+break;
+case 130:
+#line 390 "a2p.y"
+{ yyval = oper3(OIF,yyvsp[-6],bl(yyvsp[-3],yyvsp[-4]),bl(yyvsp[0],yyvsp[-1])); }
+break;
+case 131:
+#line 392 "a2p.y"
+{ yyval = oper2(OWHILE,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
+break;
+case 132:
+#line 394 "a2p.y"
+{ yyval = oper2(ODO,bl(yyvsp[-4],yyvsp[-5]),yyvsp[-1]); }
+break;
+case 133:
+#line 396 "a2p.y"
+{ yyval = oper4(OFOR,yyvsp[-7],yyvsp[-5],yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
+break;
+case 134:
+#line 398 "a2p.y"
+{ yyval = oper4(OFOR,yyvsp[-6],string("",0),yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
+break;
+case 135:
+#line 400 "a2p.y"
+{ yyval = oper2(OFORIN,yyvsp[-3],bl(yyvsp[0],yyvsp[-1])); }
+break;
+case 136:
+#line 402 "a2p.y"
+{ yyval = oper3(OBLOCK,oper2(OJUNK,yyvsp[-3],yyvsp[-2]),Nullop,yyvsp[0]); }
+break;
+#line 2660 "y.tab.c"
+ }
+ yyssp -= yym;
+ yystate = *yyssp;
+ yyvsp -= yym;
+ yym = yylhs[yyn];
+ if (yystate == 0 && yym == 0)
+ {
+#if YYDEBUG
+ if (yydebug)
+ printf("%sdebug: after reduction, shifting from state 0 to\
+ state %d\n", YYPREFIX, YYFINAL);
+#endif
+ yystate = YYFINAL;
+ *++yyssp = YYFINAL;
+ *++yyvsp = yyval;
+ if (yychar < 0)
+ {
+ if ((yychar = yylex()) < 0) yychar = 0;
+#if YYDEBUG
+ if (yydebug)
+ {
+ yys = 0;
+ if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
+ if (!yys) yys = "illegal-symbol";
+ printf("%sdebug: state %d, reading %d (%s)\n",
+ YYPREFIX, YYFINAL, yychar, yys);
+ }
+#endif
+ }
+ if (yychar == 0) goto yyaccept;
+ goto yyloop;
+ }
+ if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
+ yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
+ yystate = yytable[yyn];
+ else
+ yystate = yydgoto[yym];
+#if YYDEBUG
+ if (yydebug)
+ printf("%sdebug: after reduction, shifting from state %d \
+to state %d\n", YYPREFIX, *yyssp, yystate);
+#endif
+ if (yyssp >= yyss + yystacksize - 1)
+ {
+ goto yyoverflow;
+ }
+ *++yyssp = yystate;
+ *++yyvsp = yyval;
+ goto yyloop;
+yyoverflow:
+ yyerror("yacc stack overflow");
+yyabort:
+ return (1);
+yyaccept:
+ return (0);
+}
OpenPOWER on IntegriCloud