summaryrefslogtreecommitdiff
path: root/x2p
diff options
context:
space:
mode:
Diffstat (limited to 'x2p')
-rw-r--r--x2p/EXTERN.h2
-rw-r--r--x2p/INTERN.h2
-rwxr-xr-xx2p/Makefile.SH23
-rw-r--r--x2p/a2p.c2999
-rw-r--r--x2p/a2p.h43
-rw-r--r--x2p/a2p.man183
-rw-r--r--x2p/a2p.pod162
-rw-r--r--x2p/a2p.y9
-rw-r--r--x2p/a2py.c16
-rwxr-xr-xx2p/cflags.SH12
-rw-r--r--x2p/find2perl.PL17
-rw-r--r--x2p/handy.h172
-rw-r--r--x2p/hash.c2
-rw-r--r--x2p/hash.h2
-rw-r--r--x2p/proto.h8
-rw-r--r--x2p/s2p.PL95
-rw-r--r--x2p/s2p.man92
-rw-r--r--x2p/str.c18
-rw-r--r--x2p/str.h2
-rw-r--r--x2p/util.c84
-rw-r--r--x2p/util.h18
-rw-r--r--x2p/walk.c4
22 files changed, 1967 insertions, 1998 deletions
diff --git a/x2p/EXTERN.h b/x2p/EXTERN.h
index e4abe5f87b..cd1a4112ae 100644
--- a/x2p/EXTERN.h
+++ b/x2p/EXTERN.h
@@ -1,6 +1,6 @@
/* $RCSfile: EXTERN.h,v $$Revision: 4.1 $$Date: 92/08/07 18:29:05 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
diff --git a/x2p/INTERN.h b/x2p/INTERN.h
index aa3af58c8d..ac1d57ab05 100644
--- a/x2p/INTERN.h
+++ b/x2p/INTERN.h
@@ -1,6 +1,6 @@
/* $RCSfile: INTERN.h,v $$Revision: 4.1 $$Date: 92/08/07 18:29:06 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
diff --git a/x2p/Makefile.SH b/x2p/Makefile.SH
index 16e282d497..0ca3ff35db 100755
--- a/x2p/Makefile.SH
+++ b/x2p/Makefile.SH
@@ -14,7 +14,14 @@ esac
: This forces SH files to create target in same directory as SH file.
: This is so that make depend always knows where to find SH derivatives.
case "$0" in
-*/*) cd `expr X$0 : 'X\(.*\)/'` ;;
+*/Makefile.SH) cd `expr X$0 : 'X\(.*\)/'` ;;
+Makefile.SH) ;;
+*) case `pwd` in
+ */x2p) ;;
+ *) if test -d x2p; then cd x2p
+ else echo "Can't figure out where to write output."; exit 1
+ fi;;
+ esac;;
esac
echo "Extracting x2p/Makefile (with variable substitutions)"
@@ -35,6 +42,10 @@ shellflags = $shellflags
libs = $libs
+$make_set_make
+# grrr
+SHELL = $sh
+
# These variables will be used in a future version to make
# the make file more portable to non-unix systems.
AR = $ar
@@ -69,7 +80,7 @@ plextract = find2perl s2p
addedbyconf = $(shextract) $(plextract)
-h = EXTERN.h INTERN.h ../config.h handy.h hash.h a2p.h str.h util.h
+h = EXTERN.h INTERN.h ../config.h ../handy.h hash.h a2p.h str.h util.h
c = hash.c $(mallocsrc) str.c util.c walk.c
@@ -77,11 +88,9 @@ obj = hash$(OBJ_EXT) $(mallocobj) str$(OBJ_EXT) util$(OBJ_EXT) walk$(OBJ_EXT)
lintflags = -phbvxac
-# grrr
-SHELL = /bin/sh
.c$(OBJ_EXT):
- $(CCCMD) $*.c
+ $(CCCMD) -DPERL_FOR_X2P $*.c
all: $(public) $(private) $(util)
touch all
@@ -103,7 +112,8 @@ run_byacc: FORCE
a2p.c: a2p.y
-@touch a2p.c
-a2p$(OBJ_EXT): a2p.c a2py.c a2p.h EXTERN.h util.h INTERN.h handy.h ../config.h str.h hash.h
+a2p$(OBJ_EXT): a2p.c a2py.c a2p.h EXTERN.h util.h INTERN.h \
+ ../handy.h ../config.h str.h hash.h
$(CCCMD) $(LARGE) a2p.c
clean:
@@ -141,6 +151,7 @@ $(plextract):
malloc.c: ../malloc.c
rm -f malloc.c
sed <../malloc.c >malloc.c \
+ -e 's/"EXTERN.h"/"..\/EXTERN.h"/' \
-e 's/"perl.h"/"..\/perl.h"/' \
-e 's/my_exit/exit/'
diff --git a/x2p/a2p.c b/x2p/a2p.c
index c6d21e3e4d..340e4bfad6 100644
--- a/x2p/a2p.c
+++ b/x2p/a2p.c
@@ -5,7 +5,7 @@ static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
#line 2 "a2p.y"
/* $RCSfile: a2p.y,v $$Revision: 4.1 $$Date: 92/08/07 18:29:12 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -74,7 +74,7 @@ short yylhs[] = { -1,
0, 3, 6, 6, 2, 2, 7, 7, 7, 7,
7, 7, 9, 8, 8, 11, 11, 11, 11, 11,
15, 15, 15, 15, 14, 14, 14, 14, 13, 13,
- 13, 13, 12, 12, 12, 16, 16, 16, 16, 16,
+ 13, 13, 12, 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,
@@ -90,8 +90,8 @@ short yylen[] = { 2,
2, 6, 5, 2, 3, 0, 1, 5, 10, 4,
1, 1, 1, 1, 3, 1, 1, 1, 1, 5,
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,
+ 1, 3, 1, 2, 5, 3, 1, 1, 1, 3,
+ 3, 3, 3, 3, 3, 3, 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,
@@ -105,951 +105,981 @@ short yylen[] = { 2,
short yydefred[] = { 93,
0, 0, 95, 96, 97, 94, 0, 92, 0, 0,
31, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 37, 0, 0, 0, 38, 0, 0, 0, 0,
+ 0, 38, 0, 0, 0, 39, 0, 0, 0, 0,
0, 84, 0, 99, 0, 11, 0, 93, 0, 0,
0, 17, 18, 19, 0, 0, 99, 99, 0, 0,
0, 65, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 24, 49,
- 50, 0, 0, 0, 0, 0, 0, 4, 0, 99,
- 0, 99, 99, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 47, 48,
- 0, 0, 61, 0, 0, 0, 0, 99, 99, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 100, 101, 0, 98, 53, 32, 28, 21,
- 0, 0, 0, 0, 0, 30, 0, 0, 0, 0,
- 45, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 62, 63, 91, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 13, 64, 83, 0, 0, 99,
- 0, 0, 0, 0, 0, 0, 120, 119, 123, 0,
- 99, 0, 99, 10, 99, 0, 106, 0, 111, 0,
- 0, 0, 22, 59, 93, 3, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 99, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 99, 99, 99, 99, 99, 8, 0, 0, 70, 0,
- 75, 0, 74, 0, 77, 0, 76, 0, 72, 73,
- 0, 67, 0, 71, 128, 127, 129, 0, 0, 0,
- 0, 0, 112, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 99, 0,
- 0, 0, 99, 99, 99, 0, 0, 0, 99, 69,
- 68, 79, 78, 81, 80, 0, 66, 0, 0, 0,
- 0, 0, 0, 126, 0, 0, 0, 132, 136, 0,
- 0, 0, 9, 99, 99, 0, 133, 0, 0, 99,
- 131, 135, 0, 134,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,
+ 49, 50, 0, 0, 0, 0, 0, 0, 4, 0,
+ 99, 0, 99, 99, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 47, 48, 0, 0, 61, 0, 0, 0, 0, 0,
+ 99, 99, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 100, 101, 0, 98, 53,
+ 32, 28, 21, 0, 0, 0, 0, 0, 0, 30,
+ 0, 0, 0, 0, 46, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 62, 63, 91, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 13, 64,
+ 83, 0, 0, 99, 0, 0, 0, 0, 0, 0,
+ 120, 119, 123, 0, 99, 0, 99, 10, 99, 0,
+ 106, 0, 111, 0, 0, 0, 22, 0, 59, 93,
+ 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 99, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 99, 99, 99, 99, 99,
+ 8, 0, 0, 0, 70, 0, 75, 0, 74, 0,
+ 77, 0, 76, 0, 72, 73, 0, 67, 0, 71,
+ 128, 127, 129, 0, 0, 0, 0, 0, 112, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 99, 0, 0, 0, 99, 99,
+ 99, 0, 0, 0, 99, 69, 68, 79, 78, 81,
+ 80, 0, 66, 0, 0, 0, 0, 0, 0, 126,
+ 0, 0, 0, 132, 136, 0, 0, 0, 9, 99,
+ 99, 0, 133, 0, 0, 99, 131, 135, 0, 134,
};
short yydgoto[] = { 1,
- 2, 7, 36, 73, 125, 37, 38, 39, 164, 52,
- 53, 41, 42, 43, 44, 45, 46, 55, 8, 126,
- 225, 187, 188, 189, 254, 248,
+ 2, 7, 36, 74, 128, 37, 38, 39, 168, 52,
+ 75, 190, 42, 43, 44, 45, 46, 54, 8, 129,
+ 230, 191, 192, 193, 260, 254,
};
short yysindex[] = { 0,
- 0, -48, 0, 0, 0, 0, 6619, 0, -121, -110,
- 0, -4, 32, 4183, 38, 30, 51, 64, 68, -260,
- 70, 0, -61, 82, 83, 0, 4448, 4448, 4448, -183,
- -183, 0, 4448, 0, 4448, 0, -188, 0, 3, 22,
- 6884, 0, 0, 0, 34, -213, 0, 0, 2061, 4183,
- 4183, 0, -49, 5612, 85, 4448, 4448, 14, 4713, 6753,
- 4448, 87, 4183, 4183, 4448, 4448, -77, -77, 0, 0,
- 0, 18, -192, -36, 91, 92, 95, 0, -48, 0,
- 4448, 0, 0, 4448, 6980, 4448, 4448, 4448, 34, -154,
- 4448, 4448, 4448, 4448, 4448, 4448, -135, 4448, 0, 0,
- -192, -192, 0, 5658, 106, 5612, 11, 0, 0, 5704,
- 186, 4448, 113, 5751, 115, 5805, 5885, 4183, 114, 67,
- 5931, 5978, 0, 0, 4572, 0, 0, 0, 0, 0,
- -192, 6032, 1964, 1964, -49, 0, 3230, 186, 186, 186,
- 0, 97, 97, -77, -77, -77, -77, -183, -49, 4665,
- 4765, 0, 0, 0, 1964, 1964, -131, 186, 4448, 4448,
- 4448, 4448, 7026, 121, 0, 0, 0, 4448, 4448, 0,
- 4183, 4183, 124, 125, 132, 4448, 0, 0, 0, 4448,
- 0, -117, 0, 0, 0, 6884, 0, -44, 0, 4837,
- 4448, -114, 0, 0, 0, 0, 6884, 6884, 13, 3635,
- 5295, 5367, 5506, 137, 6078, 0, 5560, 6243, -192, -59,
- -59, 4448, 4448, 5241, 6884, 6884, 3701, 93, -192, -192,
- 0, 0, 0, 0, 0, 0, 6884, -48, 0, 7084,
- 0, 4448, 0, 4448, 0, 4448, 0, 4448, 0, 0,
- -119, 0, 4448, 0, 0, 0, 0, 4448, 4448, -34,
- -16, 6343, 0, 123, -89, 4183, 4930, -192, -192, -192,
- -192, -192, 144, 6389, 6435, 6508, 6554, 6700, 0, 6819,
- 6884, 6884, 0, 0, 0, 6930, 146, 94, 0, 0,
- 0, 0, 0, 0, 0, -192, 0, 3701, 3701, 3701,
- 5241, -53, 4448, 0, -192, 5030, -83, 0, 0, 148,
- 5241, -13, 0, 0, 0, 149, 0, 3701, 3701, 0,
- 0, 0, 3701, 0,
+ 0, -50, 0, 0, 0, 0, 4775, 0, -91, -38,
+ 0, 34, 41, 7201, 42, 6, 46, 48, 50, -184,
+ 70, 0, 16, 77, 80, 0, 7255, 7255, 5051, -220,
+ -220, 0, 7255, 0, 5051, 0, -140, 0, 5, -13,
+ 5693, 0, 0, 0, -32, -233, 0, 0, 4619, 7201,
+ 5962, 0, 6006, 79, 7255, 7255, 71, 6890, 6936, 7255,
+ 87, 7201, 7201, 7255, 7255, 5051, -42, -244, -42, 0,
+ 0, 0, 20, -183, -41, 89, 92, 93, 0, -50,
+ 0, 7255, 0, 0, 5051, 7255, 6990, 7255, 7255, 7255,
+ -32, -157, 7255, 7255, 7255, 7255, 7255, 7255, -144, 5051,
+ 0, 0, -183, -183, 0, 3590, 96, 5962, 5577, 10,
+ 0, 0, 6049, 1522, 7255, 94, 6107, 95, 6153, 6195,
+ 7201, 99, 51, 6238, 6281, 0, 0, 4886, 0, 0,
+ 0, 0, 0, -183, 6323, 1605, 1605, -60, 6380, 0,
+ 1522, 1522, 1522, 1522, 0, -7, -7, -42, -42, -42,
+ -42, -220, -60, 4931, 4977, 0, 0, 0, 6425, 6425,
+ -151, 1522, 7255, 7255, 7255, 7255, 7052, 102, 0, 0,
+ 0, 7255, 7255, 0, 7201, 7201, 115, 119, 121, 7255,
+ 0, 0, 0, 7255, 0, -130, 0, 0, 0, 7112,
+ 0, 18, 0, 5242, 7255, -126, 0, 7255, 0, 0,
+ 0, 7112, 7112, 32, 2427, 2474, 5735, 5779, 126, 6470,
+ 0, 5842, 6513, -183, -33, -33, 5051, 5051, 5428, 7112,
+ 7112, 4046, 81, -183, -183, 0, 0, 0, 0, 0,
+ 0, 7112, 7112, -50, 0, 7158, 0, 7255, 0, 7255,
+ 0, 7255, 0, 7255, 0, 0, -96, 0, 7255, 0,
+ 0, 0, 0, 7255, 7255, -39, -37, 6555, 0, 116,
+ -95, 7201, 5287, -183, -183, -183, -183, -183, 135, 6612,
+ 6657, 6702, 6745, 6787, 0, 6844, 7112, 7112, 0, 0,
+ 0, 5908, 144, 97, 0, 0, 0, 0, 0, 0,
+ 0, -183, 0, 4046, 4046, 4046, 5428, -51, 5051, 0,
+ -183, 5332, -85, 0, 0, 146, 5428, -35, 0, 0,
+ 0, 147, 0, 4046, 4046, 0, 0, 0, 4046, 0,
};
short yyrindex[] = { 0,
- 0, 2015, 0, 0, 0, 0, 192, 0, 0, 0,
- 0, 56, 0, 3424, 0, 2619, 0, 0, 0, 0,
+ 0, 2000, 0, 0, 0, 0, 189, 0, 0, 0,
+ 0, 56, 0, 3312, 0, 2591, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 2147, 0, 2195, 1676,
- 3509, 0, 0, 0, 1782, 1340, 0, 0, 0, 152,
- 0, 0, 0, 3829, 111, 0, 0, 381, 0, 0,
- 0, 0, 152, 101, 0, 0, 564, 834, 0, 0,
- 0, 436, 5102, 0, -47, 39, 42, 0, 2245, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1830, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 5102, 5102, 0, 72, 0, 17, 0, 0, 0, 72,
- 2718, 0, 74, 72, 74, 72, 72, 152, 0, 0,
- 72, 72, 0, 0, 0, 0, 0, 0, 0, 0,
- 5102, 72, 0, 0, 1882, 0, 3464, 3057, 3097, 3145,
- 0, 1468, 1734, 888, 942, 1016, 1286, 2564, 1395, 0,
- 0, 0, 0, 0, 0, 0, 0, 3185, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 538, 538, 0, 0, 0, 122, 0, 0, 0, 241,
- 0, 0, 0, 0, 0, -41, 0, 0, 0, 0,
- 0, 491, 0, 0, 0, 0, 3549, 3594, 0, 72,
- 72, 72, 72, 74, 72, 0, 72, 72, 3866, 296,
- 357, 0, 0, 136, -10, 169, 0, 0, 5102, 3970,
- 0, 0, 0, 0, 0, 0, 3784, 2294, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, -51, 0, 0, 0, 101, 0, 4038, 4135, 4235,
- 4307, 4400, 74, 72, 72, 72, 72, 72, 0, 72,
- 507, 553, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 5102, 0, 0, 0, 0,
- 155, 0, 0, 0, 4500, 0, 5195, 0, 0, 0,
- 155, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2138, 0, 1930, 1209,
+ 3755, 0, 0, 0, 1818, 1394, 0, 0, 0, 151,
+ 0, 0, 3707, 111, 0, 0, 381, 0, 0, 0,
+ 0, 151, 100, 0, 0, 0, 564, 834, 889, 0,
+ 0, 0, 436, 5378, 0, -49, -46, -43, 0, 2195,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2084, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5378, 5378, 0, 0, 0, 0, -22, 0,
+ 0, 0, 0, 2639, 0, 0, 0, 0, 0, 0,
+ 151, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5378, 0, 0, 0, 1872, 0, 0,
+ 2878, 2923, 2968, 3037, 0, 1719, 1770, 943, 1016, 1286,
+ 1340, 2536, 1664, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3245, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 67, 67, 0, 0, 0, -34,
+ 0, 0, 0, 12, 0, 0, 0, 0, 0, 101,
+ 0, 0, 0, 0, 0, 491, 0, 0, 0, 0,
+ 0, 3360, 3432, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4091, 104, 172, 0, 0, 136, 241,
+ 247, 0, 0, 5378, 4146, 0, 0, 0, 0, 0,
+ 0, 3520, 3640, 2266, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 137, 0, 0,
+ 0, 100, 0, 4220, 4411, 4485, 4530, 4576, 0, 0,
+ 0, 0, 0, 0, 0, 0, 296, 357, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5378, 0, 0, 0, 0, 153, 0, 0, 0,
+ 4841, 0, 5643, 0, 0, 0, 153, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
};
short yygindex[] = { 0,
- -18, 0, 0, 7251, -19, 0, 0, 0, 0, -31,
- 33, 2875, -14, -12, 16, 7373, 76, 147, 0, 0,
- 0, 231, -205, 0, -267, -9,
+ -15, 0, 0, 3236, -67, 0, 0, 0, 0, -29,
+ 171, 4012, -19, 4, 14, 7669, 7480, -4, 0, 0,
+ 0, -113, -201, 0, -232, -18,
};
-#define YYTABLESIZE 7645
-short yytable[] = { 114,
- 82, 47, 246, 269, 127, 301, 273, 114, 253, 81,
- 6, 16, 48, 81, 224, 17, 96, 114, 105, 79,
- 75, 16, 76, 300, 274, 62, 81, 307, 81, 64,
- 122, 119, 120, 306, 97, 49, 75, 82, 76, 40,
- 82, 82, 82, 82, 82, 82, 81, 82, 122, 81,
- 77, 154, 16, 229, 109, 60, 230, 16, 82, 82,
- 82, 69, 82, 82, 247, 84, 77, 74, 123, 124,
- 95, 50, 78, 112, 98, 93, 91, 56, 92, 16,
- 94, 150, 151, 74, 81, 253, 165, 99, 100, 57,
- 59, 58, 60, 82, 82, 253, 60, 60, 60, 60,
- 60, 18, 60, 60, 19, 70, 71, 61, 23, 63,
- 87, 190, 82, 60, 60, 60, 135, 60, 60, 32,
- 33, 65, 66, 82, 82, 80, 118, 96, 109, 97,
- 149, 128, 129, 95, 16, 130, 31, 141, 93, 210,
- 211, 123, 124, 94, 148, 97, 153, 87, 60, 60,
- 87, 87, 87, 87, 166, 87, 159, 87, 161, 167,
- 199, 206, 121, 212, 213, 192, 193, 60, 87, 87,
- 87, 214, 87, 87, 218, 83, 228, 239, 60, 60,
- 121, 276, 277, 256, 280, 293, 294, 304, 305, 310,
- 96, 1, 88, 88, 113, 113, 0, 107, 0, 257,
- 0, 249, 0, 87, 87, 245, 0, 0, 97, 125,
- 0, 3, 4, 5, 0, 221, 222, 223, 114, 114,
- 114, 0, 87, 194, 278, 35, 0, 125, 27, 0,
- 28, 16, 0, 87, 87, 82, 83, 16, 16, 82,
- 83, 17, 17, 0, 250, 251, 0, 16, 16, 122,
- 122, 122, 82, 83, 82, 83, 0, 82, 82, 82,
- 82, 82, 82, 82, 82, 82, 296, 0, 82, 82,
- 0, 0, 82, 83, 82, 82, 83, 0, 16, 16,
- 82, 124, 82, 82, 82, 82, 82, 0, 82, 82,
- 82, 82, 82, 82, 82, 82, 82, 0, 82, 124,
- 82, 82, 82, 82, 82, 16, 16, 90, 292, 0,
- 82, 83, 60, 60, 60, 60, 60, 60, 60, 60,
- 60, 23, 0, 60, 60, 302, 0, 18, 18, 60,
- 19, 19, 32, 33, 0, 60, 116, 60, 60, 60,
+#define YYTABLESIZE 7947
+short yytable[] = { 130,
+ 82, 279, 82, 280, 97, 313, 121, 307, 6, 95,
+ 93, 82, 94, 17, 96, 76, 18, 259, 16, 19,
+ 107, 82, 80, 82, 121, 82, 275, 82, 252, 97,
+ 85, 47, 122, 123, 95, 154, 155, 82, 77, 96,
+ 82, 82, 82, 82, 82, 82, 110, 82, 78, 82,
+ 158, 98, 124, 112, 100, 60, 101, 102, 82, 82,
+ 82, 98, 82, 82, 306, 56, 194, 101, 102, 99,
+ 124, 23, 235, 49, 312, 236, 229, 126, 127, 99,
+ 50, 55, 32, 33, 48, 58, 98, 59, 76, 60,
+ 253, 169, 60, 82, 82, 259, 60, 60, 60, 60,
+ 60, 61, 60, 110, 99, 259, 63, 88, 261, 62,
+ 87, 77, 82, 60, 60, 60, 64, 60, 60, 65,
+ 79, 78, 112, 82, 82, 88, 121, 81, 88, 131,
+ 115, 99, 132, 133, 145, 152, 157, 163, 165, 170,
+ 204, 114, 211, 171, 116, 215, 216, 87, 60, 60,
+ 87, 87, 87, 87, 217, 87, 263, 87, 218, 114,
+ 219, 223, 116, 84, 126, 127, 245, 60, 87, 87,
+ 87, 262, 87, 87, 282, 286, 283, 40, 60, 60,
+ 303, 304, 305, 299, 234, 310, 311, 316, 1, 300,
+ 88, 88, 88, 113, 113, 114, 0, 255, 0, 70,
+ 317, 318, 0, 87, 87, 320, 0, 0, 0, 3,
+ 4, 5, 118, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 87, 0, 302, 121, 121, 121, 83, 84,
+ 118, 251, 284, 87, 87, 0, 0, 83, 84, 17,
+ 17, 92, 18, 18, 0, 19, 19, 83, 84, 83,
+ 84, 83, 84, 83, 84, 138, 0, 82, 82, 82,
+ 82, 82, 82, 82, 82, 82, 16, 16, 82, 82,
+ 153, 124, 124, 124, 82, 83, 84, 226, 227, 228,
+ 82, 122, 82, 82, 82, 82, 82, 125, 82, 82,
+ 82, 82, 82, 82, 82, 82, 82, 23, 82, 122,
+ 82, 82, 82, 82, 82, 125, 196, 197, 32, 33,
+ 0, 0, 60, 60, 60, 60, 60, 60, 60, 60,
+ 60, 0, 0, 60, 60, 0, 88, 88, 88, 60,
+ 0, 88, 0, 0, 0, 60, 115, 60, 60, 60,
60, 60, 0, 60, 60, 60, 60, 60, 60, 60,
- 60, 60, 0, 60, 116, 60, 60, 60, 60, 60,
- 16, 16, 31, 31, 0, 0, 0, 87, 87, 87,
+ 60, 60, 0, 60, 115, 60, 60, 60, 60, 60,
+ 114, 114, 114, 116, 116, 116, 0, 87, 87, 87,
87, 87, 87, 87, 87, 87, 0, 0, 87, 87,
- 55, 121, 121, 121, 87, 0, 0, 0, 0, 0,
- 87, 0, 87, 87, 87, 87, 87, 118, 87, 87,
+ 55, 0, 0, 0, 87, 0, 0, 256, 257, 0,
+ 87, 0, 87, 87, 87, 87, 87, 117, 87, 87,
87, 87, 87, 87, 87, 87, 87, 0, 87, 0,
- 87, 87, 87, 87, 87, 118, 0, 55, 0, 0,
- 55, 55, 55, 55, 55, 55, 0, 55, 125, 125,
- 125, 0, 0, 0, 0, 85, 0, 0, 55, 55,
- 0, 0, 55, 55, 11, 0, 0, 255, 12, 13,
- 0, 0, 0, 14, 15, 0, 0, 16, 16, 0,
- 0, 0, 0, 0, 0, 16, 0, 17, 18, 19,
- 0, 21, 85, 55, 55, 33, 85, 85, 85, 85,
- 85, 0, 85, 26, 0, 29, 30, 31, 32, 33,
- 23, 0, 55, 85, 85, 33, 0, 33, 33, 0,
- 124, 124, 124, 55, 55, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 297, 298,
- 299, 0, 0, 0, 0, 0, 0, 23, 85, 85,
- 23, 23, 23, 23, 23, 23, 0, 23, 311, 312,
- 0, 0, 0, 314, 0, 0, 0, 115, 23, 23,
- 23, 0, 23, 23, 0, 116, 116, 116, 85, 85,
- 0, 0, 0, 52, 0, 115, 0, 0, 0, 16,
- 0, 0, 0, 0, 0, 0, 0, 0, 88, 0,
+ 87, 87, 87, 87, 87, 117, 0, 55, 0, 0,
+ 55, 55, 55, 55, 55, 55, 0, 55, 0, 0,
+ 0, 118, 118, 118, 0, 85, 0, 0, 55, 55,
+ 0, 0, 55, 55, 0, 0, 0, 0, 0, 0,
+ 0, 0, 298, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 308,
+ 0, 0, 85, 55, 55, 85, 85, 85, 85, 85,
+ 85, 0, 85, 0, 0, 0, 0, 0, 0, 0,
+ 23, 0, 55, 85, 85, 85, 0, 85, 85, 0,
+ 122, 122, 122, 55, 55, 0, 125, 125, 125, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 23, 85, 85,
+ 23, 23, 23, 23, 23, 23, 0, 23, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 23, 23,
+ 23, 0, 23, 23, 0, 115, 115, 115, 85, 85,
+ 0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 23, 23, 0, 0, 0, 0, 0,
- 0, 0, 0, 117, 0, 0, 88, 0, 0, 88,
- 52, 0, 23, 33, 52, 52, 52, 52, 52, 0,
- 52, 117, 0, 23, 23, 16, 118, 118, 118, 0,
- 0, 52, 52, 33, 0, 33, 33, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 52, 0, 23, 52, 52, 52, 52, 52, 52, 0,
+ 52, 0, 0, 23, 23, 0, 117, 117, 117, 0,
+ 0, 52, 52, 52, 0, 52, 52, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 55, 55, 55,
55, 55, 55, 55, 55, 55, 0, 0, 55, 55,
0, 0, 0, 0, 55, 0, 52, 0, 0, 0,
- 55, 88, 55, 55, 55, 55, 55, 0, 55, 55,
+ 55, 0, 55, 55, 55, 55, 55, 0, 55, 55,
55, 55, 55, 55, 55, 55, 55, 0, 55, 0,
55, 55, 55, 55, 55, 0, 52, 52, 0, 0,
- 0, 0, 85, 85, 33, 85, 85, 85, 33, 33,
- 85, 0, 0, 33, 33, 0, 0, 0, 0, 85,
- 0, 0, 0, 0, 0, 33, 0, 33, 33, 33,
- 85, 33, 0, 85, 33, 33, 33, 33, 33, 33,
- 33, 33, 0, 33, 0, 33, 33, 33, 33, 33,
+ 0, 0, 85, 85, 85, 85, 85, 85, 85, 85,
+ 85, 0, 0, 85, 85, 0, 0, 0, 0, 85,
+ 0, 0, 0, 0, 0, 85, 0, 85, 85, 85,
+ 85, 85, 0, 85, 85, 85, 85, 85, 85, 85,
+ 85, 85, 0, 85, 0, 85, 85, 85, 85, 85,
0, 0, 0, 0, 0, 0, 0, 23, 23, 23,
23, 23, 23, 23, 23, 23, 0, 0, 23, 23,
- 0, 0, 0, 0, 23, 0, 115, 115, 115, 0,
+ 0, 0, 0, 0, 23, 0, 0, 0, 0, 0,
23, 0, 23, 23, 23, 23, 23, 0, 23, 23,
0, 23, 23, 23, 23, 23, 23, 0, 23, 0,
- 23, 23, 23, 23, 23, 16, 16, 88, 88, 88,
- 0, 0, 88, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 117, 117, 117, 0, 0, 0, 0, 0,
- 52, 52, 33, 52, 52, 52, 33, 33, 52, 0,
- 0, 33, 33, 51, 0, 0, 0, 52, 0, 0,
- 0, 16, 16, 33, 0, 33, 33, 33, 52, 33,
- 0, 52, 33, 33, 33, 33, 33, 33, 33, 33,
- 0, 33, 0, 33, 33, 33, 33, 33, 0, 0,
- 51, 0, 0, 33, 51, 51, 51, 51, 51, 0,
- 51, 0, 0, 0, 0, 0, 0, 41, 0, 0,
- 0, 51, 51, 33, 0, 33, 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, 0, 0, 41, 0, 51, 33, 41, 41,
- 41, 41, 41, 0, 41, 0, 0, 0, 0, 0,
- 0, 42, 0, 0, 0, 41, 41, 33, 0, 33,
- 33, 0, 0, 0, 0, 0, 51, 51, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 42, 0,
- 41, 33, 42, 42, 42, 42, 42, 0, 42, 0,
+ 23, 23, 23, 23, 23, 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,
+ 52, 52, 52, 52, 52, 52, 52, 52, 52, 0,
+ 0, 52, 52, 37, 0, 0, 0, 52, 0, 0,
+ 0, 0, 0, 52, 0, 52, 52, 52, 52, 52,
+ 0, 52, 52, 52, 52, 52, 52, 52, 52, 52,
+ 0, 52, 0, 52, 52, 52, 52, 52, 0, 0,
+ 37, 0, 0, 37, 37, 37, 37, 37, 37, 0,
+ 37, 0, 0, 0, 0, 0, 0, 0, 51, 0,
+ 0, 37, 37, 37, 0, 37, 37, 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, 51, 37, 37, 51, 51,
+ 51, 51, 51, 51, 0, 51, 0, 0, 0, 0,
+ 0, 0, 42, 0, 0, 37, 51, 51, 51, 0,
+ 51, 51, 0, 0, 0, 0, 37, 37, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 42,
- 42, 33, 0, 33, 33, 0, 0, 0, 0, 0,
- 41, 41, 0, 0, 0, 43, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 42, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 43, 0, 0, 33, 43, 43, 43, 43,
- 43, 0, 43, 0, 42, 42, 0, 0, 0, 0,
- 0, 0, 0, 43, 43, 33, 0, 33, 33, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 51, 51, 33, 51, 51, 51, 33, 33, 51, 0,
- 0, 33, 33, 0, 0, 0, 0, 51, 43, 0,
- 0, 0, 0, 33, 0, 33, 33, 33, 51, 33,
- 0, 51, 33, 33, 33, 33, 33, 33, 33, 33,
- 0, 33, 0, 33, 33, 33, 33, 33, 43, 43,
- 0, 0, 0, 0, 41, 41, 33, 41, 41, 41,
- 33, 33, 41, 0, 0, 33, 33, 0, 0, 0,
- 0, 41, 0, 0, 0, 0, 0, 33, 0, 33,
- 33, 33, 41, 33, 0, 41, 33, 33, 33, 33,
- 33, 33, 33, 33, 0, 33, 0, 33, 33, 33,
- 33, 33, 0, 0, 0, 0, 0, 0, 42, 42,
- 33, 42, 42, 42, 33, 33, 42, 0, 0, 33,
- 33, 0, 0, 0, 0, 42, 0, 0, 0, 0,
- 0, 33, 0, 33, 33, 33, 42, 33, 0, 42,
- 33, 33, 33, 33, 33, 33, 33, 33, 0, 33,
- 0, 33, 33, 33, 33, 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, 0, 43, 43, 33, 43, 43, 43, 33, 33,
- 43, 0, 0, 33, 33, 44, 0, 0, 0, 43,
- 0, 0, 0, 0, 0, 33, 0, 33, 33, 33,
- 43, 33, 0, 43, 33, 33, 33, 33, 33, 33,
- 33, 33, 0, 33, 0, 33, 33, 33, 33, 33,
- 0, 0, 44, 0, 0, 33, 44, 44, 44, 44,
- 44, 0, 44, 0, 0, 0, 0, 0, 0, 36,
- 0, 0, 0, 44, 44, 33, 0, 33, 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, 0, 0, 36, 0, 44, 36,
- 36, 36, 36, 36, 36, 0, 36, 0, 0, 0,
- 0, 0, 0, 0, 35, 0, 0, 36, 36, 36,
- 0, 36, 36, 0, 0, 0, 0, 0, 44, 44,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 35, 36, 36, 35, 35, 35, 35, 35, 35,
- 0, 35, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 36, 35, 35, 35, 0, 35, 0, 0, 0,
- 0, 0, 36, 36, 0, 0, 0, 39, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 35, 35, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 35, 33, 39, 0,
- 39, 39, 39, 0, 0, 0, 0, 35, 35, 0,
- 0, 0, 0, 0, 0, 39, 39, 33, 0, 33,
- 33, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 44, 44, 33, 44, 44, 44, 33, 33,
- 44, 0, 0, 33, 33, 0, 0, 0, 0, 44,
- 39, 0, 0, 0, 0, 33, 0, 33, 33, 33,
- 44, 33, 0, 44, 33, 33, 33, 33, 33, 33,
- 33, 33, 0, 33, 0, 33, 33, 33, 33, 33,
- 39, 39, 0, 0, 0, 0, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 0, 0, 36, 36, 0,
- 0, 0, 0, 36, 0, 0, 0, 0, 0, 36,
- 0, 36, 36, 36, 36, 36, 0, 0, 36, 36,
- 36, 36, 36, 36, 36, 36, 0, 36, 0, 36,
- 0, 0, 36, 36, 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, 0, 0, 0, 35, 14, 35, 35, 35, 35,
- 35, 0, 35, 0, 0, 35, 35, 35, 35, 35,
- 35, 0, 35, 0, 35, 35, 35, 35, 35, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 14, 0, 0, 14, 0,
- 14, 0, 0, 0, 39, 39, 33, 39, 39, 39,
- 33, 33, 39, 40, 14, 33, 33, 0, 0, 0,
- 0, 39, 0, 0, 0, 0, 0, 33, 0, 33,
- 33, 33, 39, 33, 0, 39, 33, 33, 33, 33,
- 33, 33, 33, 33, 0, 33, 0, 33, 33, 33,
- 33, 33, 0, 33, 40, 0, 40, 40, 40, 0,
- 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 40, 40, 33, 0, 33, 33, 0, 14, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 33, 33, 0, 0, 33, 40, 0, 0, 34,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 33,
- 33, 33, 0, 33, 33, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 40, 40, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 33,
- 34, 0, 0, 34, 33, 0, 0, 0, 0, 0,
- 0, 15, 0, 0, 0, 0, 0, 34, 34, 33,
- 0, 33, 33, 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, 0, 0,
- 0, 15, 34, 0, 15, 0, 15, 0, 0, 0,
- 0, 0, 14, 14, 14, 14, 14, 14, 14, 14,
- 15, 0, 0, 14, 14, 0, 0, 0, 0, 0,
- 0, 0, 34, 34, 0, 14, 0, 14, 14, 14,
- 14, 14, 0, 0, 0, 0, 14, 14, 14, 14,
- 0, 0, 0, 14, 0, 14, 14, 14, 14, 14,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 40, 40, 33, 40, 40, 40, 33, 33, 40, 0,
- 0, 33, 33, 35, 15, 0, 27, 40, 28, 0,
- 0, 0, 0, 33, 6, 33, 33, 33, 40, 33,
- 0, 40, 33, 33, 33, 33, 33, 33, 33, 33,
- 0, 33, 0, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 0, 0, 33,
- 33, 0, 0, 0, 6, 0, 0, 6, 0, 6,
- 0, 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, 34, 34, 33, 34,
- 34, 34, 33, 33, 34, 0, 0, 33, 33, 0,
- 35, 103, 0, 27, 0, 28, 0, 0, 0, 33,
- 0, 33, 33, 33, 34, 33, 0, 34, 33, 33,
- 33, 33, 33, 33, 33, 33, 0, 33, 0, 33,
- 33, 33, 33, 33, 0, 0, 0, 6, 15, 15,
- 15, 15, 15, 15, 15, 15, 12, 0, 0, 15,
+ 0, 51, 42, 42, 42, 42, 42, 42, 0, 42,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 42, 42, 42, 0, 42, 42, 0, 0, 0, 0,
+ 0, 51, 51, 0, 0, 43, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 42, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 43, 0, 0, 43, 43, 43, 43, 43,
+ 43, 0, 43, 0, 0, 42, 42, 0, 0, 0,
+ 0, 0, 0, 43, 43, 43, 0, 43, 43, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 0, 0, 0, 0, 37, 43, 0,
+ 0, 0, 0, 37, 0, 37, 37, 37, 37, 37,
+ 0, 37, 37, 37, 37, 37, 37, 37, 37, 37,
+ 0, 37, 0, 37, 0, 0, 37, 37, 43, 43,
+ 0, 0, 0, 0, 0, 51, 51, 51, 51, 51,
+ 51, 51, 51, 51, 0, 0, 51, 51, 0, 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, 0, 0, 0, 0, 42,
+ 42, 42, 42, 42, 42, 42, 42, 42, 14, 0,
+ 42, 42, 0, 0, 0, 0, 42, 0, 0, 0,
+ 0, 0, 42, 0, 42, 42, 42, 42, 42, 0,
+ 42, 42, 42, 42, 42, 42, 42, 42, 42, 0,
+ 42, 0, 42, 42, 42, 42, 42, 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, 43, 43, 43, 43, 43, 43, 43, 43,
+ 43, 0, 0, 43, 43, 44, 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,
+ 0, 0, 44, 0, 0, 44, 44, 44, 44, 44,
+ 44, 14, 44, 0, 0, 0, 0, 0, 0, 45,
+ 0, 0, 0, 44, 44, 44, 0, 44, 44, 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, 45, 0, 44, 45,
+ 45, 45, 45, 45, 45, 0, 45, 0, 0, 0,
+ 0, 0, 0, 37, 0, 0, 0, 45, 45, 45,
+ 0, 45, 45, 0, 0, 0, 0, 0, 44, 44,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 37, 0, 45, 37, 37, 37, 37, 37, 37, 0,
+ 37, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 37, 37, 37, 0, 37, 37, 0, 0, 0,
+ 0, 0, 45, 45, 0, 14, 14, 14, 14, 14,
+ 14, 14, 14, 0, 0, 0, 14, 14, 0, 0,
+ 0, 0, 0, 0, 0, 0, 37, 37, 14, 0,
+ 14, 14, 14, 14, 14, 0, 0, 0, 0, 14,
+ 14, 14, 14, 0, 0, 37, 14, 0, 14, 14,
+ 14, 14, 14, 0, 0, 0, 37, 37, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 44, 44, 44, 44, 44, 44, 44, 44,
+ 44, 0, 0, 44, 44, 0, 0, 0, 0, 44,
+ 0, 66, 0, 0, 27, 44, 28, 44, 44, 44,
+ 44, 44, 0, 44, 44, 44, 44, 44, 44, 44,
+ 44, 44, 0, 44, 0, 44, 44, 44, 44, 44,
+ 0, 0, 0, 0, 0, 0, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 0, 0, 45, 45, 0,
+ 0, 0, 0, 45, 0, 0, 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, 35, 0, 0, 27, 0, 28,
+ 37, 37, 37, 37, 37, 37, 37, 37, 37, 0,
+ 0, 37, 37, 36, 0, 0, 0, 37, 0, 0,
+ 0, 0, 0, 37, 0, 37, 37, 37, 37, 37,
+ 0, 0, 37, 37, 37, 37, 37, 37, 37, 37,
+ 0, 37, 0, 37, 0, 0, 37, 37, 0, 0,
+ 36, 0, 0, 36, 36, 36, 36, 36, 36, 0,
+ 36, 0, 0, 0, 0, 0, 0, 0, 40, 0,
+ 0, 36, 36, 36, 0, 36, 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, 36, 36, 40, 40,
+ 0, 40, 40, 40, 0, 0, 0, 0, 0, 41,
+ 0, 0, 0, 0, 0, 36, 40, 40, 40, 0,
+ 40, 40, 0, 0, 12, 13, 36, 36, 0, 14,
15, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 16, 0, 17, 18, 19, 0, 21, 0, 41,
+ 41, 40, 41, 41, 41, 0, 0, 33, 0, 26,
+ 0, 0, 30, 31, 32, 33, 0, 41, 41, 41,
+ 0, 41, 41, 0, 0, 0, 0, 0, 0, 0,
+ 0, 40, 40, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 33, 33, 0,
+ 0, 33, 41, 11, 0, 126, 127, 12, 13, 0,
+ 0, 15, 14, 15, 0, 33, 33, 33, 0, 33,
+ 33, 0, 0, 0, 16, 0, 17, 18, 19, 0,
+ 21, 0, 41, 41, 0, 22, 23, 24, 25, 0,
+ 0, 0, 26, 0, 29, 30, 31, 32, 33, 0,
+ 33, 15, 0, 0, 15, 0, 15, 0, 0, 0,
+ 36, 36, 36, 36, 36, 36, 36, 36, 36, 7,
+ 15, 36, 36, 0, 0, 0, 0, 36, 0, 0,
+ 33, 33, 0, 36, 0, 36, 36, 36, 36, 36,
+ 0, 36, 0, 0, 36, 36, 36, 36, 36, 36,
+ 0, 36, 0, 36, 36, 36, 36, 36, 0, 7,
+ 0, 0, 7, 0, 7, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 0, 0, 40, 40, 7, 0,
+ 0, 0, 40, 0, 15, 0, 0, 0, 40, 6,
+ 40, 40, 40, 40, 40, 0, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 0, 40, 0, 40, 40,
+ 40, 40, 40, 0, 0, 0, 41, 41, 41, 41,
+ 41, 41, 41, 41, 41, 0, 0, 41, 41, 6,
+ 0, 0, 6, 41, 6, 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, 33, 33, 33, 33, 33, 33,
+ 33, 33, 33, 34, 0, 33, 33, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 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, 6, 34, 34, 0, 0, 34, 15, 15,
+ 15, 15, 15, 15, 15, 15, 0, 12, 0, 15,
+ 15, 34, 34, 34, 0, 34, 34, 0, 0, 0,
0, 15, 0, 15, 15, 15, 15, 15, 0, 0,
0, 0, 15, 15, 15, 15, 0, 0, 0, 15,
- 0, 15, 15, 15, 15, 15, 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, 0,
- 0, 0, 11, 0, 123, 124, 12, 13, 0, 0,
- 0, 14, 15, 0, 7, 0, 0, 7, 0, 7,
- 0, 0, 0, 16, 5, 17, 18, 19, 0, 21,
- 0, 0, 0, 7, 22, 23, 24, 25, 0, 0,
- 0, 26, 0, 29, 30, 31, 32, 33, 0, 12,
- 0, 6, 6, 6, 0, 0, 0, 6, 6, 0,
- 0, 0, 6, 6, 5, 0, 0, 5, 0, 5,
- 0, 0, 0, 2, 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, 11,
- 0, 0, 0, 12, 13, 0, 0, 0, 14, 15,
- 0, 0, 0, 2, 0, 0, 2, 0, 2, 0,
- 16, 0, 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, 5, 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, 12, 12, 12, 12, 0, 12, 12,
- 12, 0, 0, 0, 12, 12, 2, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0,
- 0, 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,
+ 0, 15, 15, 15, 15, 15, 34, 12, 0, 0,
+ 12, 0, 12, 0, 0, 0, 7, 7, 7, 7,
+ 7, 7, 7, 7, 5, 0, 12, 7, 7, 0,
+ 0, 0, 0, 0, 0, 0, 34, 34, 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, 5, 0, 0, 5, 0, 5,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 6, 6, 6, 0,
+ 12, 0, 6, 6, 0, 2, 0, 6, 6, 0,
+ 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, 2, 0, 0, 2, 0,
+ 2, 0, 0, 0, 0, 0, 0, 5, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 0,
+ 0, 34, 34, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 34, 0, 34, 34, 34, 34, 34,
+ 0, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 0, 34, 0, 34, 34, 34, 34, 34, 2, 0,
+ 0, 0, 0, 0, 12, 12, 12, 12, 0, 12,
+ 12, 12, 0, 0, 0, 12, 12, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 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,
- 0, 0, 0, 0, 5, 0, 5, 5, 5, 5,
- 5, 0, 0, 0, 0, 5, 5, 5, 5, 0,
+ 0, 0, 5, 5, 0, 0, 66, 237, 0, 27,
+ 238, 28, 0, 0, 5, 0, 5, 5, 5, 5,
+ 5, 0, 0, 0, 0, 5, 5, 5, 5, 86,
0, 0, 5, 0, 5, 5, 5, 5, 5, 0,
- 2, 2, 2, 0, 0, 0, 2, 2, 0, 0,
- 0, 2, 2, 58, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 66, 239, 0, 27, 240, 28, 0,
+ 0, 0, 2, 2, 2, 0, 0, 0, 2, 2,
+ 0, 0, 0, 2, 2, 58, 86, 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, 0, 0, 2, 2, 2, 2, 0, 0,
- 0, 2, 0, 2, 2, 2, 2, 2, 0, 0,
- 58, 0, 0, 58, 58, 58, 58, 58, 58, 0,
- 58, 0, 0, 0, 0, 0, 0, 0, 54, 0,
- 0, 58, 58, 58, 0, 58, 58, 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, 54, 58, 58, 54, 54,
- 54, 54, 54, 54, 0, 54, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 58, 54, 54, 0, 0,
- 54, 54, 0, 0, 0, 0, 58, 58, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 54, 54, 0, 0, 0, 0, 56, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 54, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 54, 54, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 56, 0, 0, 0, 56, 56,
- 0, 56, 0, 0, 56, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 56, 56, 56, 0, 56,
- 16, 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,
- 56, 56, 0, 0, 0, 0, 0, 0, 0, 0,
- 58, 58, 58, 58, 58, 58, 58, 58, 58, 56,
- 0, 58, 58, 0, 0, 0, 0, 58, 0, 0,
- 56, 56, 0, 58, 0, 58, 58, 58, 58, 58,
- 0, 58, 58, 58, 58, 0, 58, 58, 58, 58,
- 0, 58, 0, 58, 58, 58, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 54, 54, 54, 54, 54,
- 54, 54, 54, 54, 0, 0, 54, 54, 54, 0,
- 0, 0, 54, 0, 0, 0, 0, 0, 54, 0,
- 54, 54, 54, 54, 54, 0, 54, 54, 54, 54,
- 0, 54, 54, 54, 54, 0, 54, 0, 54, 54,
- 54, 0, 0, 104, 54, 106, 0, 0, 0, 0,
- 110, 111, 0, 114, 116, 117, 0, 54, 54, 121,
- 122, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 132, 0, 0, 0, 137,
- 138, 139, 140, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 56, 56, 0, 56, 56, 56,
- 0, 0, 56, 0, 0, 0, 158, 0, 0, 0,
- 0, 56, 54, 0, 0, 0, 0, 0, 0, 186,
- 0, 0, 56, 0, 0, 56, 16, 16, 56, 56,
- 56, 56, 56, 56, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 186, 186, 0, 0, 0, 197,
- 198, 0, 0, 200, 201, 202, 203, 205, 0, 0,
- 0, 0, 207, 208, 0, 54, 54, 0, 0, 0,
- 215, 0, 0, 0, 216, 0, 25, 0, 0, 0,
- 0, 0, 0, 0, 186, 227, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 252, 0,
- 0, 186, 0, 25, 0, 0, 27, 25, 25, 0,
- 25, 0, 0, 25, 264, 0, 265, 0, 266, 0,
- 267, 0, 268, 0, 25, 25, 25, 270, 25, 16,
- 0, 0, 271, 272, 0, 0, 0, 0, 0, 0,
- 54, 186, 0, 27, 0, 0, 0, 27, 27, 0,
- 27, 0, 0, 27, 26, 0, 0, 0, 0, 25,
- 25, 0, 0, 0, 27, 27, 27, 0, 27, 16,
- 0, 0, 186, 186, 186, 186, 0, 0, 25, 0,
- 186, 0, 0, 0, 0, 186, 0, 0, 0, 25,
- 25, 26, 186, 186, 57, 26, 26, 186, 26, 27,
- 27, 26, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 26, 26, 26, 0, 26, 16, 27, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
- 27, 57, 0, 0, 0, 57, 57, 0, 57, 0,
- 0, 57, 0, 0, 0, 0, 0, 26, 26, 0,
- 0, 0, 57, 57, 57, 0, 57, 16, 0, 0,
- 0, 0, 0, 0, 0, 0, 26, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 26, 26, 35,
- 0, 0, 27, 0, 28, 0, 0, 57, 57, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 87,
- 0, 88, 0, 0, 0, 0, 57, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 57, 57, 0,
- 0, 0, 0, 25, 25, 0, 25, 25, 25, 0,
- 0, 25, 0, 0, 0, 0, 0, 0, 0, 0,
- 25, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 25, 0, 0, 25, 16, 16, 25, 25, 25,
- 25, 25, 25, 27, 27, 0, 27, 27, 27, 0,
- 0, 27, 0, 0, 0, 0, 0, 0, 0, 0,
- 27, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 27, 0, 0, 27, 16, 16, 27, 27, 27,
- 27, 27, 27, 0, 0, 0, 0, 0, 0, 0,
- 0, 26, 26, 0, 26, 26, 26, 0, 0, 26,
- 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
- 0, 0, 0, 88, 0, 0, 0, 0, 0, 26,
- 0, 0, 26, 16, 16, 26, 26, 26, 26, 26,
- 26, 57, 57, 0, 57, 57, 57, 0, 0, 57,
- 0, 0, 0, 0, 0, 0, 0, 0, 57, 0,
- 88, 0, 0, 29, 88, 88, 0, 88, 0, 57,
- 88, 0, 57, 16, 16, 57, 57, 57, 57, 57,
- 57, 88, 88, 88, 0, 88, 88, 0, 11, 0,
+ 0, 0, 58, 0, 0, 58, 58, 58, 58, 58,
+ 58, 0, 58, 0, 0, 0, 0, 0, 0, 0,
+ 54, 0, 0, 58, 58, 58, 0, 58, 58, 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, 54, 58, 58,
+ 54, 54, 54, 54, 54, 54, 0, 54, 56, 0,
+ 0, 0, 0, 0, 0, 0, 0, 58, 54, 54,
+ 0, 0, 54, 54, 0, 0, 0, 0, 58, 58,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 56, 0, 0, 0, 56,
+ 56, 0, 56, 54, 54, 56, 0, 0, 0, 12,
+ 13, 0, 0, 0, 14, 15, 56, 56, 56, 0,
+ 56, 56, 54, 0, 0, 0, 16, 0, 17, 18,
+ 19, 0, 21, 54, 54, 0, 0, 22, 23, 24,
+ 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
+ 33, 56, 56, 0, 0, 0, 12, 13, 0, 0,
+ 0, 14, 15, 0, 0, 0, 0, 0, 0, 0,
+ 56, 0, 0, 16, 0, 17, 18, 19, 0, 21,
+ 0, 56, 56, 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, 58, 58, 58, 58, 58, 58, 58, 58,
+ 58, 0, 0, 58, 58, 0, 0, 0, 0, 58,
+ 0, 0, 0, 0, 0, 58, 0, 58, 58, 58,
+ 58, 58, 0, 58, 58, 58, 58, 0, 58, 58,
+ 58, 58, 0, 58, 0, 58, 58, 58, 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, 0, 0, 0, 0,
+ 54, 0, 54, 54, 54, 54, 54, 29, 54, 54,
+ 54, 54, 0, 54, 54, 54, 54, 0, 54, 0,
+ 54, 54, 54, 0, 0, 56, 56, 56, 56, 56,
+ 56, 0, 0, 56, 0, 0, 0, 0, 0, 0,
+ 0, 0, 56, 0, 29, 0, 0, 0, 29, 29,
+ 0, 29, 25, 56, 29, 0, 56, 56, 56, 56,
+ 56, 56, 56, 56, 56, 29, 29, 29, 56, 29,
+ 29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 25,
+ 0, 0, 0, 25, 25, 0, 25, 27, 0, 25,
+ 29, 29, 0, 0, 0, 0, 0, 0, 0, 0,
+ 25, 25, 25, 0, 25, 25, 0, 0, 0, 29,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 29, 29, 0, 0, 27, 0, 0, 0, 27, 27,
+ 0, 27, 0, 0, 27, 25, 25, 0, 0, 0,
+ 0, 0, 0, 0, 0, 27, 27, 27, 0, 27,
+ 27, 0, 0, 0, 25, 0, 26, 0, 0, 0,
+ 0, 0, 0, 0, 0, 25, 25, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 27, 27, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 26, 0, 0, 0, 26, 26, 27,
+ 26, 0, 0, 26, 0, 0, 0, 0, 0, 0,
+ 27, 27, 0, 0, 26, 26, 26, 0, 26, 26,
+ 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, 26,
+ 26, 0, 0, 0, 29, 29, 29, 29, 29, 29,
+ 0, 0, 29, 0, 0, 0, 0, 0, 26, 0,
+ 0, 29, 0, 0, 0, 0, 0, 0, 0, 26,
+ 26, 0, 29, 0, 0, 29, 29, 29, 29, 29,
+ 29, 29, 29, 29, 0, 0, 0, 29, 0, 25,
+ 25, 25, 25, 25, 25, 0, 0, 25, 0, 0,
+ 0, 0, 0, 0, 0, 0, 25, 0, 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, 0, 27, 27, 27, 27, 27, 27,
+ 0, 0, 27, 0, 0, 0, 0, 0, 0, 0,
+ 0, 27, 0, 0, 57, 0, 0, 0, 0, 0,
+ 0, 0, 27, 0, 0, 27, 27, 27, 27, 27,
+ 27, 27, 27, 27, 0, 0, 0, 27, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 57, 103, 104, 0, 57, 57, 0, 57, 0,
+ 0, 57, 0, 26, 26, 26, 26, 26, 26, 0,
+ 0, 26, 57, 57, 57, 0, 57, 57, 0, 0,
+ 26, 88, 0, 0, 0, 0, 134, 0, 136, 137,
+ 0, 26, 0, 0, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 0, 0, 0, 26, 57, 57, 0,
+ 0, 0, 0, 0, 0, 0, 159, 160, 88, 0,
+ 0, 0, 88, 88, 0, 88, 57, 0, 88, 89,
+ 0, 0, 0, 0, 0, 0, 0, 57, 57, 88,
+ 88, 88, 0, 88, 88, 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,
+ 89, 89, 0, 89, 88, 88, 89, 0, 0, 214,
+ 0, 0, 0, 0, 0, 0, 0, 89, 89, 89,
+ 222, 89, 224, 88, 225, 0, 0, 0, 0, 0,
+ 0, 90, 0, 0, 88, 88, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 247, 0, 0, 0,
+ 0, 0, 89, 89, 0, 0, 0, 0, 0, 0,
+ 0, 264, 265, 266, 267, 268, 0, 0, 90, 0,
+ 0, 89, 90, 90, 0, 90, 0, 0, 90, 0,
+ 0, 0, 89, 89, 0, 0, 0, 0, 0, 90,
+ 90, 90, 0, 90, 0, 0, 0, 0, 0, 0,
+ 0, 57, 57, 57, 57, 57, 57, 0, 0, 57,
+ 292, 0, 0, 0, 294, 295, 296, 0, 57, 20,
+ 301, 0, 0, 0, 90, 90, 0, 0, 0, 57,
+ 0, 0, 57, 57, 57, 57, 57, 57, 57, 57,
+ 57, 0, 0, 90, 57, 314, 315, 0, 0, 0,
+ 0, 319, 0, 0, 90, 90, 20, 0, 0, 0,
+ 20, 20, 0, 20, 0, 0, 20, 0, 88, 88,
+ 88, 88, 88, 88, 0, 0, 88, 20, 20, 20,
+ 0, 20, 0, 0, 0, 88, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 88, 0, 0, 88,
+ 88, 88, 0, 0, 0, 0, 88, 88, 0, 0,
+ 0, 88, 20, 20, 0, 0, 89, 89, 89, 89,
+ 89, 89, 0, 0, 89, 0, 0, 0, 0, 66,
+ 156, 20, 27, 89, 28, 0, 0, 0, 0, 35,
+ 0, 0, 20, 20, 89, 0, 0, 89, 89, 89,
+ 0, 0, 86, 0, 89, 89, 0, 0, 0, 89,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 35, 0, 0, 0,
+ 35, 35, 0, 35, 0, 0, 35, 0, 90, 90,
+ 90, 90, 90, 90, 0, 0, 90, 35, 35, 35,
+ 0, 35, 0, 0, 0, 90, 86, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 90, 0, 0, 90,
+ 90, 90, 0, 0, 0, 0, 90, 90, 0, 0,
+ 0, 90, 35, 35, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 86, 0, 0, 0, 86, 86, 0,
+ 0, 35, 0, 86, 16, 0, 0, 0, 0, 0,
+ 0, 0, 35, 35, 86, 86, 86, 0, 86, 0,
+ 0, 0, 0, 0, 0, 0, 20, 20, 20, 20,
+ 20, 20, 0, 0, 20, 0, 0, 0, 0, 0,
+ 0, 16, 0, 20, 0, 16, 16, 0, 16, 86,
+ 86, 16, 0, 0, 20, 0, 0, 20, 20, 20,
+ 0, 0, 16, 16, 20, 20, 0, 0, 86, 20,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 86,
+ 86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 16, 16, 0,
0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
- 29, 0, 0, 0, 29, 29, 0, 29, 16, 16,
- 29, 17, 18, 19, 0, 21, 88, 88, 0, 0,
- 0, 29, 29, 0, 0, 86, 16, 26, 0, 29,
- 30, 31, 32, 33, 0, 88, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 16, 88, 88, 89, 16,
- 16, 0, 16, 0, 0, 16, 29, 29, 0, 0,
- 0, 0, 0, 0, 0, 0, 16, 16, 0, 0,
- 0, 16, 0, 0, 0, 29, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 89, 29, 29, 0, 89,
- 89, 0, 89, 90, 0, 89, 0, 0, 0, 0,
- 0, 16, 16, 0, 0, 0, 89, 89, 0, 0,
- 0, 16, 0, 0, 0, 0, 0, 0, 0, 0,
- 16, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 90, 16, 16, 0, 90, 90, 0, 90, 0, 0,
- 90, 89, 89, 0, 0, 0, 0, 0, 0, 0,
- 0, 90, 90, 0, 0, 0, 16, 0, 0, 0,
- 89, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 89, 89, 0, 35, 231, 0, 27, 232, 28,
- 88, 88, 0, 88, 88, 88, 90, 90, 88, 0,
- 0, 0, 0, 0, 87, 0, 88, 88, 0, 0,
- 0, 0, 0, 0, 0, 90, 0, 0, 88, 0,
- 0, 88, 88, 88, 0, 0, 90, 90, 88, 88,
- 29, 29, 0, 29, 29, 29, 0, 0, 29, 0,
- 0, 0, 0, 0, 0, 0, 0, 29, 0, 0,
- 35, 0, 0, 27, 0, 28, 0, 0, 29, 0,
- 0, 29, 16, 16, 29, 29, 29, 29, 29, 185,
- 0, 0, 0, 0, 0, 16, 16, 0, 16, 16,
- 16, 0, 0, 16, 0, 0, 0, 0, 0, 0,
- 0, 0, 16, 20, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 16, 0, 0, 16, 16, 16, 0,
- 0, 0, 0, 0, 0, 89, 89, 0, 89, 89,
- 89, 0, 0, 89, 0, 0, 0, 0, 0, 0,
- 20, 0, 89, 183, 20, 20, 0, 20, 86, 0,
- 20, 0, 0, 89, 0, 0, 89, 16, 16, 0,
- 0, 20, 20, 0, 0, 0, 16, 0, 0, 0,
- 90, 90, 0, 90, 90, 90, 0, 0, 90, 0,
- 0, 0, 0, 0, 0, 86, 0, 90, 0, 86,
- 86, 0, 0, 0, 0, 86, 20, 20, 90, 0,
- 0, 90, 16, 16, 0, 0, 86, 86, 0, 0,
- 0, 16, 0, 11, 0, 20, 0, 12, 13, 0,
- 0, 0, 14, 15, 0, 110, 20, 20, 110, 0,
- 110, 0, 0, 0, 16, 0, 17, 18, 19, 0,
- 21, 86, 86, 0, 110, 22, 23, 24, 25, 85,
- 86, 0, 26, 0, 29, 30, 31, 32, 33, 0,
+ 0, 0, 0, 0, 0, 0, 16, 0, 0, 16,
+ 0, 17, 18, 19, 0, 21, 0, 16, 16, 0,
+ 22, 23, 24, 25, 0, 0, 0, 26, 0, 0,
+ 30, 31, 32, 33, 0, 0, 35, 35, 35, 35,
+ 35, 35, 0, 0, 35, 0, 0, 0, 0, 0,
+ 0, 0, 0, 35, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 35, 0, 0, 35, 35, 35,
+ 0, 0, 0, 0, 35, 35, 0, 0, 0, 35,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 86, 86, 86, 86, 86, 86, 0,
+ 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
86, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 86, 86, 0, 0, 0, 0, 0, 0, 11,
- 170, 123, 124, 12, 13, 0, 171, 172, 14, 15,
- 173, 0, 174, 175, 0, 176, 177, 178, 179, 180,
- 16, 181, 17, 18, 19, 0, 21, 182, 110, 0,
- 110, 22, 23, 24, 25, 0, 0, 0, 26, 0,
- 29, 30, 31, 32, 33, 0, 0, 0, 0, 109,
- 0, 0, 109, 0, 109, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 109, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 20, 20, 0, 20, 20, 20, 0, 0, 20, 0,
- 0, 0, 0, 0, 0, 0, 0, 20, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 20, 0,
- 0, 20, 16, 16, 0, 0, 0, 103, 0, 0,
- 103, 0, 103, 0, 0, 86, 86, 0, 86, 86,
- 86, 0, 109, 86, 109, 0, 103, 0, 0, 0,
- 0, 0, 86, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 86, 0, 0, 86, 16, 16, 0,
- 0, 0, 0, 0, 110, 110, 0, 0, 110, 110,
- 0, 110, 110, 110, 110, 110, 110, 110, 110, 0,
- 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
- 0, 110, 110, 0, 0, 0, 110, 110, 110, 110,
- 103, 0, 103, 110, 0, 110, 110, 110, 110, 110,
- 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, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 51, 0, 0, 27, 0, 28, 109, 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, 104, 0, 104,
- 109, 109, 109, 109, 0, 0, 0, 109, 0, 109,
- 109, 109, 109, 109, 105, 0, 0, 105, 0, 105,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 105, 0, 0, 103, 103, 0, 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, 103, 103, 103,
- 103, 103, 0, 0, 0, 0, 102, 0, 0, 102,
- 0, 102, 0, 0, 0, 0, 0, 105, 0, 105,
- 0, 0, 0, 0, 0, 102, 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, 104, 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, 0, 0, 0, 104, 104, 104, 104, 102,
- 0, 102, 104, 0, 104, 104, 104, 104, 104, 108,
- 0, 11, 108, 0, 108, 12, 13, 0, 0, 0,
- 14, 15, 0, 0, 0, 0, 0, 0, 108, 0,
- 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
- 0, 0, 0, 22, 23, 24, 25, 0, 0, 0,
- 26, 0, 29, 30, 31, 32, 33, 35, 0, 0,
- 27, 0, 28, 105, 105, 0, 0, 105, 105, 0,
+ 0, 86, 0, 0, 86, 86, 86, 0, 0, 0,
+ 0, 86, 86, 0, 0, 0, 86, 0, 0, 0,
+ 0, 16, 16, 16, 16, 16, 16, 0, 41, 16,
+ 0, 0, 0, 0, 0, 53, 0, 0, 16, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
+ 41, 0, 16, 16, 16, 0, 41, 0, 0, 0,
+ 0, 0, 0, 0, 16, 0, 0, 0, 0, 0,
+ 106, 53, 109, 0, 0, 0, 113, 114, 0, 117,
+ 119, 120, 0, 53, 53, 124, 125, 41, 0, 0,
+ 0, 0, 0, 0, 0, 66, 0, 0, 27, 0,
+ 28, 0, 0, 135, 0, 0, 41, 139, 141, 142,
+ 143, 144, 0, 0, 189, 0, 0, 0, 0, 0,
+ 0, 41, 0, 0, 0, 0, 0, 0, 0, 109,
+ 0, 0, 0, 0, 0, 0, 162, 0, 0, 0,
+ 110, 0, 53, 110, 0, 110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 41, 41, 110,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
+ 202, 203, 0, 0, 205, 206, 207, 208, 210, 0,
+ 0, 0, 0, 212, 213, 109, 53, 53, 109, 0,
+ 109, 220, 0, 0, 0, 221, 0, 0, 0, 0,
+ 0, 0, 0, 0, 109, 0, 232, 0, 0, 233,
+ 0, 0, 0, 110, 0, 110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 41, 41,
+ 258, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 270, 0, 271,
+ 0, 272, 0, 273, 0, 274, 0, 0, 0, 103,
+ 276, 0, 103, 0, 103, 277, 278, 0, 109, 0,
+ 109, 0, 0, 53, 0, 0, 0, 0, 103, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 41, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 174, 126, 127, 12, 13,
+ 41, 175, 176, 14, 15, 177, 0, 178, 179, 0,
+ 180, 181, 182, 183, 184, 16, 185, 17, 18, 19,
+ 0, 21, 186, 0, 0, 0, 22, 23, 24, 25,
+ 0, 0, 103, 26, 103, 0, 30, 31, 32, 33,
+ 110, 0, 0, 110, 110, 0, 110, 110, 110, 110,
+ 110, 110, 110, 110, 0, 110, 110, 110, 110, 110,
+ 110, 110, 110, 110, 110, 0, 110, 110, 0, 0,
+ 0, 110, 110, 110, 110, 0, 0, 0, 110, 0,
+ 0, 110, 110, 110, 110, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 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,
+ 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, 103,
+ 0, 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, 105, 0, 0, 105, 0, 105,
+ 0, 0, 0, 104, 0, 104, 0, 0, 0, 0,
+ 0, 0, 0, 105, 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, 102,
+ 0, 0, 102, 0, 102, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 102, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 105, 0, 105,
+ 0, 0, 0, 0, 0, 108, 0, 0, 108, 0,
+ 108, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 108, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 102, 0, 102, 0, 0, 0, 66, 105,
+ 0, 27, 0, 28, 0, 0, 0, 0, 0, 0,
+ 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, 108, 0,
+ 108, 104, 104, 104, 104, 0, 0, 0, 104, 0,
+ 0, 104, 104, 104, 104, 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, 105, 0, 0, 105, 105, 0,
105, 105, 105, 105, 105, 105, 105, 105, 0, 105,
105, 105, 105, 105, 105, 105, 105, 105, 105, 0,
- 105, 105, 108, 0, 108, 105, 105, 105, 105, 0,
- 0, 0, 105, 0, 105, 105, 105, 105, 105, 137,
- 0, 0, 137, 0, 137, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 137, 0,
- 0, 0, 0, 0, 0, 102, 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, 102, 102, 102, 102,
- 102, 35, 0, 0, 27, 0, 28, 0, 0, 0,
- 0, 0, 137, 0, 137, 0, 0, 0, 0, 0,
- 185, 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, 108, 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, 183, 0, 184, 108, 0, 108,
- 108, 108, 108, 108, 35, 0, 11, 27, 0, 28,
- 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
- 0, 0, 0, 185, 0, 0, 0, 16, 0, 17,
- 18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
- 24, 25, 0, 0, 0, 26, 0, 29, 30, 31,
- 32, 33, 35, 0, 0, 27, 0, 28, 137, 137,
- 0, 0, 137, 137, 0, 137, 137, 137, 137, 137,
- 137, 137, 137, 0, 137, 137, 137, 137, 137, 137,
- 137, 137, 137, 137, 0, 137, 137, 183, 0, 195,
- 137, 137, 137, 137, 0, 0, 0, 137, 0, 137,
- 137, 137, 137, 137, 35, 0, 0, 27, 0, 28,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 185, 0, 0, 0, 0, 0, 0,
- 11, 170, 0, 0, 12, 13, 0, 171, 172, 14,
- 15, 173, 0, 174, 175, 0, 176, 177, 178, 179,
- 180, 16, 181, 17, 18, 19, 0, 21, 182, 0,
- 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
- 0, 29, 30, 31, 32, 33, 35, 0, 0, 27,
- 0, 28, 0, 0, 0, 0, 0, 183, 0, 196,
- 0, 0, 0, 0, 0, 185, 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, 11, 170, 0, 0, 12, 13, 0,
- 171, 172, 14, 15, 173, 0, 174, 175, 0, 176,
- 177, 178, 179, 180, 16, 181, 17, 18, 19, 0,
- 21, 182, 0, 0, 0, 22, 23, 24, 25, 183,
- 0, 226, 26, 0, 29, 30, 31, 32, 33, 35,
- 0, 113, 27, 0, 28, 12, 13, 0, 0, 0,
- 14, 15, 0, 0, 0, 0, 0, 0, 185, 0,
- 0, 0, 16, 0, 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, 11, 170, 0, 0, 12, 13, 0,
- 171, 172, 14, 15, 173, 0, 174, 175, 0, 176,
- 177, 178, 179, 180, 16, 181, 17, 18, 19, 0,
- 21, 182, 183, 0, 279, 22, 23, 24, 25, 0,
- 0, 0, 26, 0, 29, 30, 31, 32, 33, 35,
- 0, 0, 27, 0, 28, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 185, 0,
- 0, 0, 0, 0, 0, 11, 170, 0, 0, 12,
- 13, 0, 171, 172, 14, 15, 173, 0, 174, 175,
- 0, 176, 177, 178, 179, 180, 16, 181, 17, 18,
- 19, 0, 21, 182, 0, 0, 0, 22, 23, 24,
- 25, 0, 0, 0, 26, 0, 29, 30, 31, 32,
- 33, 107, 0, 0, 107, 0, 107, 0, 0, 0,
- 0, 0, 183, 0, 303, 0, 0, 0, 0, 0,
- 107, 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, 11, 170,
- 0, 0, 12, 13, 0, 171, 172, 14, 15, 173,
- 0, 174, 175, 0, 176, 177, 178, 179, 180, 16,
- 181, 17, 18, 19, 0, 21, 182, 0, 0, 0,
- 22, 23, 24, 25, 107, 0, 107, 26, 0, 29,
- 30, 31, 32, 33, 130, 0, 0, 130, 0, 130,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 130, 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, 11, 170,
- 0, 0, 12, 13, 0, 171, 172, 14, 15, 173,
- 0, 174, 175, 0, 176, 177, 178, 179, 180, 16,
- 181, 17, 18, 19, 0, 21, 182, 130, 0, 130,
- 22, 23, 24, 25, 0, 0, 0, 26, 0, 29,
- 30, 31, 32, 33, 35, 233, 0, 27, 234, 28,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 87, 0, 88, 0, 0, 0,
- 107, 107, 0, 0, 107, 107, 0, 107, 107, 107,
- 107, 107, 0, 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, 107, 107, 107, 107, 107, 35, 235, 0, 27,
- 236, 28, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 87, 0, 88, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 130, 130, 0, 0, 130, 130, 0,
- 130, 130, 130, 130, 130, 0, 130, 130, 0, 130,
- 130, 130, 130, 130, 130, 130, 130, 130, 130, 0,
- 130, 130, 0, 0, 0, 130, 130, 130, 130, 0,
- 0, 0, 130, 0, 130, 130, 130, 130, 130, 11,
- 0, 0, 0, 12, 13, 0, 171, 172, 14, 15,
- 0, 0, 0, 0, 0, 176, 177, 178, 179, 180,
- 16, 0, 17, 18, 19, 0, 21, 182, 0, 0,
+ 105, 105, 0, 0, 0, 105, 105, 105, 105, 0,
+ 0, 0, 105, 0, 0, 105, 105, 105, 105, 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, 35, 102, 102, 27, 0, 28,
+ 102, 102, 102, 102, 0, 0, 0, 102, 0, 0,
+ 102, 102, 102, 102, 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,
+ 137, 12, 13, 137, 0, 137, 14, 15, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 34, 16, 137,
+ 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, 66, 0, 0, 27, 0,
+ 28, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 189, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 137, 0, 137, 0, 0, 0, 0,
+ 66, 0, 0, 27, 0, 28, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 189,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 187, 0,
+ 188, 0, 0, 0, 0, 0, 66, 0, 0, 27,
+ 0, 28, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 9, 10, 11, 0, 189, 0, 12, 13, 0,
+ 0, 0, 14, 15, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 187, 16, 200, 17, 18, 19, 20,
+ 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, 187,
+ 137, 201, 0, 137, 137, 0, 137, 137, 137, 137,
+ 137, 137, 137, 137, 0, 137, 137, 137, 137, 137,
+ 137, 137, 137, 137, 137, 0, 137, 137, 0, 0,
+ 0, 137, 137, 137, 137, 0, 0, 0, 137, 0,
+ 0, 137, 137, 137, 137, 174, 0, 0, 12, 13,
+ 0, 175, 176, 14, 15, 177, 0, 178, 179, 0,
+ 180, 181, 182, 183, 184, 16, 185, 17, 18, 19,
+ 0, 21, 186, 0, 0, 0, 22, 23, 24, 25,
+ 0, 0, 0, 26, 0, 0, 30, 31, 32, 33,
+ 174, 0, 0, 12, 13, 0, 175, 176, 14, 15,
+ 177, 0, 178, 179, 0, 180, 181, 182, 183, 184,
+ 16, 185, 17, 18, 19, 0, 21, 186, 0, 0,
0, 22, 23, 24, 25, 0, 0, 0, 26, 0,
- 29, 30, 31, 32, 33, 35, 237, 0, 27, 238,
- 28, 0, 0, 11, 0, 0, 0, 12, 13, 0,
- 0, 0, 14, 15, 0, 87, 0, 88, 0, 0,
- 0, 0, 0, 0, 16, 0, 17, 18, 19, 0,
- 21, 0, 0, 0, 0, 22, 23, 24, 25, 85,
- 86, 0, 26, 0, 29, 30, 31, 32, 33, 35,
- 242, 0, 27, 243, 28, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 87,
- 0, 88, 0, 0, 0, 11, 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, 35, 21, 0, 27, 108, 28, 22, 23, 24,
- 25, 85, 86, 0, 26, 0, 29, 30, 31, 32,
- 33, 87, 0, 88, 0, 0, 0, 0, 0, 0,
+ 0, 30, 31, 32, 33, 0, 174, 0, 0, 12,
+ 13, 0, 175, 176, 14, 15, 177, 0, 178, 179,
+ 0, 180, 181, 182, 183, 184, 16, 185, 17, 18,
+ 19, 0, 21, 186, 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,
+ 189, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 21, 0, 0, 0,
+ 0, 22, 23, 24, 25, 189, 0, 0, 26, 0,
+ 29, 30, 31, 32, 33, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 187, 0, 231, 0, 0, 0,
+ 0, 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, 35, 152, 0,
- 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 87, 0, 88,
+ 189, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 187,
+ 0, 285, 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, 187, 0, 309, 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, 0, 0, 0,
- 0, 0, 0, 35, 0, 0, 27, 157, 28, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 87, 11, 88, 0, 0, 12, 13,
- 0, 0, 0, 14, 15, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 16, 0, 17, 18, 19,
- 35, 21, 0, 27, 160, 28, 22, 23, 24, 25,
- 85, 86, 0, 26, 0, 29, 30, 31, 32, 33,
- 87, 0, 88, 0, 0, 0, 0, 0, 11, 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, 35, 21, 0, 27, 162, 28,
- 22, 23, 24, 25, 85, 86, 0, 26, 0, 29,
- 30, 31, 32, 33, 87, 0, 88, 0, 0, 0,
- 11, 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, 85, 86, 0, 26,
- 0, 29, 30, 31, 32, 33, 11, 0, 0, 0,
- 12, 13, 0, 0, 35, 14, 15, 27, 163, 28,
- 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
- 18, 19, 0, 21, 87, 0, 88, 0, 22, 23,
- 24, 25, 85, 86, 0, 26, 0, 29, 30, 31,
- 32, 33, 11, 0, 0, 0, 12, 13, 0, 0,
- 35, 14, 15, 27, 168, 28, 0, 0, 0, 0,
- 0, 0, 0, 16, 0, 17, 18, 19, 0, 21,
- 87, 0, 88, 0, 22, 23, 24, 25, 85, 86,
- 0, 26, 0, 29, 30, 31, 32, 33, 0, 11,
- 0, 0, 0, 12, 13, 0, 0, 35, 14, 15,
- 27, 169, 28, 0, 0, 0, 0, 0, 0, 0,
- 16, 0, 17, 18, 19, 0, 21, 87, 0, 88,
- 0, 22, 23, 24, 25, 85, 86, 0, 26, 0,
- 29, 30, 31, 32, 33, 0, 0, 0, 0, 0,
- 0, 0, 0, 11, 0, 0, 0, 12, 13, 0,
- 0, 35, 14, 15, 27, 0, 28, 0, 0, 0,
- 0, 0, 0, 0, 16, 0, 17, 18, 19, 191,
- 21, 87, 0, 88, 0, 22, 23, 24, 25, 85,
- 86, 0, 26, 0, 29, 30, 31, 32, 33, 0,
- 0, 0, 0, 0, 0, 0, 0, 35, 240, 0,
- 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 87, 0, 88,
- 0, 0, 0, 11, 0, 0, 0, 12, 13, 0,
- 0, 0, 14, 15, 0, 0, 0, 0, 0, 0,
+ 107, 174, 107, 0, 12, 13, 0, 175, 176, 14,
+ 15, 177, 0, 178, 179, 0, 180, 181, 182, 183,
+ 184, 16, 185, 17, 18, 19, 0, 21, 186, 0,
+ 0, 0, 22, 23, 24, 25, 0, 0, 0, 26,
+ 0, 0, 30, 31, 32, 33, 174, 0, 0, 12,
+ 13, 0, 175, 176, 14, 15, 177, 0, 178, 179,
+ 0, 180, 181, 182, 183, 184, 16, 185, 17, 18,
+ 19, 0, 21, 186, 0, 0, 0, 22, 23, 24,
+ 25, 0, 0, 0, 26, 0, 0, 30, 31, 32,
+ 33, 174, 0, 0, 12, 13, 0, 175, 176, 14,
+ 15, 177, 0, 178, 179, 0, 180, 181, 182, 183,
+ 184, 16, 185, 17, 18, 19, 66, 21, 186, 27,
+ 111, 28, 22, 23, 24, 25, 0, 0, 0, 26,
+ 0, 0, 30, 31, 32, 33, 89, 107, 90, 86,
+ 107, 107, 0, 107, 107, 107, 107, 107, 0, 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, 130, 0, 0, 130, 0, 130, 0, 0,
+ 12, 13, 0, 175, 176, 14, 15, 0, 0, 0,
+ 0, 130, 180, 181, 182, 183, 184, 16, 0, 17,
+ 18, 19, 0, 21, 186, 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, 89, 0, 90, 86, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 130, 0, 130, 0, 0,
+ 0, 0, 0, 0, 66, 241, 0, 27, 242, 28,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 86, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 66, 243,
+ 0, 27, 244, 28, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,
+ 13, 86, 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, 87, 88, 0, 26, 0, 0, 30, 31, 32,
+ 33, 66, 248, 0, 27, 249, 28, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 130, 0, 86, 130, 130, 0, 130, 130,
+ 130, 130, 130, 0, 130, 130, 0, 130, 130, 130,
+ 130, 130, 130, 130, 130, 130, 130, 0, 130, 130,
+ 0, 0, 0, 130, 130, 130, 130, 0, 0, 0,
+ 130, 0, 0, 130, 130, 130, 130, 35, 0, 0,
+ 27, 0, 28, 0, 0, 12, 13, 0, 0, 0,
+ 14, 15, 0, 0, 0, 0, 297, 0, 0, 0,
+ 0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
+ 0, 0, 0, 22, 23, 24, 25, 87, 88, 0,
+ 26, 0, 0, 30, 31, 32, 33, 12, 13, 0,
+ 0, 108, 14, 15, 27, 0, 28, 0, 0, 0,
0, 0, 0, 0, 16, 0, 17, 18, 19, 0,
- 21, 0, 0, 0, 0, 22, 23, 24, 25, 85,
- 86, 0, 26, 0, 29, 30, 31, 32, 33, 11,
- 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, 85, 86, 0, 26, 0,
- 29, 30, 31, 32, 33, 0, 11, 0, 0, 0,
+ 21, 0, 0, 0, 0, 22, 23, 24, 25, 0,
+ 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
+ 0, 12, 13, 0, 0, 66, 14, 15, 27, 111,
+ 28, 0, 0, 0, 0, 0, 0, 0, 16, 0,
+ 17, 18, 19, 0, 21, 0, 0, 0, 86, 22,
+ 23, 24, 25, 0, 0, 0, 26, 0, 0, 30,
+ 31, 32, 33, 0, 0, 0, 0, 0, 66, 0,
+ 0, 27, 161, 28, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 12, 13, 0, 0, 0, 14,
+ 15, 86, 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,
+ 164, 28, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 11, 0, 0, 86,
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, 85, 86, 0, 26, 0, 29, 30, 31,
- 32, 33, 35, 244, 0, 27, 0, 28, 0, 0,
+ 18, 19, 66, 21, 0, 27, 166, 28, 22, 23,
+ 24, 25, 0, 0, 0, 26, 0, 29, 30, 31,
+ 32, 33, 0, 0, 0, 86, 0, 0, 0, 0,
11, 0, 0, 0, 12, 13, 0, 0, 0, 14,
- 15, 0, 87, 0, 88, 0, 0, 0, 0, 0,
+ 15, 0, 0, 0, 66, 0, 0, 27, 167, 28,
0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
- 0, 0, 22, 23, 24, 25, 85, 86, 0, 26,
- 0, 29, 30, 31, 32, 33, 11, 0, 0, 0,
- 12, 13, 0, 0, 0, 14, 15, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 16, 0, 17,
+ 0, 0, 22, 23, 24, 25, 0, 86, 0, 26,
+ 0, 29, 30, 31, 32, 33, 0, 0, 12, 13,
+ 0, 0, 0, 14, 15, 0, 0, 66, 0, 0,
+ 27, 172, 28, 0, 0, 16, 0, 17, 18, 19,
+ 0, 21, 0, 0, 0, 0, 22, 23, 24, 25,
+ 86, 0, 0, 26, 0, 0, 30, 31, 32, 33,
+ 0, 12, 13, 0, 0, 0, 14, 15, 0, 0,
+ 66, 0, 0, 27, 173, 28, 0, 0, 16, 0,
+ 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
+ 23, 24, 25, 86, 0, 0, 26, 0, 0, 30,
+ 31, 32, 33, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 66, 0, 0, 27, 0, 28, 0, 12,
+ 13, 0, 0, 0, 14, 15, 0, 0, 0, 0,
+ 195, 0, 0, 0, 0, 86, 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, 12, 13, 0, 0, 66,
+ 14, 15, 27, 0, 28, 0, 0, 0, 0, 0,
+ 0, 0, 16, 0, 17, 18, 19, 198, 21, 0,
+ 0, 0, 86, 22, 23, 24, 25, 0, 0, 0,
+ 26, 0, 0, 30, 31, 32, 33, 12, 13, 0,
+ 0, 0, 14, 15, 66, 0, 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,
+ 12, 13, 0, 0, 0, 14, 15, 0, 0, 66,
+ 246, 0, 27, 0, 28, 0, 0, 16, 0, 17,
18, 19, 0, 21, 0, 0, 0, 0, 22, 23,
- 24, 25, 85, 86, 0, 26, 0, 29, 30, 31,
- 32, 33, 35, 275, 0, 27, 0, 28, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 87, 0, 88, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 35, 281,
- 0, 27, 0, 28, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 87, 0,
- 88, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 35, 282, 0, 27, 0, 28,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 87, 0, 88, 0, 0, 0,
- 0, 11, 0, 0, 0, 12, 13, 0, 0, 0,
- 14, 15, 0, 0, 0, 0, 0, 0, 0, 0,
+ 24, 25, 86, 0, 0, 26, 0, 0, 30, 31,
+ 32, 33, 0, 12, 13, 0, 0, 0, 14, 15,
+ 0, 0, 66, 250, 0, 27, 0, 28, 0, 0,
+ 16, 0, 17, 18, 19, 0, 21, 0, 0, 0,
+ 0, 22, 23, 24, 25, 86, 0, 0, 26, 0,
+ 0, 30, 31, 32, 33, 12, 13, 0, 0, 0,
+ 14, 15, 0, 0, 66, 281, 0, 27, 0, 28,
0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
- 0, 0, 0, 22, 23, 24, 25, 85, 86, 0,
- 26, 0, 29, 30, 31, 32, 33, 35, 283, 0,
- 27, 0, 28, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 87, 0, 88,
+ 0, 0, 0, 22, 23, 24, 25, 86, 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, 0, 0, 0, 0,
- 0, 0, 0, 35, 284, 0, 27, 0, 28, 0,
- 0, 11, 0, 0, 0, 12, 13, 0, 0, 0,
- 14, 15, 0, 87, 0, 88, 0, 0, 0, 0,
+ 0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
+ 0, 66, 287, 0, 27, 0, 28, 0, 0, 16,
+ 0, 17, 18, 19, 0, 21, 0, 0, 0, 0,
+ 22, 23, 24, 25, 86, 0, 0, 26, 0, 0,
+ 30, 31, 32, 33, 0, 126, 127, 12, 13, 0,
+ 0, 0, 14, 15, 0, 0, 66, 288, 0, 27,
+ 0, 28, 0, 0, 16, 0, 17, 18, 19, 0,
+ 21, 0, 0, 0, 0, 22, 23, 24, 25, 86,
+ 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
+ 0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
+ 0, 66, 289, 0, 27, 0, 28, 0, 0, 16,
+ 0, 17, 18, 19, 0, 21, 0, 0, 0, 0,
+ 22, 23, 24, 25, 86, 0, 0, 26, 0, 0,
+ 30, 31, 32, 33, 0, 12, 13, 0, 0, 0,
+ 14, 15, 0, 0, 66, 290, 0, 27, 0, 28,
0, 0, 16, 0, 17, 18, 19, 0, 21, 0,
- 0, 0, 0, 22, 23, 24, 25, 85, 86, 0,
- 26, 0, 29, 30, 31, 32, 33, 11, 0, 0,
- 0, 12, 13, 0, 0, 0, 14, 15, 35, 0,
- 0, 27, 0, 28, 0, 0, 0, 0, 16, 0,
- 17, 18, 19, 0, 21, 0, 0, 0, 0, 22,
- 23, 24, 25, 85, 86, 0, 26, 0, 29, 30,
- 31, 32, 33, 11, 0, 0, 0, 12, 13, 0,
+ 0, 0, 0, 22, 23, 24, 25, 86, 0, 0,
+ 26, 0, 0, 30, 31, 32, 33, 12, 13, 0,
+ 0, 0, 14, 15, 0, 0, 66, 291, 0, 27,
+ 0, 28, 0, 0, 16, 0, 17, 18, 19, 0,
+ 21, 0, 0, 0, 0, 22, 23, 24, 25, 86,
+ 0, 0, 26, 0, 0, 30, 31, 32, 33, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 12, 13, 0, 0, 0, 14,
+ 15, 0, 0, 66, 293, 0, 27, 0, 28, 0,
+ 0, 16, 0, 17, 18, 19, 0, 21, 0, 0,
+ 0, 0, 22, 23, 24, 25, 86, 0, 0, 26,
+ 0, 0, 30, 31, 32, 33, 0, 0, 0, 12,
+ 13, 0, 0, 0, 14, 15, 0, 0, 0, 66,
+ 0, 0, 27, 0, 28, 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, 12, 13, 0, 0, 0, 14,
+ 15, 0, 0, 0, 0, 66, 0, 0, 27, 0,
+ 28, 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, 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, 85,
- 86, 0, 26, 0, 29, 30, 31, 32, 33, 35,
- 285, 34, 27, 0, 28, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 87,
- 0, 88, 0, 0, 0, 0, 11, 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, 35, 21, 0, 27, 0, 28, 22, 23,
- 24, 25, 85, 86, 0, 26, 0, 29, 30, 31,
- 32, 33, 11, 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, 85, 86,
- 0, 26, 0, 29, 30, 31, 32, 33, 35, 287,
- 0, 27, 0, 28, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 9, 10, 11, 87, 0,
- 88, 12, 13, 0, 0, 0, 14, 15, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 16, 0,
- 17, 18, 19, 20, 21, 0, 0, 0, 0, 22,
- 23, 24, 25, 0, 0, 0, 26, 0, 29, 30,
- 31, 32, 33, 35, 0, 0, 27, 0, 28, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 87, 0, 88, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 11, 0,
- 0, 0, 12, 13, 0, 0, 0, 14, 15, 35,
- 0, 0, 27, 0, 28, 0, 0, 0, 0, 16,
- 0, 17, 18, 19, 0, 21, 0, 0, 291, 0,
- 22, 23, 24, 25, 85, 86, 0, 26, 0, 29,
- 30, 31, 32, 33, 0, 0, 0, 0, 0, 0,
- 0, 115, 0, 0, 0, 12, 13, 0, 0, 35,
- 14, 15, 27, 0, 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, 29, 30, 31, 32, 33, 0, 0, 0,
- 0, 0, 0, 0, 0, 35, 0, 0, 27, 0,
- 28, 0, 0, 0, 0, 0, 0, 11, 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, 85, 86, 0, 26, 0, 29, 30,
- 31, 32, 33, 35, 0, 0, 27, 0, 28, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 11, 0, 0, 0, 12, 13, 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, 0, 0, 27, 0, 28, 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, 85, 86,
- 0, 26, 0, 29, 30, 31, 32, 33, 11, 0,
- 0, 0, 12, 13, 0, 0, 0, 14, 15, 0,
+ 0, 0, 0, 0, 22, 23, 24, 25, 0, 0,
+ 0, 26, 0, 0, 30, 31, 32, 33, 116, 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, 29,
- 30, 31, 32, 33, 0, 0, 0, 0, 136, 0,
+ 0, 17, 18, 19, 86, 21, 0, 0, 0, 0,
+ 22, 23, 24, 25, 0, 0, 0, 26, 0, 0,
+ 30, 31, 32, 33, 118, 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,
+ 51, 0, 0, 27, 0, 28, 0, 0, 140, 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, 29,
- 30, 31, 32, 33, 204, 0, 0, 0, 12, 13,
- 0, 0, 0, 14, 15, 0, 0, 101, 102, 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, 29, 30, 31, 32, 33,
- 131, 0, 133, 134, 0, 0, 0, 0, 0, 0,
- 0, 0, 263, 0, 0, 0, 12, 13, 0, 0,
- 0, 14, 15, 0, 0, 0, 0, 0, 155, 156,
- 0, 0, 0, 16, 0, 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, 67,
- 68, 0, 0, 0, 0, 72, 0, 0, 0, 0,
- 0, 0, 0, 89, 0, 0, 0, 0, 0, 0,
- 209, 0, 0, 0, 0, 0, 89, 0, 0, 0,
- 0, 217, 0, 219, 0, 220, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 241, 0, 0, 0,
- 0, 0, 0, 142, 143, 144, 145, 146, 147, 0,
- 0, 258, 259, 260, 261, 262, 89, 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, 89, 0, 0, 0, 0, 89,
- 89, 89, 89, 0, 0, 0, 0, 0, 0, 286,
- 0, 0, 0, 288, 289, 290, 0, 0, 0, 295,
- 89, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 308, 309, 0, 0, 89, 0,
- 313, 0, 0, 0, 0, 0, 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, 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, 89, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 89, 89, 89, 89,
- 89, 0, 89, 89, 89,
+ 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,
+ 209, 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, 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, 269, 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, 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, 57, 0, 0, 26, 0,
+ 0, 30, 31, 32, 33, 0, 68, 68, 0, 71,
+ 72, 0, 68, 0, 0, 0, 0, 12, 13, 0,
+ 68, 0, 14, 15, 0, 0, 0, 0, 0, 0,
+ 0, 0, 68, 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, 68, 68, 68, 68, 68, 68, 0, 0,
+ 0, 0, 0, 0, 0, 68, 0, 0, 68, 0,
+ 0, 0, 68, 68, 0, 0, 68, 0, 68, 68,
+ 0, 0, 0, 68, 68, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 68, 0, 0, 0, 68, 0,
+ 68, 68, 68, 68, 0, 0, 0, 0, 0, 0,
+ 0, 199, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 68, 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, 68,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 68, 68, 0, 68, 68, 68, 68, 0, 68,
+ 0, 68, 68, 0, 0, 67, 69, 0, 0, 68,
+ 68, 73, 0, 0, 0, 0, 0, 0, 0, 91,
+ 0, 68, 68, 0, 0, 0, 0, 0, 0, 0,
+ 0, 91, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 68, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 68,
+ 68, 68, 68, 68, 0, 68, 68, 68, 0, 0,
+ 0, 146, 147, 148, 149, 150, 151, 0, 0, 0,
+ 0, 0, 0, 0, 91, 0, 0, 91, 0, 0,
+ 0, 91, 91, 0, 0, 91, 0, 91, 91, 0,
+ 0, 0, 91, 91, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 91, 0, 0, 0, 91, 0, 91,
+ 91, 91, 91, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 91, 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, 91, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 91, 91, 0, 91, 91, 91, 91, 0, 91, 0,
+ 91, 91, 0, 0, 0, 0, 0, 0, 91, 91,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 91, 91, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 91, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 91, 91,
+ 91, 91, 91, 0, 91, 91, 91,
};
short yycheck[] = { 41,
- 0, 123, 62, 123, 41, 59, 41, 59, 214, 63,
- 59, 63, 123, 63, 59, 63, 94, 59, 50, 38,
- 35, 63, 35, 291, 41, 286, 63, 41, 63, 91,
- 41, 63, 64, 301, 112, 40, 51, 37, 51, 7,
- 40, 41, 42, 43, 44, 45, 63, 47, 59, 63,
- 35, 41, 63, 41, 44, 0, 44, 41, 58, 59,
- 60, 29, 62, 63, 124, 44, 51, 35, 261, 262,
- 37, 40, 261, 60, 288, 42, 43, 40, 45, 63,
- 47, 101, 102, 51, 63, 291, 118, 301, 302, 60,
- 40, 16, 37, 93, 94, 301, 41, 42, 43, 44,
- 45, 63, 47, 40, 63, 30, 31, 40, 292, 40,
- 0, 131, 112, 58, 59, 60, 84, 62, 63, 303,
- 304, 40, 40, 123, 124, 123, 40, 94, 44, 112,
- 98, 41, 41, 37, 63, 41, 63, 292, 42, 171,
- 172, 261, 262, 47, 280, 112, 41, 37, 93, 94,
- 40, 41, 42, 43, 41, 45, 44, 47, 44, 93,
- 292, 41, 41, 40, 40, 133, 134, 112, 58, 59,
- 60, 40, 62, 63, 292, 290, 195, 41, 123, 124,
- 59, 59, 272, 91, 41, 40, 93, 271, 41, 41,
- 94, 0, 41, 93, 59, 41, -1, 51, -1, 219,
- -1, 211, -1, 93, 94, 265, -1, -1, 112, 41,
- -1, 260, 261, 262, -1, 260, 261, 262, 260, 261,
- 262, -1, 112, 148, 256, 40, -1, 59, 43, -1,
- 45, 63, -1, 123, 124, 289, 290, 289, 290, 289,
- 290, 289, 290, -1, 212, 213, -1, 289, 290, 260,
- 261, 262, 289, 290, 289, 290, -1, 257, 258, 259,
- 260, 261, 262, 263, 264, 265, 286, -1, 268, 269,
- -1, -1, 289, 290, 274, 289, 290, -1, 289, 290,
- 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, 289, 290, 274, 276, -1,
- 289, 290, 257, 258, 259, 260, 261, 262, 263, 264,
- 265, 292, -1, 268, 269, 293, -1, 289, 290, 274,
- 289, 290, 303, 304, -1, 280, 41, 282, 283, 284,
+ 0, 41, 63, 41, 37, 41, 41, 59, 59, 42,
+ 43, 63, 45, 63, 47, 35, 63, 219, 41, 63,
+ 50, 63, 38, 63, 59, 63, 123, 63, 62, 37,
+ 44, 123, 62, 63, 42, 103, 104, 37, 35, 47,
+ 40, 41, 42, 43, 44, 45, 51, 47, 35, 63,
+ 41, 94, 41, 44, 288, 0, 301, 302, 58, 59,
+ 60, 94, 62, 63, 297, 60, 134, 301, 302, 112,
+ 59, 292, 41, 40, 307, 44, 59, 261, 262, 112,
+ 40, 40, 303, 304, 123, 40, 94, 40, 108, 40,
+ 124, 121, 37, 93, 94, 297, 41, 42, 43, 44,
+ 45, 286, 47, 108, 112, 307, 91, 41, 222, 40,
+ 0, 108, 112, 58, 59, 60, 40, 62, 63, 40,
+ 261, 108, 44, 123, 124, 59, 40, 123, 62, 41,
+ 60, 112, 41, 41, 292, 280, 41, 44, 44, 41,
+ 292, 41, 41, 93, 41, 175, 176, 37, 93, 94,
+ 40, 41, 42, 43, 40, 45, 224, 47, 40, 59,
+ 40, 292, 59, 290, 261, 262, 41, 112, 58, 59,
+ 60, 91, 62, 63, 59, 41, 272, 7, 123, 124,
+ 294, 295, 296, 40, 200, 271, 41, 41, 0, 93,
+ 124, 41, 93, 41, 59, 59, -1, 216, -1, 29,
+ 314, 315, -1, 93, 94, 319, -1, -1, -1, 260,
+ 261, 262, 41, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 112, -1, 292, 260, 261, 262, 289, 290,
+ 59, 265, 262, 123, 124, -1, -1, 289, 290, 289,
+ 290, 274, 289, 290, -1, 289, 290, 289, 290, 289,
+ 290, 289, 290, 289, 290, 85, -1, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 289, 290, 268, 269,
+ 100, 260, 261, 262, 274, 289, 290, 260, 261, 262,
+ 280, 41, 282, 283, 284, 285, 286, 41, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 292, 298, 59,
+ 300, 301, 302, 303, 304, 59, 136, 137, 303, 304,
+ -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, -1, -1, 268, 269, -1, 260, 261, 262, 274,
+ -1, 265, -1, -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,
- 289, 290, 289, 290, -1, -1, -1, 257, 258, 259,
+ 260, 261, 262, 260, 261, 262, -1, 257, 258, 259,
260, 261, 262, 263, 264, 265, -1, -1, 268, 269,
- 0, 260, 261, 262, 274, -1, -1, -1, -1, -1,
+ 0, -1, -1, -1, 274, -1, -1, 217, 218, -1,
280, -1, 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, 260, 261,
- 262, -1, -1, -1, -1, 0, -1, -1, 58, 59,
- -1, -1, 62, 63, 259, -1, -1, 217, 263, 264,
- -1, -1, -1, 268, 269, -1, -1, 289, 290, -1,
- -1, -1, -1, -1, -1, 280, -1, 282, 283, 284,
- -1, 286, 37, 93, 94, 40, 41, 42, 43, 44,
- 45, -1, 47, 298, -1, 300, 301, 302, 303, 304,
+ 40, 41, 42, 43, 44, 45, -1, 47, -1, -1,
+ -1, 260, 261, 262, -1, 0, -1, -1, 58, 59,
+ -1, -1, 62, 63, -1, -1, -1, -1, -1, -1,
+ -1, -1, 282, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 299,
+ -1, -1, 37, 93, 94, 40, 41, 42, 43, 44,
+ 45, -1, 47, -1, -1, -1, -1, -1, -1, -1,
0, -1, 112, 58, 59, 60, -1, 62, 63, -1,
- 260, 261, 262, 123, 124, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 288, 289,
- 290, -1, -1, -1, -1, -1, -1, 37, 93, 94,
- 40, 41, 42, 43, 44, 45, -1, 47, 308, 309,
- -1, -1, -1, 313, -1, -1, -1, 41, 58, 59,
+ 260, 261, 262, 123, 124, -1, 260, 261, 262, -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, 59, -1, -1, -1, 63,
- -1, -1, -1, -1, -1, -1, -1, -1, 41, -1,
+ -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, 41, -1, -1, 59, -1, -1, 62,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
37, -1, 112, 40, 41, 42, 43, 44, 45, -1,
- 47, 59, -1, 123, 124, 63, 260, 261, 262, -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, 124, 282, 283, 284, 285, 286, -1, 288, 289,
+ 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,
@@ -1059,695 +1089,725 @@ short yycheck[] = { 41,
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, 260, 261, 262, -1,
+ -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, 289, 290, 260, 261, 262,
- -1, -1, 265, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 260, 261, 262, -1, -1, -1, -1, -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, 289, 290, 280, -1, 282, 283, 284, 285, 286,
+ -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, 0, -1, -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, 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, 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,
- -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, -1, 0, -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, 93, -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, 123, 124, -1, -1, -1, -1,
+ 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, 301, 302, 303, 304, 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, 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, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -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, -1, 47, -1, -1, -1, -1, -1, -1, 0,
+ 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, -1, 0, -1, -1, 58, 59, 60,
+ -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,
- -1, 37, 93, 94, 40, 41, 42, 43, 44, 45,
- -1, 47, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 112, 58, 59, 60, -1, 62, -1, -1, -1,
- -1, -1, 123, 124, -1, -1, -1, 0, -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, 93, 94, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 112, 40, 41, -1,
- 43, 44, 45, -1, -1, -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,
+ -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,
- 123, 124, -1, -1, -1, -1, 257, 258, 259, 260,
+ -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, -1, 289, 290,
+ -1, 282, 283, 284, 285, 286, -1, 288, 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, 0, 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, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
- 45, -1, -1, -1, 257, 258, 259, 260, 261, 262,
- 263, 264, 265, 0, 59, 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, 41, -1, 43, 44, 45, -1,
- -1, 0, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 58, 59, 60, -1, 62, 63, -1, 123, -1,
+ 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
+ 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, -1, 289, 290, 291, 292, 293, 294, 295, 296,
+ -1, 298, -1, 300, -1, -1, 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, -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, 0,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 58,
- 59, 60, -1, 62, 63, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 123, 124, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 40,
- 41, -1, -1, 44, 93, -1, -1, -1, -1, -1,
- -1, 0, -1, -1, -1, -1, -1, 58, 59, 60,
+ -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, -1, -1, -1, 123, 124, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 40, 93, -1, 43, -1, 45, -1, -1, -1,
- -1, -1, 257, 258, 259, 260, 261, 262, 263, 264,
- 59, -1, -1, 268, 269, -1, -1, -1, -1, -1,
- -1, -1, 123, 124, -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, -1, -1, -1, -1, -1, -1, -1,
- 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
- -1, 268, 269, 40, 123, -1, 43, 274, 45, -1,
- -1, -1, -1, 280, 0, 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, -1, -1, 40, -1, -1, 43, -1, 45,
- -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, -1, -1, 268, 269, -1,
- 40, 41, -1, 43, -1, 45, -1, -1, -1, 280,
+ -1, 123, 124, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 40, 41, -1,
+ -1, 44, 93, 259, -1, 261, 262, 263, 264, -1,
+ -1, 0, 268, 269, -1, 58, 59, 60, -1, 62,
+ 63, -1, -1, -1, 280, -1, 282, 283, 284, -1,
+ 286, -1, 123, 124, -1, 291, 292, 293, 294, -1,
+ -1, -1, 298, -1, 300, 301, 302, 303, 304, -1,
+ 93, 40, -1, -1, 43, -1, 45, -1, -1, -1,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 0,
+ 59, 268, 269, -1, -1, -1, -1, 274, -1, -1,
+ 123, 124, -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, 40,
+ -1, -1, 43, -1, 45, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, -1, -1, 268, 269, 59, -1,
+ -1, -1, 274, -1, 123, -1, -1, -1, 280, 0,
+ 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, 40,
+ -1, -1, 43, 274, 45, -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, 123, 257, 258,
- 259, 260, 261, 262, 263, 264, 0, -1, -1, 268,
- 269, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 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, 123, 40, 41, -1, -1, 44, 257, 258,
+ 259, 260, 261, 262, 263, 264, -1, 0, -1, 268,
+ 269, 58, 59, 60, -1, 62, 63, -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, 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, -1,
- -1, -1, 259, -1, 261, 262, 263, 264, -1, -1,
- -1, 268, 269, -1, 40, -1, -1, 43, -1, 45,
- -1, -1, -1, 280, 0, 282, 283, 284, -1, 286,
- -1, -1, -1, 59, 291, 292, 293, 294, -1, -1,
- -1, 298, -1, 300, 301, 302, 303, 304, -1, 123,
- -1, 257, 258, 259, -1, -1, -1, 263, 264, -1,
- -1, -1, 268, 269, 40, -1, -1, 43, -1, 45,
- -1, -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, 259,
- -1, -1, -1, 263, 264, -1, -1, -1, 268, 269,
- -1, -1, -1, 40, -1, -1, 43, -1, 45, -1,
- 280, -1, 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, 123, -1, -1,
+ -1, 300, 301, 302, 303, 304, 93, 40, -1, -1,
+ 43, -1, 45, -1, -1, -1, 257, 258, 259, 260,
+ 261, 262, 263, 264, 0, -1, 59, 268, 269, -1,
+ -1, -1, -1, -1, -1, -1, 123, 124, -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, 40, -1, -1, 43, -1, 45,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 257, 258, 259, -1,
+ 123, -1, 263, 264, -1, 0, -1, 268, 269, -1,
+ -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, 40, -1, -1, 43, -1,
+ 45, -1, -1, -1, -1, -1, -1, 123, -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, -1, 262, 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, 257, 258, 259, 260, 261, 262, 263, 264, -1,
- -1, -1, 268, 269, -1, -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,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, -1,
+ -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, 123, -1,
+ -1, -1, -1, -1, 257, 258, 259, 260, -1, 262,
+ 263, 264, -1, -1, -1, 268, 269, -1, -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, -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,
- -1, -1, -1, -1, 280, -1, 282, 283, 284, 285,
- 286, -1, -1, -1, -1, 291, 292, 293, 294, -1,
+ -1, -1, 268, 269, -1, -1, 40, 41, -1, 43,
+ 44, 45, -1, -1, 280, -1, 282, 283, 284, 285,
+ 286, -1, -1, -1, -1, 291, 292, 293, 294, 63,
-1, -1, 298, -1, 300, 301, 302, 303, 304, -1,
- 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, -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, -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, -1, -1, -1, -1, -1, -1, -1,
- -1, 93, 94, -1, -1, -1, -1, 0, -1, -1,
+ -1, -1, -1, 40, 41, -1, 43, 44, 45, -1,
+ -1, -1, 257, 258, 259, -1, -1, -1, 263, 264,
+ -1, -1, -1, 268, 269, 0, 63, -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, -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, 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, 263,
+ 264, -1, -1, -1, 268, 269, 58, 59, 60, -1,
+ 62, 63, 112, -1, -1, -1, 280, -1, 282, 283,
+ 284, -1, 286, 123, 124, -1, -1, 291, 292, 293,
+ 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
+ 304, 93, 94, -1, -1, -1, 263, 264, -1, -1,
+ -1, 268, 269, -1, -1, -1, -1, -1, -1, -1,
+ 112, -1, -1, 280, -1, 282, 283, 284, -1, 286,
+ -1, 123, 124, -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,
- 112, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 123, 124, -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, -1,
- -1, -1, -1, -1, -1, 58, 59, 60, -1, 62,
+ -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,
- 257, 258, 259, 260, 261, 262, 263, 264, 265, 112,
- -1, 268, 269, -1, -1, -1, -1, 274, -1, -1,
- 123, 124, -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, 14, -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, 49, 50, 51, -1, -1, -1, -1,
- 56, 57, -1, 59, 60, 61, -1, 63, 64, 65,
- 66, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 81, -1, -1, -1, 85,
- 86, 87, 88, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 257, 258, -1, 260, 261, 262,
- -1, -1, 265, -1, -1, -1, 112, -1, -1, -1,
- -1, 274, 118, -1, -1, -1, -1, -1, -1, 125,
+ -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, -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, 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, -1, -1, -1,
- -1, -1, -1, -1, 150, 151, -1, -1, -1, 155,
- 156, -1, -1, 159, 160, 161, 162, 163, -1, -1,
- -1, -1, 168, 169, -1, 171, 172, -1, -1, -1,
- 176, -1, -1, -1, 180, -1, 0, -1, -1, -1,
- -1, -1, -1, -1, 190, 191, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 214, -1,
- -1, 217, -1, 37, -1, -1, 0, 41, 42, -1,
- 44, -1, -1, 47, 230, -1, 232, -1, 234, -1,
- 236, -1, 238, -1, 58, 59, 60, 243, 62, 63,
- -1, -1, 248, 249, -1, -1, -1, -1, -1, -1,
- 256, 257, -1, 37, -1, -1, -1, 41, 42, -1,
- 44, -1, -1, 47, 0, -1, -1, -1, -1, 93,
- 94, -1, -1, -1, 58, 59, 60, -1, 62, 63,
- -1, -1, 288, 289, 290, 291, -1, -1, 112, -1,
- 296, -1, -1, -1, -1, 301, -1, -1, -1, 123,
- 124, 37, 308, 309, 0, 41, 42, 313, 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, -1, 123,
- 124, 37, -1, -1, -1, 41, 42, -1, 44, -1,
- -1, 47, -1, -1, -1, -1, -1, 93, 94, -1,
- -1, -1, 58, 59, 60, -1, 62, 63, -1, -1,
- -1, -1, -1, -1, -1, -1, 112, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 123, 124, 40,
- -1, -1, 43, -1, 45, -1, -1, 93, 94, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
- -1, 62, -1, -1, -1, -1, 112, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 123, 124, -1,
- -1, -1, -1, 257, 258, -1, 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, 291, 292, 293,
- 294, 295, 296, 257, 258, -1, 260, 261, 262, -1,
- -1, 265, -1, -1, -1, -1, -1, -1, -1, -1,
- 274, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 293, 294, 295, 296, -1, -1, -1, 300, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 37, 47, 48, -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, 81, -1, 83, 84,
-1, 285, -1, -1, 288, 289, 290, 291, 292, 293,
- 294, 295, 296, -1, -1, -1, -1, -1, -1, -1,
- -1, 257, 258, -1, 260, 261, 262, -1, -1, 265,
- -1, -1, -1, -1, -1, -1, -1, -1, 274, -1,
- -1, -1, -1, 0, -1, -1, -1, -1, -1, 285,
+ 294, 295, 296, -1, -1, -1, 300, 93, 94, -1,
+ -1, -1, -1, -1, -1, -1, 111, 112, 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, -1, -1, 174,
+ -1, -1, -1, -1, -1, -1, -1, 58, 59, 60,
+ 185, 62, 187, 112, 189, -1, -1, -1, -1, -1,
+ -1, 0, -1, -1, 123, 124, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 211, -1, -1, -1,
+ -1, -1, 93, 94, -1, -1, -1, -1, -1, -1,
+ -1, 226, 227, 228, 229, 230, -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, -1, -1, -1, -1, -1, -1,
+ -1, 257, 258, 259, 260, 261, 262, -1, -1, 265,
+ 275, -1, -1, -1, 279, 280, 281, -1, 274, 0,
+ 285, -1, -1, -1, 93, 94, -1, -1, -1, 285,
-1, -1, 288, 289, 290, 291, 292, 293, 294, 295,
- 296, 257, 258, -1, 260, 261, 262, -1, -1, 265,
- -1, -1, -1, -1, -1, -1, -1, -1, 274, -1,
- 37, -1, -1, 0, 41, 42, -1, 44, -1, 285,
- 47, -1, 288, 289, 290, 291, 292, 293, 294, 295,
- 296, 58, 59, 60, -1, 62, 63, -1, 259, -1,
+ 296, -1, -1, 112, 300, 310, 311, -1, -1, -1,
+ -1, 316, -1, -1, 123, 124, 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, -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, -1,
+ -1, 300, 93, 94, -1, -1, 257, 258, 259, 260,
+ 261, 262, -1, -1, 265, -1, -1, -1, -1, 40,
+ 41, 112, 43, 274, 45, -1, -1, -1, -1, 0,
+ -1, -1, 123, 124, 285, -1, -1, 288, 289, 290,
+ -1, -1, 63, -1, 295, 296, -1, -1, -1, 300,
+ -1, -1, -1, -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, -1, -1, -1, 274, 0, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 285, -1, -1, 288,
+ 289, 290, -1, -1, -1, -1, 295, 296, -1, -1,
+ -1, 300, 93, 94, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 37, -1, -1, -1, 41, 42, -1,
+ -1, 112, -1, 47, 0, -1, -1, -1, -1, -1,
+ -1, -1, 123, 124, 58, 59, 60, -1, 62, -1,
+ -1, -1, -1, -1, -1, -1, 257, 258, 259, 260,
+ 261, 262, -1, -1, 265, -1, -1, -1, -1, -1,
+ -1, 37, -1, 274, -1, 41, 42, -1, 44, 93,
+ 94, 47, -1, -1, 285, -1, -1, 288, 289, 290,
+ -1, -1, 58, 59, 295, 296, -1, -1, 112, 300,
+ -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, -1, -1, 93, 94, -1,
-1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
- 37, -1, -1, -1, 41, 42, -1, 44, 0, 280,
- 47, 282, 283, 284, -1, 286, 93, 94, -1, -1,
- -1, 58, 59, -1, -1, 296, 63, 298, -1, 300,
- 301, 302, 303, 304, -1, 112, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 37, 123, 124, 0, 41,
- 42, -1, 44, -1, -1, 47, 93, 94, -1, -1,
- -1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
- -1, 63, -1, -1, -1, 112, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 37, 123, 124, -1, 41,
- 42, -1, 44, 0, -1, 47, -1, -1, -1, -1,
- -1, 93, 94, -1, -1, -1, 58, 59, -1, -1,
- -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
- 112, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 37, 123, 124, -1, 41, 42, -1, 44, -1, -1,
- 47, 93, 94, -1, -1, -1, -1, -1, -1, -1,
- -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
- 112, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 123, 124, -1, 40, 41, -1, 43, 44, 45,
- 257, 258, -1, 260, 261, 262, 93, 94, 265, -1,
- -1, -1, -1, -1, 60, -1, 62, 274, -1, -1,
- -1, -1, -1, -1, -1, 112, -1, -1, 285, -1,
- -1, 288, 289, 290, -1, -1, 123, 124, 295, 296,
- 257, 258, -1, 260, 261, 262, -1, -1, 265, -1,
- -1, -1, -1, -1, -1, -1, -1, 274, -1, -1,
- 40, -1, -1, 43, -1, 45, -1, -1, 285, -1,
- -1, 288, 289, 290, 291, 292, 293, 294, 295, 59,
- -1, -1, -1, -1, -1, 257, 258, -1, 260, 261,
- 262, -1, -1, 265, -1, -1, -1, -1, -1, -1,
- -1, -1, 274, 0, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 285, -1, -1, 288, 289, 290, -1,
- -1, -1, -1, -1, -1, 257, 258, -1, 260, 261,
- 262, -1, -1, 265, -1, -1, -1, -1, -1, -1,
- 37, -1, 274, 123, 41, 42, -1, 44, 0, -1,
- 47, -1, -1, 285, -1, -1, 288, 289, 290, -1,
- -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
- 257, 258, -1, 260, 261, 262, -1, -1, 265, -1,
- -1, -1, -1, -1, -1, 37, -1, 274, -1, 41,
- 42, -1, -1, -1, -1, 47, 93, 94, 285, -1,
- -1, 288, 289, 290, -1, -1, 58, 59, -1, -1,
- -1, 63, -1, 259, -1, 112, -1, 263, 264, -1,
- -1, -1, 268, 269, -1, 40, 123, 124, 43, -1,
- 45, -1, -1, -1, 280, -1, 282, 283, 284, -1,
- 286, 93, 94, -1, 59, 291, 292, 293, 294, 295,
- 296, -1, 298, -1, 300, 301, 302, 303, 304, -1,
- 112, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 123, 124, -1, -1, -1, -1, -1, -1, 259,
- 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, 123, -1,
- 125, 291, 292, 293, 294, -1, -1, -1, 298, -1,
- 300, 301, 302, 303, 304, -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, 112, -1, -1, 280,
+ -1, 282, 283, 284, -1, 286, -1, 123, 124, -1,
+ 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
+ 301, 302, 303, 304, -1, -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, -1, -1, 295, 296, -1, -1, -1, 300,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 257, 258, -1, 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, -1, 40, -1, -1,
- 43, -1, 45, -1, -1, 257, 258, -1, 260, 261,
- 262, -1, 123, 265, 125, -1, 59, -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, -1, 259, 260, -1, -1, 263, 264,
+ -1, -1, -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, -1,
+ -1, 295, 296, -1, -1, -1, 300, -1, -1, -1,
+ -1, 257, 258, 259, 260, 261, 262, -1, 7, 265,
+ -1, -1, -1, -1, -1, 14, -1, -1, 274, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 285,
+ 29, -1, 288, 289, 290, -1, 35, -1, -1, -1,
+ -1, -1, -1, -1, 300, -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, -1, 40, -1, -1, 43, -1,
+ 45, -1, -1, 82, -1, -1, 85, 86, 87, 88,
+ 89, 90, -1, -1, 59, -1, -1, -1, -1, -1,
+ -1, 100, -1, -1, -1, -1, -1, -1, -1, 108,
+ -1, -1, -1, -1, -1, -1, 115, -1, -1, -1,
+ 40, -1, 121, 43, -1, 45, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 136, 137, 59,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 123, -1,
+ 159, 160, -1, -1, 163, 164, 165, 166, 167, -1,
+ -1, -1, -1, 172, 173, 40, 175, 176, 43, -1,
+ 45, 180, -1, -1, -1, 184, -1, -1, -1, -1,
+ -1, -1, -1, -1, 59, -1, 195, -1, -1, 198,
+ -1, -1, -1, 123, -1, 125, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 217, 218,
+ 219, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 236, -1, 238,
+ -1, 240, -1, 242, -1, 244, -1, -1, -1, 40,
+ 249, -1, 43, -1, 45, 254, 255, -1, 123, -1,
+ 125, -1, -1, 262, -1, -1, -1, -1, 59, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 282, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 260, 261, 262, 263, 264,
+ 299, 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, 123, 298, 125, -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, -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,
- 123, -1, 125, 298, -1, 300, 301, 302, 303, 304,
- -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, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 40, -1, -1, 43, -1, 45, 259, 260,
+ -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, 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, 125,
- 291, 292, 293, 294, -1, -1, -1, 298, -1, 300,
+ 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, 123, -1, 125, -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, 59, -1, -1, 259, 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, 300, 301, 302,
- 303, 304, -1, -1, -1, -1, 40, -1, -1, 43,
- -1, 45, -1, -1, -1, -1, -1, 123, -1, 125,
- -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, -1, -1, 259, 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, 123,
- -1, 125, 298, -1, 300, 301, 302, 303, 304, 40,
- -1, 259, 43, -1, 45, 263, 264, -1, -1, -1,
- 268, 269, -1, -1, -1, -1, -1, -1, 59, -1,
- -1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
- -1, -1, -1, 291, 292, 293, 294, -1, -1, -1,
- 298, -1, 300, 301, 302, 303, 304, 40, -1, -1,
- 43, -1, 45, 259, 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, 125, 291, 292, 293, 294, -1,
- -1, -1, 298, -1, 300, 301, 302, 303, 304, 40,
+ -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, 259, 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, 300, 301, 302, 303,
- 304, 40, -1, -1, 43, -1, 45, -1, -1, -1,
- -1, -1, 123, -1, 125, -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, -1, -1, 259, 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, 123, -1, 125, 298, -1, 300,
- 301, 302, 303, 304, 40, -1, 259, 43, -1, 45,
- 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
- -1, -1, -1, 59, -1, -1, -1, 280, -1, 282,
- 283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
- 293, 294, -1, -1, -1, 298, -1, 300, 301, 302,
- 303, 304, 40, -1, -1, 43, -1, 45, 259, 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, 125,
- 291, 292, 293, 294, -1, -1, -1, 298, -1, 300,
- 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
+ -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, -1, 59, -1, -1, -1, -1, -1, -1,
- 259, 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, 300, 301, 302, 303, 304, 40, -1, -1, 43,
- -1, 45, -1, -1, -1, -1, -1, 123, -1, 125,
- -1, -1, -1, -1, -1, 59, -1, -1, -1, -1,
+ -1, -1, 123, -1, 125, -1, -1, -1, 40, 41,
+ -1, 43, -1, 45, -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, 123, -1,
+ 125, 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, -1, -1, -1,
- -1, -1, -1, 259, 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, 123,
- -1, 125, 298, -1, 300, 301, 302, 303, 304, 40,
- -1, 259, 43, -1, 45, 263, 264, -1, -1, -1,
- 268, 269, -1, -1, -1, -1, -1, -1, 59, -1,
- -1, -1, 280, -1, 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, 259, 260, -1, -1, 263, 264, -1,
- 266, 267, 268, 269, 270, -1, 272, 273, -1, 275,
+ -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, 123, -1, 125, 291, 292, 293, 294, -1,
- -1, -1, 298, -1, 300, 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, 259, 260, -1, -1, 263,
+ 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, 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, 263, 264, 43, -1, 45, 268, 269, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 123, 280, 59,
+ 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, 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, 257, 258, 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, 285,
+ 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, -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, 300, 301, 302, 303,
+ 294, -1, -1, -1, 298, -1, -1, 301, 302, 303,
304, 40, -1, -1, 43, -1, 45, -1, -1, -1,
- -1, -1, 123, -1, 125, -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, -1, -1, 259, 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, 123, -1, 125, 298, -1, 300,
- 301, 302, 303, 304, 40, -1, -1, 43, -1, 45,
+ 59, -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, 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,
- -1, -1, -1, 59, -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, 40, -1, -1,
+ 43, -1, 45, -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, 259, 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, 123, -1, 125,
- 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, 60, -1, 62, -1, -1, -1,
- 259, 260, -1, -1, 263, 264, -1, 266, 267, 268,
+ 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, 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, 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, 259, 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, 300, 301, 302, 303, 304, 259,
- -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,
- 300, 301, 302, 303, 304, 40, 41, -1, 43, 44,
- 45, -1, -1, 259, -1, -1, -1, 263, 264, -1,
- -1, -1, 268, 269, -1, 60, -1, 62, -1, -1,
- -1, -1, -1, -1, 280, -1, 282, 283, 284, -1,
- 286, -1, -1, -1, -1, 291, 292, 293, 294, 295,
- 296, -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, 60,
- -1, 62, -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, 40, 286, -1, 43, 44, 45, 291, 292, 293,
- 294, 295, 296, -1, 298, -1, 300, 301, 302, 303,
- 304, 60, -1, 62, -1, -1, -1, -1, -1, -1,
+ -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,
+ 44, 45, 291, 292, 293, 294, -1, -1, -1, 298,
+ -1, -1, 301, 302, 303, 304, 60, 260, 62, 63,
+ 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,
+ 263, 264, -1, 266, 267, 268, 269, -1, -1, -1,
+ -1, 59, 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, 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, 40, 41, -1,
- 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 60, -1, 62,
+ -1, -1, 60, -1, 62, 63, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 123, -1, 125, -1, -1,
+ -1, -1, -1, -1, 40, 41, -1, 43, 44, 45,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 63, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 40, -1, -1, 43, 44, 45, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 40, 41,
+ -1, 43, 44, 45, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 263,
+ 264, 63, -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, 295, 296, -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, -1, -1, 60, 259, 62, -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,
- 295, 296, -1, 298, -1, 300, 301, 302, 303, 304,
- 60, -1, 62, -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, 40, 286, -1, 43, 44, 45,
- 291, 292, 293, 294, 295, 296, -1, 298, -1, 300,
- 301, 302, 303, 304, 60, -1, 62, -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, 295, 296, -1, 298,
- -1, 300, 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, 60, -1, 62, -1, 291, 292,
- 293, 294, 295, 296, -1, 298, -1, 300, 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,
- 60, -1, 62, -1, 291, 292, 293, 294, 295, 296,
- -1, 298, -1, 300, 301, 302, 303, 304, -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, 60, -1, 62,
- -1, 291, 292, 293, 294, 295, 296, -1, 298, -1,
- 300, 301, 302, 303, 304, -1, -1, -1, -1, -1,
- -1, -1, -1, 259, -1, -1, -1, 263, 264, -1,
+ -1, -1, 260, -1, 63, 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, 263, 264, -1, -1, -1,
+ 268, 269, -1, -1, -1, -1, 59, -1, -1, -1,
+ -1, -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, 263, 264, -1,
-1, 40, 268, 269, 43, -1, 45, -1, -1, -1,
- -1, -1, -1, -1, 280, -1, 282, 283, 284, 58,
- 286, 60, -1, 62, -1, 291, 292, 293, 294, 295,
- 296, -1, 298, -1, 300, 301, 302, 303, 304, -1,
- -1, -1, -1, -1, -1, -1, -1, 40, 41, -1,
- 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 60, -1, 62,
- -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, 295,
- 296, -1, 298, -1, 300, 301, 302, 303, 304, 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, 295, 296, -1, 298, -1,
- 300, 301, 302, 303, 304, -1, 259, -1, -1, -1,
+ 286, -1, -1, -1, -1, 291, 292, 293, 294, -1,
+ -1, -1, 298, -1, -1, 301, 302, 303, 304, -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, 63, 291,
+ 292, 293, 294, -1, -1, -1, 298, -1, -1, 301,
+ 302, 303, 304, -1, -1, -1, -1, -1, 40, -1,
+ -1, 43, 44, 45, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 263, 264, -1, -1, -1, 268,
+ 269, 63, -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, 259, -1, -1, 63,
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, 295, 296, -1, 298, -1, 300, 301, 302,
- 303, 304, 40, 41, -1, 43, -1, 45, -1, -1,
+ 283, 284, 40, 286, -1, 43, 44, 45, 291, 292,
+ 293, 294, -1, -1, -1, 298, -1, 300, 301, 302,
+ 303, 304, -1, -1, -1, 63, -1, -1, -1, -1,
259, -1, -1, -1, 263, 264, -1, -1, -1, 268,
- 269, -1, 60, -1, 62, -1, -1, -1, -1, -1,
+ 269, -1, -1, -1, 40, -1, -1, 43, 44, 45,
-1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
- -1, -1, 291, 292, 293, 294, 295, 296, -1, 298,
- -1, 300, 301, 302, 303, 304, 259, -1, -1, -1,
- 263, 264, -1, -1, -1, 268, 269, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 280, -1, 282,
+ -1, -1, 291, 292, 293, 294, -1, 63, -1, 298,
+ -1, 300, 301, 302, 303, 304, -1, -1, 263, 264,
+ -1, -1, -1, 268, 269, -1, -1, 40, -1, -1,
+ 43, 44, 45, -1, -1, 280, -1, 282, 283, 284,
+ -1, 286, -1, -1, -1, -1, 291, 292, 293, 294,
+ 63, -1, -1, 298, -1, -1, 301, 302, 303, 304,
+ -1, 263, 264, -1, -1, -1, 268, 269, -1, -1,
+ 40, -1, -1, 43, 44, 45, -1, -1, 280, -1,
+ 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
+ 292, 293, 294, 63, -1, -1, 298, -1, -1, 301,
+ 302, 303, 304, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 40, -1, -1, 43, -1, 45, -1, 263,
+ 264, -1, -1, -1, 268, 269, -1, -1, -1, -1,
+ 58, -1, -1, -1, -1, 63, 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, 263, 264, -1, -1, 40,
+ 268, 269, 43, -1, 45, -1, -1, -1, -1, -1,
+ -1, -1, 280, -1, 282, 283, 284, 58, 286, -1,
+ -1, -1, 63, 291, 292, 293, 294, -1, -1, -1,
+ 298, -1, -1, 301, 302, 303, 304, 263, 264, -1,
+ -1, -1, 268, 269, 40, -1, -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,
+ 263, 264, -1, -1, -1, 268, 269, -1, -1, 40,
+ 41, -1, 43, -1, 45, -1, -1, 280, -1, 282,
283, 284, -1, 286, -1, -1, -1, -1, 291, 292,
- 293, 294, 295, 296, -1, 298, -1, 300, 301, 302,
- 303, 304, 40, 41, -1, 43, -1, 45, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 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, 40, 41,
- -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 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, 40, 41, -1, 43, -1, 45,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 60, -1, 62, -1, -1, -1,
- -1, 259, -1, -1, -1, 263, 264, -1, -1, -1,
- 268, 269, -1, -1, -1, -1, -1, -1, -1, -1,
+ 293, 294, 63, -1, -1, 298, -1, -1, 301, 302,
+ 303, 304, -1, 263, 264, -1, -1, -1, 268, 269,
+ -1, -1, 40, 41, -1, 43, -1, 45, -1, -1,
+ 280, -1, 282, 283, 284, -1, 286, -1, -1, -1,
+ -1, 291, 292, 293, 294, 63, -1, -1, 298, -1,
+ -1, 301, 302, 303, 304, 263, 264, -1, -1, -1,
+ 268, 269, -1, -1, 40, 41, -1, 43, -1, 45,
-1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
- -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
- 298, -1, 300, 301, 302, 303, 304, 40, 41, -1,
- 43, -1, 45, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 60, -1, 62,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 291, 292, 293, 294, 63, -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, 40, 41, -1, 43, -1, 45, -1,
- -1, 259, -1, -1, -1, 263, 264, -1, -1, -1,
- 268, 269, -1, 60, -1, 62, -1, -1, -1, -1,
+ -1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
+ -1, 40, 41, -1, 43, -1, 45, -1, -1, 280,
+ -1, 282, 283, 284, -1, 286, -1, -1, -1, -1,
+ 291, 292, 293, 294, 63, -1, -1, 298, -1, -1,
+ 301, 302, 303, 304, -1, 261, 262, 263, 264, -1,
+ -1, -1, 268, 269, -1, -1, 40, 41, -1, 43,
+ -1, 45, -1, -1, 280, -1, 282, 283, 284, -1,
+ 286, -1, -1, -1, -1, 291, 292, 293, 294, 63,
+ -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
+ -1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
+ -1, 40, 41, -1, 43, -1, 45, -1, -1, 280,
+ -1, 282, 283, 284, -1, 286, -1, -1, -1, -1,
+ 291, 292, 293, 294, 63, -1, -1, 298, -1, -1,
+ 301, 302, 303, 304, -1, 263, 264, -1, -1, -1,
+ 268, 269, -1, -1, 40, 41, -1, 43, -1, 45,
-1, -1, 280, -1, 282, 283, 284, -1, 286, -1,
- -1, -1, -1, 291, 292, 293, 294, 295, 296, -1,
- 298, -1, 300, 301, 302, 303, 304, 259, -1, -1,
- -1, 263, 264, -1, -1, -1, 268, 269, 40, -1,
- -1, 43, -1, 45, -1, -1, -1, -1, 280, -1,
- 282, 283, 284, -1, 286, -1, -1, -1, -1, 291,
- 292, 293, 294, 295, 296, -1, 298, -1, 300, 301,
- 302, 303, 304, 259, -1, -1, -1, 263, 264, -1,
+ -1, -1, -1, 291, 292, 293, 294, 63, -1, -1,
+ 298, -1, -1, 301, 302, 303, 304, 263, 264, -1,
+ -1, -1, 268, 269, -1, -1, 40, 41, -1, 43,
+ -1, 45, -1, -1, 280, -1, 282, 283, 284, -1,
+ 286, -1, -1, -1, -1, 291, 292, 293, 294, 63,
+ -1, -1, 298, -1, -1, 301, 302, 303, 304, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 263, 264, -1, -1, -1, 268,
+ 269, -1, -1, 40, 41, -1, 43, -1, 45, -1,
+ -1, 280, -1, 282, 283, 284, -1, 286, -1, -1,
+ -1, -1, 291, 292, 293, 294, 63, -1, -1, 298,
+ -1, -1, 301, 302, 303, 304, -1, -1, -1, 263,
+ 264, -1, -1, -1, 268, 269, -1, -1, -1, 40,
+ -1, -1, 43, -1, 45, -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, 263, 264, -1, -1, -1, 268,
+ 269, -1, -1, -1, -1, 40, -1, -1, 43, -1,
+ 45, 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, 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, 295,
- 296, -1, 298, -1, 300, 301, 302, 303, 304, 40,
- 41, 123, 43, -1, 45, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
- -1, 62, -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, 40, 286, -1, 43, -1, 45, 291, 292,
- 293, 294, 295, 296, -1, 298, -1, 300, 301, 302,
- 303, 304, 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, 295, 296,
- -1, 298, -1, 300, 301, 302, 303, 304, 40, 41,
- -1, 43, -1, 45, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 257, 258, 259, 60, -1,
- 62, 263, 264, -1, -1, -1, 268, 269, -1, -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, 40, -1, -1, 43, -1, 45, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 60, -1, 62, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 259, -1,
- -1, -1, 263, 264, -1, -1, -1, 268, 269, 40,
- -1, -1, 43, -1, 45, -1, -1, -1, -1, 280,
- -1, 282, 283, 284, -1, 286, -1, -1, 59, -1,
- 291, 292, 293, 294, 295, 296, -1, 298, -1, 300,
- 301, 302, 303, 304, -1, -1, -1, -1, -1, -1,
- -1, 259, -1, -1, -1, 263, 264, -1, -1, 40,
- 268, 269, 43, -1, 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, 300, 301, 302, 303, 304, -1, -1, -1,
- -1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
- 45, -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, 295, 296, -1, 298, -1, 300, 301,
- 302, 303, 304, 40, -1, -1, 43, -1, 45, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 259, -1, -1, -1, 263, 264, -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, -1, -1, 43, -1, 45, -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, 295, 296,
- -1, 298, -1, 300, 301, 302, 303, 304, 259, -1,
- -1, -1, 263, 264, -1, -1, -1, 268, 269, -1,
+ -1, -1, -1, -1, 291, 292, 293, 294, -1, -1,
+ -1, 298, -1, -1, 301, 302, 303, 304, 259, -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, 300,
- 301, 302, 303, 304, -1, -1, -1, -1, 259, -1,
+ -1, 282, 283, 284, 63, 286, -1, -1, -1, -1,
+ 291, 292, 293, 294, -1, -1, -1, 298, -1, -1,
+ 301, 302, 303, 304, 259, -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,
+ 40, -1, -1, 43, -1, 45, -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, 300,
- 301, 302, 303, 304, 259, -1, -1, -1, 263, 264,
- -1, -1, -1, 268, 269, -1, -1, 47, 48, -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, 300, 301, 302, 303, 304,
- 80, -1, 82, 83, -1, -1, -1, -1, -1, -1,
- -1, -1, 259, -1, -1, -1, 263, 264, -1, -1,
- -1, 268, 269, -1, -1, -1, -1, -1, 108, 109,
- -1, -1, -1, 280, -1, 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, 27,
- 28, -1, -1, -1, -1, 33, -1, -1, -1, -1,
- -1, -1, -1, 41, -1, -1, -1, -1, -1, -1,
- 170, -1, -1, -1, -1, -1, 54, -1, -1, -1,
- -1, 181, -1, 183, -1, 185, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 206, -1, -1, -1,
- -1, -1, -1, 91, 92, 93, 94, 95, 96, -1,
- -1, 221, 222, 223, 224, 225, 104, -1, 106, -1,
- -1, -1, 110, 111, -1, -1, 114, -1, 116, 117,
- -1, -1, -1, 121, 122, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 132, -1, -1, -1, -1, 137,
- 138, 139, 140, -1, -1, -1, -1, -1, -1, 269,
- -1, -1, -1, 273, 274, 275, -1, -1, -1, 279,
- 158, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 304, 305, -1, -1, 186, -1,
- 310, -1, -1, -1, -1, -1, -1, -1, -1, 197,
- 198, -1, 200, 201, 202, 203, -1, 205, -1, 207,
- 208, -1, -1, -1, -1, -1, -1, 215, 216, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 227,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 252, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 264, 265, 266, 267,
- 268, -1, 270, 271, 272,
+ 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,
+ 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, -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,
+ -1, -1, 301, 302, 303, 304, 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, -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, 16, -1, -1, 298, -1,
+ -1, 301, 302, 303, 304, -1, 27, 28, -1, 30,
+ 31, -1, 33, -1, -1, -1, -1, 263, 264, -1,
+ 41, -1, 268, 269, -1, -1, -1, -1, -1, -1,
+ -1, -1, 53, -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, 93, 94, 95, 96, 97, 98, -1, -1,
+ -1, -1, -1, -1, -1, 106, -1, -1, 109, -1,
+ -1, -1, 113, 114, -1, -1, 117, -1, 119, 120,
+ -1, -1, -1, 124, 125, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, 139, -1,
+ 141, 142, 143, 144, -1, -1, -1, -1, -1, -1,
+ -1, 152, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 162, -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, 190,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 202, 203, -1, 205, 206, 207, 208, -1, 210,
+ -1, 212, 213, -1, -1, 27, 28, -1, -1, 220,
+ 221, 33, -1, -1, -1, -1, -1, -1, -1, 41,
+ -1, 232, 233, -1, -1, -1, -1, -1, -1, -1,
+ -1, 53, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 258, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 270,
+ 271, 272, 273, 274, -1, 276, 277, 278, -1, -1,
+ -1, 93, 94, 95, 96, 97, 98, -1, -1, -1,
+ -1, -1, -1, -1, 106, -1, -1, 109, -1, -1,
+ -1, 113, 114, -1, -1, 117, -1, 119, 120, -1,
+ -1, -1, 124, 125, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, 139, -1, 141,
+ 142, 143, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 162, -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, 190, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 202, 203, -1, 205, 206, 207, 208, -1, 210, -1,
+ 212, 213, -1, -1, -1, -1, -1, -1, 220, 221,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 232, 233, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 258, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 270, 271,
+ 272, 273, 274, -1, 276, 277, 278,
};
#define YYFINAL 1
#ifndef YYDEBUG
@@ -1806,6 +1866,7 @@ char *yyrule[] = {
"match : '(' match ')'",
"expr : term",
"expr : expr term",
+"expr : expr '?' expr ':' expr",
"expr : variable ASGNOP cond",
"term : variable",
"term : NUMBER",
@@ -1817,7 +1878,6 @@ char *yyrule[] = {
"term : term '%' term",
"term : term '^' term",
"term : term IN VAR",
-"term : cond '?' expr ':' expr",
"term : variable INCR",
"term : variable DECR",
"term : INCR variable",
@@ -1940,8 +2000,11 @@ short yyss[YYSTACKSIZE];
YYSTYPE yyvs[YYSTACKSIZE];
#define yystacksize YYSTACKSIZE
#line 396 "a2p.y"
+
+int yyparse _((void));
+
#include "a2py.c"
-#line 1945 "y.tab.c"
+#line 2008 "y.tab.c"
#define YYABORT goto yyabort
#define YYACCEPT goto yyaccept
#define YYERROR goto yyerrlab
@@ -2196,6 +2259,10 @@ case 34:
break;
case 35:
#line 137 "a2p.y"
+{ yyval = oper3(OCOND,yyvsp[-4],yyvsp[-2],yyvsp[0]); }
+break;
+case 36:
+#line 139 "a2p.y"
{ yyval = oper3(OASSIGN,yyvsp[-1],yyvsp[-2],yyvsp[0]);
if ((ops[yyvsp[-2]].ival & 255) == OFLD)
lval_field = TRUE;
@@ -2203,49 +2270,45 @@ case 35:
lval_field = TRUE;
}
break;
-case 36:
-#line 146 "a2p.y"
-{ yyval = yyvsp[0]; }
-break;
case 37:
#line 148 "a2p.y"
-{ yyval = oper1(ONUM,yyvsp[0]); }
+{ yyval = yyvsp[0]; }
break;
case 38:
#line 150 "a2p.y"
-{ yyval = oper1(OSTR,yyvsp[0]); }
+{ yyval = oper1(ONUM,yyvsp[0]); }
break;
case 39:
#line 152 "a2p.y"
-{ yyval = oper2(OADD,yyvsp[-2],yyvsp[0]); }
+{ yyval = oper1(OSTR,yyvsp[0]); }
break;
case 40:
#line 154 "a2p.y"
-{ yyval = oper2(OSUBTRACT,yyvsp[-2],yyvsp[0]); }
+{ yyval = oper2(OADD,yyvsp[-2],yyvsp[0]); }
break;
case 41:
#line 156 "a2p.y"
-{ yyval = oper2(OMULT,yyvsp[-2],yyvsp[0]); }
+{ yyval = oper2(OSUBTRACT,yyvsp[-2],yyvsp[0]); }
break;
case 42:
#line 158 "a2p.y"
-{ yyval = oper2(ODIV,yyvsp[-2],yyvsp[0]); }
+{ yyval = oper2(OMULT,yyvsp[-2],yyvsp[0]); }
break;
case 43:
#line 160 "a2p.y"
-{ yyval = oper2(OMOD,yyvsp[-2],yyvsp[0]); }
+{ yyval = oper2(ODIV,yyvsp[-2],yyvsp[0]); }
break;
case 44:
#line 162 "a2p.y"
-{ yyval = oper2(OPOW,yyvsp[-2],yyvsp[0]); }
+{ yyval = oper2(OMOD,yyvsp[-2],yyvsp[0]); }
break;
case 45:
#line 164 "a2p.y"
-{ yyval = oper2(ODEFINED,aryrefarg(yyvsp[0]),yyvsp[-2]); }
+{ yyval = oper2(OPOW,yyvsp[-2],yyvsp[0]); }
break;
case 46:
#line 166 "a2p.y"
-{ yyval = oper3(OCOND,yyvsp[-4],yyvsp[-2],yyvsp[0]); }
+{ yyval = oper2(ODEFINED,aryrefarg(yyvsp[0]),yyvsp[-2]); }
break;
case 47:
#line 168 "a2p.y"
@@ -2607,7 +2670,7 @@ case 137:
#line 392 "a2p.y"
{ yyval = oper3(OBLOCK,oper2(OJUNK,yyvsp[-3],yyvsp[-2]),Nullop,yyvsp[0]); }
break;
-#line 2611 "y.tab.c"
+#line 2674 "y.tab.c"
}
yyssp -= yym;
yystate = *yyssp;
diff --git a/x2p/a2p.h b/x2p/a2p.h
index 77d55ced7a..b00b0723ea 100644
--- a/x2p/a2p.h
+++ b/x2p/a2p.h
@@ -1,6 +1,6 @@
/* $RCSfile: a2p.h,v $$Revision: 4.1 $$Date: 92/08/07 18:29:09 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -8,9 +8,12 @@
* $Log: a2p.h,v $
*/
-#include "../embed.h"
#define VOIDUSED 1
-#include "../config.h"
+#ifdef VMS
+# include "config.h"
+#else
+# include "../config.h"
+#endif
#if defined(__STDC__) || defined(vax11c) || defined(_AIX) || defined(__stdc__) || defined(__cplusplus)
# define STANDARD_C 1
@@ -31,15 +34,29 @@
# include <sys/types.h>
#endif
+#ifdef USE_NEXT_CTYPE
-#ifdef USE_NEXT_CTYPE
+#if NX_CURRENT_COMPILER_RELEASE >= 400
+#include <objc/NXCType.h>
+#else /* NX_CURRENT_COMPILER_RELEASE < 400 */
#include <appkit/NXCType.h>
-#else
+#endif /* NX_CURRENT_COMPILER_RELEASE >= 400 */
+
+#else /* !USE_NEXT_CTYPE */
#include <ctype.h>
-#endif
+#endif /* USE_NEXT_CTYPE */
#define MEM_SIZE Size_t
+#ifdef STANDARD_C
+# include <stdlib.h>
+#else
+ Malloc_t malloc _((MEM_SIZE nbytes));
+ Malloc_t calloc _((MEM_SIZE elements, MEM_SIZE size));
+ Malloc_t realloc _((Malloc_t where, MEM_SIZE nbytes));
+ Free_t free _((Malloc_t where));
+#endif
+
#if defined(I_STRING) || defined(__cplusplus)
# include <string.h>
#else
@@ -87,7 +104,8 @@
# endif
#else
# if defined(VMS)
-# include "../vmsish.h"
+# define NO_PERL_TYPEDEFS
+# include "vmsish.h"
# endif
#endif
@@ -99,7 +117,15 @@ char *strchr(), *strrchr();
char *strcpy(), *strcat();
#endif /* ! STANDARD_C */
-#include "handy.h"
+#ifdef VMS
+# include "handy.h"
+#else
+# include "../handy.h"
+#endif
+
+#undef Nullfp
+#define Nullfp Null(FILE*)
+
#define Nullop 0
#define OPROG 1
@@ -389,6 +415,7 @@ EXT bool nomemok INIT(FALSE);
EXT char const_FS INIT(0);
EXT char *namelist INIT(Nullch);
EXT char fswitch INIT(0);
+EXT bool old_awk INIT(0);
EXT int saw_FS INIT(0);
EXT int maxfld INIT(0);
diff --git a/x2p/a2p.man b/x2p/a2p.man
deleted file mode 100644
index f74e596ed2..0000000000
--- a/x2p/a2p.man
+++ /dev/null
@@ -1,183 +0,0 @@
-.rn '' }`
-''' $RCSfile: a2p.man,v $$Revision: 4.1 $$Date: 92/08/07 18:29:10 $
-'''
-''' $Log: a2p.man,v $
-.de Sh
-.br
-.ne 5
-.PP
-\fB\\$1\fR
-.PP
-..
-.de Sp
-.if t .sp .5v
-.if n .sp
-..
-.de Ip
-.br
-.ie \\n.$>=3 .ne \\$3
-.el .ne 3
-.IP "\\$1" \\$2
-..
-'''
-''' Set up \*(-- to give an unbreakable dash;
-''' string Tr holds user defined translation string.
-''' Bell System Logo is used as a dummy character.
-'''
-.tr \(*W-|\(bv\*(Tr
-.ie n \{\
-.ds -- \(*W-
-.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
-.ds L" ""
-.ds R" ""
-.ds L' '
-.ds R' '
-'br\}
-.el\{\
-.ds -- \(em\|
-.tr \*(Tr
-.ds L" ``
-.ds R" ''
-.ds L' `
-.ds R' '
-'br\}
-.TH A2P 1 LOCAL
-.SH NAME
-a2p - Awk to Perl translator
-.SH SYNOPSIS
-.B a2p [options] filename
-.SH DESCRIPTION
-.I A2p
-takes an awk script specified on the command line (or from standard input)
-and produces a comparable
-.I perl
-script on the standard output.
-.Sh "Options"
-Options include:
-.TP 5
-.B \-D<number>
-sets debugging flags.
-.TP 5
-.B \-F<character>
-tells a2p that this awk script is always invoked with this -F switch.
-.TP 5
-.B \-n<fieldlist>
-specifies the names of the input fields if input does not have to be split into
-an array.
-If you were translating an awk script that processes the password file, you
-might say:
-.sp
- a2p -7 -nlogin.password.uid.gid.gcos.shell.home
-.sp
-Any delimiter can be used to separate the field names.
-.TP 5
-.B \-<number>
-causes a2p to assume that input will always have that many fields.
-.Sh "Considerations"
-A2p cannot do as good a job translating as a human would, but it usually
-does pretty well.
-There are some areas where you may want to examine the perl script produced
-and tweak it some.
-Here are some of them, in no particular order.
-.PP
-There is an awk idiom of putting int() around a string expression to force
-numeric interpretation, even though the argument is always integer anyway.
-This is generally unneeded in perl, but a2p can't tell if the argument
-is always going to be integer, so it leaves it in.
-You may wish to remove it.
-.PP
-Perl differentiates numeric comparison from string comparison.
-Awk has one operator for both that decides at run time which comparison
-to do.
-A2p does not try to do a complete job of awk emulation at this point.
-Instead it guesses which one you want.
-It's almost always right, but it can be spoofed.
-All such guesses are marked with the comment \*(L"#???\*(R".
-You should go through and check them.
-You might want to run at least once with the \-w switch to perl, which
-will warn you if you use == where you should have used eq.
-.PP
-Perl does not attempt to emulate the behavior of awk in which nonexistent
-array elements spring into existence simply by being referenced.
-If somehow you are relying on this mechanism to create null entries for
-a subsequent for...in, they won't be there in perl.
-.PP
-If a2p makes a split line that assigns to a list of variables that looks
-like (Fld1, Fld2, Fld3...) you may want
-to rerun a2p using the \-n option mentioned above.
-This will let you name the fields throughout the script.
-If it splits to an array instead, the script is probably referring to the number
-of fields somewhere.
-.PP
-The exit statement in awk doesn't necessarily exit; it goes to the END
-block if there is one.
-Awk scripts that do contortions within the END block to bypass the block under
-such circumstances can be simplified by removing the conditional
-in the END block and just exiting directly from the perl script.
-.PP
-Perl has two kinds of array, numerically-indexed and associative.
-Awk arrays are usually translated to associative arrays, but if you happen
-to know that the index is always going to be numeric you could change
-the {...} to [...].
-Iteration over an associative array is done using the keys() function, but
-iteration over a numeric array is NOT.
-You might need to modify any loop that is iterating over the array in question.
-.PP
-Awk starts by assuming OFMT has the value %.6g.
-Perl starts by assuming its equivalent, $#, to have the value %.20g.
-You'll want to set $# explicitly if you use the default value of OFMT.
-.PP
-Near the top of the line loop will be the split operation that is implicit in
-the awk script.
-There are times when you can move this down past some conditionals that
-test the entire record so that the split is not done as often.
-.PP
-For aesthetic reasons you may wish to change the array base $[ from 1 back
-to perl's default of 0, but remember to change all array subscripts AND
-all substr() and index() operations to match.
-.PP
-Cute comments that say "# Here is a workaround because awk is dumb" are passed
-through unmodified.
-.PP
-Awk scripts are often embedded in a shell script that pipes stuff into and
-out of awk.
-Often the shell script wrapper can be incorporated into the perl script, since
-perl can start up pipes into and out of itself, and can do other things that
-awk can't do by itself.
-.PP
-Scripts that refer to the special variables RSTART and RLENGTH can often
-be simplified by referring to the variables $`, $& and $', as long as they
-are within the scope of the pattern match that sets them.
-.PP
-The produced perl script may have subroutines defined to deal with awk's
-semantics regarding getline and print.
-Since a2p usually picks correctness over efficiency.
-it is almost always possible to rewrite such code to be more efficient by
-discarding the semantic sugar.
-.PP
-For efficiency, you may wish to remove the keyword from any return statement
-that is the last statement executed in a subroutine.
-A2p catches the most common case, but doesn't analyze embedded blocks for
-subtler cases.
-.PP
-ARGV[0] translates to $ARGV0, but ARGV[n] translates to $ARGV[$n].
-A loop that tries to iterate over ARGV[0] won't find it.
-.SH ENVIRONMENT
-A2p uses no environment variables.
-.SH AUTHOR
-Larry Wall <lwall@jpl-devvax.Jpl.Nasa.Gov>
-.SH FILES
-.SH SEE ALSO
-perl The perl compiler/interpreter
-.br
-s2p sed to perl translator
-.SH DIAGNOSTICS
-.SH BUGS
-It would be possible to emulate awk's behavior in selecting string versus
-numeric operations at run time by inspection of the operands, but it would
-be gross and inefficient.
-Besides, a2p almost always guesses right.
-.PP
-Storage for the awk syntax tree is currently static, and can run out.
-.rn }` ''
diff --git a/x2p/a2p.pod b/x2p/a2p.pod
new file mode 100644
index 0000000000..fa726fb101
--- /dev/null
+++ b/x2p/a2p.pod
@@ -0,0 +1,162 @@
+=head1 NAME
+
+a2p - Awk to Perl translator
+
+=head1 SYNOPSIS
+
+B<a2p [options] filename>
+
+=head1 DESCRIPTION
+
+I<A2p> takes an awk script specified on the command line (or from
+standard input) and produces a comparable I<perl> script on the
+standard output.
+
+=head2 Options
+
+Options include:
+
+=over 5
+
+=item B<-DE<lt>numberE<gt>>
+
+sets debugging flags.
+
+=item B<-FE<lt>characterE<gt>>
+
+tells a2p that this awk script is always invoked with this B<-F>
+switch.
+
+=item B<-nE<lt>fieldlistE<gt>>
+
+specifies the names of the input fields if input does not have to be
+split into an array. If you were translating an awk script that
+processes the password file, you might say:
+
+ a2p -7 -nlogin.password.uid.gid.gcos.shell.home
+
+Any delimiter can be used to separate the field names.
+
+=item B<-E<lt>numberE<gt>>
+
+causes a2p to assume that input will always have that many fields.
+
+=item B<-o>
+
+tells a2p to use old awk behavior. For now, the only difference is
+that old awk always has a line loop, even if there are no line
+actions, whereas new awk does not.
+
+=back
+
+=head2 "Considerations"
+
+A2p cannot do as good a job translating as a human would, but it
+usually does pretty well. There are some areas where you may want to
+examine the perl script produced and tweak it some. Here are some of
+them, in no particular order.
+
+There is an awk idiom of putting int() around a string expression to
+force numeric interpretation, even though the argument is always
+integer anyway. This is generally unneeded in perl, but a2p can't
+tell if the argument is always going to be integer, so it leaves it
+in. You may wish to remove it.
+
+Perl differentiates numeric comparison from string comparison. Awk
+has one operator for both that decides at run time which comparison to
+do. A2p does not try to do a complete job of awk emulation at this
+point. Instead it guesses which one you want. It's almost always
+right, but it can be spoofed. All such guesses are marked with the
+comment "C<#???>". You should go through and check them. You might
+want to run at least once with the B<-w> switch to perl, which will
+warn you if you use == where you should have used eq.
+
+Perl does not attempt to emulate the behavior of awk in which
+nonexistent array elements spring into existence simply by being
+referenced. If somehow you are relying on this mechanism to create
+null entries for a subsequent for...in, they won't be there in perl.
+
+If a2p makes a split line that assigns to a list of variables that
+looks like (Fld1, Fld2, Fld3...) you may want to rerun a2p using the
+B<-n> option mentioned above. This will let you name the fields
+throughout the script. If it splits to an array instead, the script
+is probably referring to the number of fields somewhere.
+
+The exit statement in awk doesn't necessarily exit; it goes to the END
+block if there is one. Awk scripts that do contortions within the END
+block to bypass the block under such circumstances can be simplified
+by removing the conditional in the END block and just exiting directly
+from the perl script.
+
+Perl has two kinds of array, numerically-indexed and associative.
+Perl associative arrays are called "hashes". Awk arrays are usually
+translated to hashes, but if you happen to know that the index is
+always going to be numeric you could change the {...} to [...].
+Iteration over a hash is done using the keys() function, but iteration
+over an array is NOT. You might need to modify any loop that iterates
+over such an array.
+
+Awk starts by assuming OFMT has the value %.6g. Perl starts by
+assuming its equivalent, $#, to have the value %.20g. You'll want to
+set $# explicitly if you use the default value of OFMT.
+
+Near the top of the line loop will be the split operation that is
+implicit in the awk script. There are times when you can move this
+down past some conditionals that test the entire record so that the
+split is not done as often.
+
+For aesthetic reasons you may wish to change the array base $[ from 1
+back to perl's default of 0, but remember to change all array
+subscripts AND all substr() and index() operations to match.
+
+Cute comments that say "# Here is a workaround because awk is dumb"
+are passed through unmodified.
+
+Awk scripts are often embedded in a shell script that pipes stuff into
+and out of awk. Often the shell script wrapper can be incorporated
+into the perl script, since perl can start up pipes into and out of
+itself, and can do other things that awk can't do by itself.
+
+Scripts that refer to the special variables RSTART and RLENGTH can
+often be simplified by referring to the variables $`, $& and $', as
+long as they are within the scope of the pattern match that sets them.
+
+The produced perl script may have subroutines defined to deal with
+awk's semantics regarding getline and print. Since a2p usually picks
+correctness over efficiency. it is almost always possible to rewrite
+such code to be more efficient by discarding the semantic sugar.
+
+For efficiency, you may wish to remove the keyword from any return
+statement that is the last statement executed in a subroutine. A2p
+catches the most common case, but doesn't analyze embedded blocks for
+subtler cases.
+
+ARGV[0] translates to $ARGV0, but ARGV[n] translates to $ARGV[$n]. A
+loop that tries to iterate over ARGV[0] won't find it.
+
+=head1 ENVIRONMENT
+
+A2p uses no environment variables.
+
+=head1 AUTHOR
+
+Larry Wall E<lt>F<larry@wall.org>E<gt>
+
+=head1 FILES
+
+=head1 SEE ALSO
+
+ perl The perl compiler/interpreter
+
+ s2p sed to perl translator
+
+=head1 DIAGNOSTICS
+
+=head1 BUGS
+
+It would be possible to emulate awk's behavior in selecting string
+versus numeric operations at run time by inspection of the operands,
+but it would be gross and inefficient. Besides, a2p almost always
+guesses right.
+
+Storage for the awk syntax tree is currently static, and can run out.
diff --git a/x2p/a2p.y b/x2p/a2p.y
index 961e2f280f..2d3f23923e 100644
--- a/x2p/a2p.y
+++ b/x2p/a2p.y
@@ -1,7 +1,7 @@
%{
/* $RCSfile: a2p.y,v $$Revision: 4.1 $$Date: 92/08/07 18:29:12 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -133,6 +133,8 @@ expr : term
{ $$ = $1; }
| expr term
{ $$ = oper2(OCONCAT,$1,$2); }
+ | expr '?' expr ':' expr
+ { $$ = oper3(OCOND,$1,$3,$5); }
| variable ASGNOP cond
{ $$ = oper3(OASSIGN,$2,$1,$3);
if ((ops[$1].ival & 255) == OFLD)
@@ -162,8 +164,6 @@ term : variable
{ $$ = oper2(OPOW,$1,$3); }
| term IN VAR
{ $$ = oper2(ODEFINED,aryrefarg($3),$1); }
- | cond '?' expr ':' expr
- { $$ = oper3(OCOND,$1,$3,$5); }
| variable INCR
{ $$ = oper1(OPOSTINCR,$1); }
| variable DECR
@@ -393,4 +393,7 @@ compound
;
%%
+
+int yyparse _((void));
+
#include "a2py.c"
diff --git a/x2p/a2py.c b/x2p/a2py.c
index 454e2dc860..3a3cb5275d 100644
--- a/x2p/a2py.c
+++ b/x2p/a2py.c
@@ -1,6 +1,6 @@
/* $RCSfile: a2py.c,v $$Revision: 4.1 $$Date: 92/08/07 18:29:14 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -27,6 +27,7 @@ int oper5();
STR *walk();
#ifdef OS2
+static void
usage()
{
printf("\nThis is the AWK to PERL translator, version 5.0, patchlevel %d\n", PATCHLEVEL);
@@ -41,6 +42,8 @@ usage()
exit(1);
}
#endif
+
+int
main(argc,argv,env)
register int argc;
register char **argv;
@@ -77,6 +80,9 @@ register char **env;
case 'n':
namelist = savestr(argv[0]+2);
break;
+ case 'o':
+ old_awk = TRUE;
+ break;
case '-':
argc--,argv++;
goto switch_end;
@@ -154,7 +160,9 @@ register char **env;
tmpstr = walk(0,0,root,&i,P_MIN);
str = str_make(STARTPERL);
- str_cat(str, "\neval 'exec perl -S $0 \"$@\"'\n\
+ str_cat(str, "\neval 'exec ");
+ str_cat(str, BIN);
+ str_cat(str, "/perl -S $0 ${1+\"$@\"}'\n\
if $running_under_some_shell;\n\
# this emulates #! processing on NIH machines.\n\
# (remove #! line above if indigestible)\n\n");
@@ -1289,10 +1297,10 @@ int prevargs;
numargs = fixrargs(name,ops[arg+3].ival,numargs);
}
else {
- char tmpbuf[128];
-
+ char *tmpbuf = safemalloc(strlen(name) + (sizeof(prevargs) * 3) + 5);
sprintf(tmpbuf,"%s:%d",name,prevargs);
str = hfetch(curarghash,tmpbuf);
+ safefree(tmpbuf);
if (str && strEQ(str->str_ptr,"*")) {
if (type == OVAR || type == OSTAR) {
ops[arg].ival &= ~255;
diff --git a/x2p/cflags.SH b/x2p/cflags.SH
index 531ef65805..62bd11c9d9 100755
--- a/x2p/cflags.SH
+++ b/x2p/cflags.SH
@@ -14,13 +14,21 @@ esac
: This forces SH files to create target in same directory as SH file.
: This is so that make depend always knows where to find SH derivatives.
case "$0" in
-*/*) cd `expr X$0 : 'X\(.*\)/'` ;;
+*/cflags.SH) cd `expr X$0 : 'X\(.*\)/'` ;;
+cflags.SH) ;;
+*) case `pwd` in
+ */x2p) ;;
+ *) if test -d x2p; then cd x2p
+ else echo "Can't figure out where to write output."; exit 1
+ fi;;
+ esac;;
esac
echo "Extracting x2p/cflags (with variable substitutions)"
: This section of the file will have variable substitutions done on it.
: Move anything that needs config subs from !NO!SUBS! section to !GROK!THIS!.
: Protect any dollar signs and backticks that you do not want interpreted
: by putting a backslash in front. You may delete these comments.
+rm -f cflags
$spitshell >cflags <<!GROK!THIS!
!GROK!THIS!
@@ -74,7 +82,7 @@ for file do
*) ;;
esac
- ccflags="`echo $ccflags | sed -e 's/-DEMBED//'`"
+ ccflags="`echo $ccflags | sed -e 's/-DMULTIPLICITY//'`"
echo "$cc -c $ccflags $optimize $large $split"
eval "$also "'"$cc -c $ccflags $optimize $large $split"'
diff --git a/x2p/find2perl.PL b/x2p/find2perl.PL
index 32f78fe23f..c23fc923a8 100644
--- a/x2p/find2perl.PL
+++ b/x2p/find2perl.PL
@@ -12,10 +12,9 @@ use File::Basename qw(&basename &dirname);
# This forces PL files to create target in same directory as PL file.
# This is so that make depend always knows where to find PL derivatives.
-chdir(dirname($0));
-($file = basename($0)) =~ s/\.PL$//;
-$file =~ s/\.pl$//
- if ($^O eq 'VMS' or $^O eq 'os2'); # "case-forgiving"
+chdir dirname($0);
+$file = basename($0, '.PL');
+$file .= '.com' if $^O eq 'VMS';
open OUT,">$file" or die "Can't create $file: $!";
@@ -25,10 +24,11 @@ print "Extracting $file (with variable substitutions)\n";
# You can use $Config{...} to use Configure variables.
print OUT <<"!GROK!THIS!";
-$Config{'startperl'}
- eval 'exec perl -S \$0 "\$@"'
- if 0;
+$Config{startperl}
+ eval 'exec $Config{perlpath} -S \$0 \${1+"\$@"}'
+ if \$running_under_some_shell;
\$startperl = "$Config{startperl}";
+\$perlpath = "$Config{perlpath}";
!GROK!THIS!
# In the following, perl variables are not expanded during extraction.
@@ -241,8 +241,7 @@ while (@ARGV) {
print <<"END";
$startperl
-
-eval 'exec perl -S \$0 \${1+"\$@"}'
+ eval 'exec $perlpath -S \$0 \${1+"\$@"}'
if \$running_under_some_shell;
END
diff --git a/x2p/handy.h b/x2p/handy.h
deleted file mode 100644
index 0049a1108b..0000000000
--- a/x2p/handy.h
+++ /dev/null
@@ -1,172 +0,0 @@
-/* handy.h
- *
- * Copyright (c) 1991-1994, 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.
- *
- */
-
-#if !defined(__STDC__)
-#ifdef NULL
-#undef NULL
-#endif
-#ifndef I286
-# define NULL 0
-#else
-# define NULL 0L
-#endif
-#endif
-
-#define Null(type) ((type)NULL)
-#define Nullch Null(char*)
-#define Nullfp Null(FILE*)
-#define Nullsv Null(SV*)
-
-#ifdef UTS
-#define bool int
-#else
-#define bool char
-#endif
-
-#ifdef TRUE
-#undef TRUE
-#endif
-#ifdef FALSE
-#undef FALSE
-#endif
-#define TRUE (1)
-#define FALSE (0)
-
-typedef char I8;
-typedef unsigned char U8;
-
-typedef short I16;
-typedef unsigned short U16;
-
-#if BYTEORDER > 0x4321
- typedef int I32;
- typedef unsigned int U32;
-#else
- typedef long I32;
- typedef unsigned long U32;
-#endif
-
-#define Ctl(ch) (ch & 037)
-
-#define strNE(s1,s2) (strcmp(s1,s2))
-#define strEQ(s1,s2) (!strcmp(s1,s2))
-#define strLT(s1,s2) (strcmp(s1,s2) < 0)
-#define strLE(s1,s2) (strcmp(s1,s2) <= 0)
-#define strGT(s1,s2) (strcmp(s1,s2) > 0)
-#define strGE(s1,s2) (strcmp(s1,s2) >= 0)
-#define strnNE(s1,s2,l) (strncmp(s1,s2,l))
-#define strnEQ(s1,s2,l) (!strncmp(s1,s2,l))
-
-#ifdef HAS_SETLOCALE /* XXX Is there a better test for this? */
-# ifndef CTYPE256
-# define CTYPE256
-# endif
-#endif
-
-#ifdef USE_NEXT_CTYPE
-#define isALNUM(c) (NXIsAlpha((unsigned int)c) || NXIsDigit((unsigned int)c) || c == '_')
-#define isIDFIRST(c) (NXIsAlpha((unsigned int)c) || c == '_')
-#define isALPHA(c) NXIsAlpha((unsigned int)c)
-#define isSPACE(c) NXIsSpace((unsigned int)c)
-#define isDIGIT(c) NXIsDigit((unsigned int)c)
-#define isUPPER(c) NXIsUpper((unsigned int)c)
-#define isLOWER(c) NXIsLower((unsigned int)c)
-#define toUPPER(c) NXToUpper((unsigned int)c)
-#define toLOWER(c) NXToLower((unsigned int)c)
-#else /* USE_NEXT_CTYPE */
-#if defined(CTYPE256) || (!defined(isascii) && !defined(HAS_ISASCII))
-#define isALNUM(c) (isalpha((unsigned char)(c)) || isdigit((unsigned char)(c)) || c == '_')
-#define isIDFIRST(c) (isalpha((unsigned char)(c)) || (c) == '_')
-#define isALPHA(c) isalpha((unsigned char)(c))
-#define isSPACE(c) isspace((unsigned char)(c))
-#define isDIGIT(c) isdigit((unsigned char)(c))
-#define isUPPER(c) isupper((unsigned char)(c))
-#define isLOWER(c) islower((unsigned char)(c))
-#define toUPPER(c) toupper((unsigned char)(c))
-#define toLOWER(c) tolower((unsigned char)(c))
-#else
-#define isALNUM(c) (isascii(c) && (isalpha(c) || isdigit(c) || c == '_'))
-#define isIDFIRST(c) (isascii(c) && (isalpha(c) || (c) == '_'))
-#define isALPHA(c) (isascii(c) && isalpha(c))
-#define isSPACE(c) (isascii(c) && isspace(c))
-#define isDIGIT(c) (isascii(c) && isdigit(c))
-#define isUPPER(c) (isascii(c) && isupper(c))
-#define isLOWER(c) (isascii(c) && islower(c))
-#define toUPPER(c) toupper(c)
-#define toLOWER(c) tolower(c)
-#endif
-#endif /* USE_NEXT_CTYPE */
-
-/* Line numbers are unsigned, 16 bits. */
-typedef U16 line_t;
-#ifdef lint
-#define NOLINE ((line_t)0)
-#else
-#define NOLINE ((line_t) 65535)
-#endif
-
-#ifndef lint
-#ifndef LEAKTEST
-#ifndef safemalloc
-Malloc_t safemalloc _((MEM_SIZE));
-Malloc_t saferealloc _((char *, MEM_SIZE));
-void safefree _((char *));
-#endif
-#ifndef MSDOS
-#define New(x,v,n,t) (v = (t*)safemalloc((MEM_SIZE)((n) * sizeof(t))))
-#define Newc(x,v,n,t,c) (v = (c*)safemalloc((MEM_SIZE)((n) * sizeof(t))))
-#define Newz(x,v,n,t) (v = (t*)safemalloc((MEM_SIZE)((n) * sizeof(t)))), \
- memzero((char*)(v), (n) * sizeof(t))
-#define Renew(v,n,t) (v = (t*)saferealloc((char*)(v),(MEM_SIZE)((n)*sizeof(t))))
-#define Renewc(v,n,t,c) (v = (c*)saferealloc((char*)(v),(MEM_SIZE)((n)*sizeof(t))))
-#else
-#define New(x,v,n,t) (v = (t*)safemalloc(((unsigned long)(n) * sizeof(t))))
-#define Newc(x,v,n,t,c) (v = (c*)safemalloc(((unsigned long)(n) * sizeof(t))))
-#define Newz(x,v,n,t) (v = (t*)safemalloc(((unsigned long)(n) * sizeof(t)))), \
- memzero((char*)(v), (n) * sizeof(t))
-#define Renew(v,n,t) (v = (t*)saferealloc((char*)(v),((unsigned long)(n)*sizeof(t))))
-#define Renewc(v,n,t,c) (v = (c*)saferealloc((char*)(v),((unsigned long)(n)*sizeof(t))))
-#endif /* MSDOS */
-#define Safefree(d) safefree((char*)d)
-#define NEWSV(x,len) newSV(len)
-#else /* LEAKTEST */
-char *safexmalloc();
-char *safexrealloc();
-void safexfree();
-#define New(x,v,n,t) (v = (t*)safexmalloc(x,(MEM_SIZE)((n) * sizeof(t))))
-#define Newc(x,v,n,t,c) (v = (c*)safexmalloc(x,(MEM_SIZE)((n) * sizeof(t))))
-#define Newz(x,v,n,t) (v = (t*)safexmalloc(x,(MEM_SIZE)((n) * sizeof(t)))), \
- memzero((char*)(v), (n) * sizeof(t))
-#define Renew(v,n,t) (v = (t*)safexrealloc((char*)(v),(MEM_SIZE)((n)*sizeof(t))))
-#define Renewc(v,n,t,c) (v = (c*)safexrealloc((char*)(v),(MEM_SIZE)((n)*sizeof(t))))
-#define Safefree(d) safexfree((char*)d)
-#define NEWSV(x,len) newSV(x,len)
-#define MAXXCOUNT 1200
-long xcount[MAXXCOUNT];
-long lastxcount[MAXXCOUNT];
-#endif /* LEAKTEST */
-#define Move(s,d,n,t) (void)memmove((char*)(d),(char*)(s), (n) * sizeof(t))
-#define Copy(s,d,n,t) (void)memcpy((char*)(d),(char*)(s), (n) * sizeof(t))
-#define Zero(d,n,t) (void)memzero((char*)(d), (n) * sizeof(t))
-#else /* lint */
-#define New(x,v,n,s) (v = Null(s *))
-#define Newc(x,v,n,s,c) (v = Null(s *))
-#define Newz(x,v,n,s) (v = Null(s *))
-#define Renew(v,n,s) (v = Null(s *))
-#define Move(s,d,n,t)
-#define Copy(s,d,n,t)
-#define Zero(d,n,t)
-#define Safefree(d) d = d
-#endif /* lint */
-
-#ifdef USE_STRUCT_COPY
-#define StructCopy(s,d,t) *((t*)(d)) = *((t*)(s))
-#else
-#define StructCopy(s,d,t) Copy(s,d,1,t)
-#endif
diff --git a/x2p/hash.c b/x2p/hash.c
index 58236f49e4..5859eab470 100644
--- a/x2p/hash.c
+++ b/x2p/hash.c
@@ -1,6 +1,6 @@
/* $RCSfile: hash.c,v $$Revision: 4.1 $$Date: 92/08/07 18:29:20 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
diff --git a/x2p/hash.h b/x2p/hash.h
index f61a29f4e6..9dc64a1dcd 100644
--- a/x2p/hash.h
+++ b/x2p/hash.h
@@ -1,6 +1,6 @@
/* $RCSfile: hash.h,v $$Revision: 4.1 $$Date: 92/08/07 18:29:21 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
diff --git a/x2p/proto.h b/x2p/proto.h
new file mode 100644
index 0000000000..85d749616a
--- /dev/null
+++ b/x2p/proto.h
@@ -0,0 +1,8 @@
+/* proto.h
+ *
+ * Copyright (c) 1991-1997, 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.
+ *
+ */
diff --git a/x2p/s2p.PL b/x2p/s2p.PL
index 0d8ea3722c..73f67872de 100644
--- a/x2p/s2p.PL
+++ b/x2p/s2p.PL
@@ -12,10 +12,9 @@ use File::Basename qw(&basename &dirname);
# This forces PL files to create target in same directory as PL file.
# This is so that make depend always knows where to find PL derivatives.
-chdir(dirname($0));
-($file = basename($0)) =~ s/\.PL$//;
-$file =~ s/\.pl$//
- if ($^O eq 'VMS' or $^O eq 'os2'); # "case-forgiving"
+chdir dirname($0);
+$file = basename($0, '.PL');
+$file .= '.com' if $^O eq 'VMS';
open OUT,">$file" or die "Can't create $file: $!";
@@ -25,22 +24,92 @@ print "Extracting $file (with variable substitutions)\n";
# You can use $Config{...} to use Configure variables.
print OUT <<"!GROK!THIS!";
-$Config{'startperl'}
- eval 'exec perl -S \$0 "\$@"'
- if 0;
+$Config{startperl}
+ eval 'exec $Config{perlpath} -S \$0 \${1+"\$@"}'
+ if \$running_under_some_shell;
\$startperl = "$Config{startperl}";
+\$perlpath = "$Config{perlpath}";
!GROK!THIS!
# In the following, perl variables are not expanded during extraction.
print OUT <<'!NO!SUBS!';
-# $RCSfile: s2p.PL,v $$Revision: 1.1.1.1 $$Date: 1997/01/11 12:49:38 $
-#
-# $Log: s2p.PL,v $
-# Revision 1.1.1.1 1997/01/11 12:49:38 mbeattie
-# 5.003
+# $RCSfile: s2p.SH,v $$Revision: 4.1 $$Date: 92/08/07 18:29:23 $
#
+# $Log: s2p.SH,v $
+
+=head1 NAME
+
+s2p - Sed to Perl translator
+
+=head1 SYNOPSIS
+
+B<s2p [options] filename>
+
+=head1 DESCRIPTION
+
+I<S2p> takes a sed script specified on the command line (or from
+standard input) and produces a comparable I<perl> script on the
+standard output.
+
+=head2 Options
+
+Options include:
+
+=over 5
+
+=item B<-DE<lt>numberE<gt>>
+
+sets debugging flags.
+
+=item B<-n>
+
+specifies that this sed script was always invoked with a B<sed -n>.
+Otherwise a switch parser is prepended to the front of the script.
+
+=item B<-p>
+
+specifies that this sed script was never invoked with a B<sed -n>.
+Otherwise a switch parser is prepended to the front of the script.
+
+=back
+
+=head2 Considerations
+
+The perl script produced looks very sed-ish, and there may very well
+be better ways to express what you want to do in perl. For instance,
+s2p does not make any use of the split operator, but you might want
+to.
+
+The perl script you end up with may be either faster or slower than
+the original sed script. If you're only interested in speed you'll
+just have to try it both ways. Of course, if you want to do something
+sed doesn't do, you have no choice. It's often possible to speed up
+the perl script by various methods, such as deleting all references to
+$\ and chop.
+
+=head1 ENVIRONMENT
+
+S2p uses no environment variables.
+
+=head1 AUTHOR
+
+Larry Wall E<lt>F<larry@wall.org>E<gt>
+
+=head1 FILES
+
+=head1 SEE ALSO
+
+ perl The perl compiler/interpreter
+
+ a2p awk to perl translator
+
+=head1 DIAGNOSTICS
+
+=head1 BUGS
+
+=cut
$indent = 4;
$shiftwidth = 4;
@@ -297,7 +366,7 @@ unless ($debug) {
print &q(<<"EOT");
: $startperl
-: eval 'exec perl -S \$0 \${1+"\$@"}'
+: eval 'exec $perlpath -S \$0 \${1+"\$@"}'
: if \$running_under_some_shell;
:
EOT
diff --git a/x2p/s2p.man b/x2p/s2p.man
deleted file mode 100644
index ae4611613f..0000000000
--- a/x2p/s2p.man
+++ /dev/null
@@ -1,92 +0,0 @@
-.rn '' }`
-''' $RCSfile: s2p.man,v $$Revision: 4.1 $$Date: 92/08/07 18:29:24 $
-'''
-''' $Log: s2p.man,v $
-.de Sh
-.br
-.ne 5
-.PP
-\fB\\$1\fR
-.PP
-..
-.de Sp
-.if t .sp .5v
-.if n .sp
-..
-.de Ip
-.br
-.ie \\n.$>=3 .ne \\$3
-.el .ne 3
-.IP "\\$1" \\$2
-..
-'''
-''' Set up \*(-- to give an unbreakable dash;
-''' string Tr holds user defined translation string.
-''' Bell System Logo is used as a dummy character.
-'''
-.tr \(*W-|\(bv\*(Tr
-.ie n \{\
-.ds -- \(*W-
-.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
-.ds L" ""
-.ds R" ""
-.ds L' '
-.ds R' '
-'br\}
-.el\{\
-.ds -- \(em\|
-.tr \*(Tr
-.ds L" ``
-.ds R" ''
-.ds L' `
-.ds R' '
-'br\}
-.TH S2P 1 NEW
-.SH NAME
-s2p - Sed to Perl translator
-.SH SYNOPSIS
-.B s2p [options] filename
-.SH DESCRIPTION
-.I S2p
-takes a sed script specified on the command line (or from standard input)
-and produces a comparable
-.I perl
-script on the standard output.
-.Sh "Options"
-Options include:
-.TP 5
-.B \-D<number>
-sets debugging flags.
-.TP 5
-.B \-n
-specifies that this sed script was always invoked with a sed -n.
-Otherwise a switch parser is prepended to the front of the script.
-.TP 5
-.B \-p
-specifies that this sed script was never invoked with a sed -n.
-Otherwise a switch parser is prepended to the front of the script.
-.Sh "Considerations"
-The perl script produced looks very sed-ish, and there may very well be
-better ways to express what you want to do in perl.
-For instance, s2p does not make any use of the split operator, but you might
-want to.
-.PP
-The perl script you end up with may be either faster or slower than the original
-sed script.
-If you're only interested in speed you'll just have to try it both ways.
-Of course, if you want to do something sed doesn't do, you have no choice.
-It's often possible to speed up the perl script by various methods, such
-as deleting all references to $\e and chop.
-.SH ENVIRONMENT
-S2p uses no environment variables.
-.SH AUTHOR
-Larry Wall <lwall@jpl-devvax.Jpl.Nasa.Gov>
-.SH FILES
-.SH SEE ALSO
-perl The perl compiler/interpreter
-.br
-a2p awk to perl translator
-.SH DIAGNOSTICS
-.SH BUGS
-.rn }` ''
diff --git a/x2p/str.c b/x2p/str.c
index e9dd34400f..88b3c60405 100644
--- a/x2p/str.c
+++ b/x2p/str.c
@@ -1,6 +1,6 @@
/* $RCSfile: str.c,v $$Revision: 4.1 $$Date: 92/08/07 18:29:26 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -41,7 +41,7 @@ register STR *str;
str->str_pok = 1;
#ifdef DEBUGGING
if (debug & 32)
- fprintf(stderr,"0x%lx ptr(%s)\n",str,str->str_ptr);
+ fprintf(stderr,"0x%lx ptr(%s)\n",(unsigned long)str,str->str_ptr);
#endif
return str->str_ptr;
}
@@ -59,7 +59,7 @@ register STR *str;
str->str_nok = 1;
#ifdef DEBUGGING
if (debug & 32)
- fprintf(stderr,"0x%lx num(%g)\n",str,str->str_nval);
+ fprintf(stderr,"0x%lx num(%g)\n",(unsigned long)str,str->str_nval);
#endif
return str->str_nval;
}
@@ -297,6 +297,16 @@ register FILE *fp;
int i;
int bpx;
+#if defined(VMS)
+ /* An ungetc()d char is handled separately from the regular
+ * buffer, so we getc() it back out and stuff it in the buffer.
+ */
+ i = getc(fp);
+ if (i == EOF) return Nullch;
+ *(--((*fp)->_ptr)) = (unsigned char) i;
+ (*fp)->_cnt++;
+#endif
+
cnt = FILE_cnt(fp); /* get count into register */
str->str_nok = 0; /* invalidate number */
str->str_pok = 1; /* validate pointer */
@@ -317,7 +327,7 @@ register FILE *fp;
FILE_cnt(fp) = cnt; /* deregisterize cnt and ptr */
FILE_ptr(fp) = ptr;
- i = _filbuf(fp); /* get more characters */
+ i = getc(fp); /* get more characters */
cnt = FILE_cnt(fp);
ptr = FILE_ptr(fp); /* reregisterize cnt and ptr */
diff --git a/x2p/str.h b/x2p/str.h
index 9d495ab0ba..3deaaec76f 100644
--- a/x2p/str.h
+++ b/x2p/str.h
@@ -1,6 +1,6 @@
/* $RCSfile: str.h,v $$Revision: 4.1 $$Date: 92/08/07 18:29:27 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
diff --git a/x2p/util.c b/x2p/util.c
index 5c3554b7e3..e8b666f393 100644
--- a/x2p/util.c
+++ b/x2p/util.c
@@ -1,6 +1,6 @@
/* $RCSfile: util.c,v $$Revision: 4.1 $$Date: 92/08/07 18:29:29 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -13,6 +13,9 @@
#include "INTERN.h"
#include "util.h"
+#ifdef I_STDARG
+# include <stdarg.h>
+#endif
#define FLUSH
static char nomem[] = "Out of memory!\n";
@@ -24,13 +27,14 @@ Malloc_t
safemalloc(size)
MEM_SIZE size;
{
- char *ptr;
- Malloc_t malloc();
+ Malloc_t ptr;
- ptr = (char *) malloc(size?size:1); /* malloc(0) is NASTY on our system */
+ /* malloc(0) is NASTY on some systems */
+ ptr = malloc(size ? size : 1);
#ifdef DEBUGGING
if (debug & 128)
- fprintf(stderr,"0x%x: (%05d) malloc %d bytes\n",ptr,an++,size);
+ fprintf(stderr,"0x%lx: (%05d) malloc %d bytes\n",(unsigned long)ptr,
+ an++,size);
#endif
if (ptr != Nullch)
return ptr;
@@ -45,18 +49,17 @@ MEM_SIZE size;
Malloc_t
saferealloc(where,size)
-char *where;
+Malloc_t where;
MEM_SIZE size;
{
- char *ptr;
- Malloc_t realloc();
+ Malloc_t ptr;
- ptr = (char *)
- realloc(where,size?size:1); /* realloc(0) is NASTY on our system */
+ /* realloc(0) is NASTY on some systems */
+ ptr = realloc(where, size ? size : 1);
#ifdef DEBUGGING
if (debug & 128) {
- fprintf(stderr,"0x%x: (%05d) rfree\n",where,an++);
- fprintf(stderr,"0x%x: (%05d) realloc %d bytes\n",ptr,an++,size);
+ fprintf(stderr,"0x%lx: (%05d) rfree\n",(unsigned long)where,an++);
+ fprintf(stderr,"0x%lx: (%05d) realloc %d bytes\n",(unsigned long)ptr,an++,size);
}
#endif
if (ptr != Nullch)
@@ -70,13 +73,13 @@ MEM_SIZE size;
/* safe version of free */
-void
+Free_t
safefree(where)
-char *where;
+Malloc_t where;
{
#ifdef DEBUGGING
if (debug & 128)
- fprintf(stderr,"0x%x: (%05d) free\n",where,an++);
+ fprintf(stderr,"0x%lx: (%05d) free\n",(unsigned long)where,an++);
#endif
free(where);
}
@@ -189,32 +192,65 @@ int newlen;
}
}
-/*VARARGS1*/
void
+#if defined(I_STDARG) && defined(HAS_VPRINTF)
+croak(char *pat,...)
+#else /* I_STDARG */
+/*VARARGS1*/
croak(pat,a1,a2,a3,a4)
-char *pat;
-int a1,a2,a3,a4;
+ char *pat;
+ int a1,a2,a3,a4;
+#endif /* I_STDARG */
{
+#if defined(I_STDARG) && defined(HAS_VPRINTF)
+ va_list args;
+
+ va_start(args, pat);
+ vfprintf(stderr,pat,args);
+#else
fprintf(stderr,pat,a1,a2,a3,a4);
+#endif
exit(1);
}
-/*VARARGS1*/
void
+#if defined(I_STDARG) && defined(HAS_VPRINTF)
+fatal(char *pat,...)
+#else /* I_STDARG */
+/*VARARGS1*/
fatal(pat,a1,a2,a3,a4)
-char *pat;
-int a1,a2,a3,a4;
+ char *pat;
+ int a1,a2,a3,a4;
+#endif /* I_STDARG */
{
+#if defined(I_STDARG) && defined(HAS_VPRINTF)
+ va_list args;
+
+ va_start(args, pat);
+ vfprintf(stderr,pat,args);
+#else
fprintf(stderr,pat,a1,a2,a3,a4);
+#endif
exit(1);
}
-/*VARARGS1*/
void
+#if defined(I_STDARG) && defined(HAS_VPRINTF)
+warn(char *pat,...)
+#else /* I_STDARG */
+/*VARARGS1*/
warn(pat,a1,a2,a3,a4)
-char *pat;
-int a1,a2,a3,a4;
+ char *pat;
+ int a1,a2,a3,a4;
+#endif /* I_STDARG */
{
+#if defined(I_STDARG) && defined(HAS_VPRINTF)
+ va_list args;
+
+ va_start(args, pat);
+ vfprintf(stderr,pat,args);
+#else
fprintf(stderr,pat,a1,a2,a3,a4);
+#endif
}
diff --git a/x2p/util.h b/x2p/util.h
index 35f796121c..ff93e8ac7a 100644
--- a/x2p/util.h
+++ b/x2p/util.h
@@ -1,6 +1,6 @@
/* $RCSfile: util.h,v $$Revision: 4.1 $$Date: 92/08/07 18:29:30 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -24,10 +24,22 @@ int makedir();
char * cpy2 _(( char *to, char *from, int delim ));
char * cpytill _(( char *to, char *from, int delim ));
-void croak _(( char *pat, int a1, int a2, int a3, int a4 ));
void growstr _(( char **strptr, int *curlen, int newlen ));
char * instr _(( char *big, char *little ));
-void Myfatal ();
char * safecpy _(( char *to, char *from, int len ));
char * savestr _(( char *str ));
+#if defined(I_STDARG) && defined(HAS_VPRINTF)
+void croak _(( char *pat, ... ));
+void fatal _(( char *pat, ... ));
+void warn _(( char *pat, ... ));
+#else /* defined(I_STDARG) && defined(HAS_VPRINTF) */
+void croak _(( char *pat, int a1, int a2, int a3, int a4 ));
+void Myfatal ();
void warn ();
+#endif /* defined(I_STDARG) && defined(HAS_VPRINTF) */
+int prewalk _(( int numit, int level, int node, int *numericptr ));
+
+Malloc_t safemalloc _((MEM_SIZE nbytes));
+Malloc_t safecalloc _((MEM_SIZE elements, MEM_SIZE size));
+Malloc_t saferealloc _((Malloc_t where, MEM_SIZE nbytes));
+Free_t safefree _((Malloc_t where));
diff --git a/x2p/walk.c b/x2p/walk.c
index 403d686e39..cb40073b22 100644
--- a/x2p/walk.c
+++ b/x2p/walk.c
@@ -1,6 +1,6 @@
/* $RCSfile: walk.c,v $$Revision: 4.1 $$Date: 92/08/07 18:29:31 $
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (c) 1991-1997, 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.
@@ -145,7 +145,7 @@ int minprec; /* minimum precedence without parens */
if (saw_FNR)
str_cat(str,"continue {\n $FNRbase = $. if eof;\n}\n");
}
- else
+ else if (old_awk)
str_cat(str,"while (<>) { } # (no line actions)\n");
if (ops[node+4].ival) {
realexit = TRUE;