From 317e600f41ecfa0862680ff0328077f6fc0e598c Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Wed, 15 Aug 2007 15:20:01 +0000 Subject: [PATCH] Remove monitor support until there is a versino of systrace that uses a lookaside buffer (or we have a better mechanism to use). --- INSTALL | 8 - Makefile.in | 4 +- WHATSNEW | 8 - config.h.in | 12 - configure.in | 21 - def_data.c | 4 - def_data.h | 26 +- def_data.in | 3 - gram.c | 621 +++--- gram.h | 20 +- gram.y | 16 +- parse.c | 7 - parse.h | 1 - pathnames.h.in | 4 - sudo.c | 5 - sudo.h | 3 - sudoers.pod | 58 +- testsudoers.c | 4 +- toke.c | 5745 ++++++++++++++++++++++++------------------------ toke.l | 10 - 20 files changed, 3181 insertions(+), 3399 deletions(-) diff --git a/INSTALL b/INSTALL index e612d9a35..1f00e1627 100644 --- a/INSTALL +++ b/INSTALL @@ -252,14 +252,6 @@ Special features/options: is to compile noexec support if libtool supports building shared objects on your OS. - --with-systrace[=DIR] - Enable support for the systrace(4) tracing facility. This - allows sudo to control execution of further commands by - the program being run through sudo. On systems with - systrace(4) support this is a better option than the - "noexec" facility. If DIR is specified it indicates the - directory in which to find the systrace.h include file. - --disable-root-mailer By default sudo will run the mailer as root when tattling on a user so as to prevent that user from killing the mailer. diff --git a/Makefile.in b/Makefile.in index 3abba90c0..a7cfef659 100644 --- a/Makefile.in +++ b/Makefile.in @@ -101,7 +101,7 @@ PROGS = @PROGS@ SRCS = alloc.c alloca.c check.c closefrom.c def_data.c defaults.c env.c \ error.c fileops.c find_path.c fnmatch.c getcwd.c getprogname.c \ getspwuid.c gettime.c goodpath.c gram.c gram.y interfaces.c ldap.c \ - logging.c match.c mkstemp.c memrchr.c mon_systrace.c parse.c pwutil.c \ + logging.c match.c mkstemp.c memrchr.c parse.c pwutil.c \ set_perms.c sigaction.c snprintf.c strcasecmp.c strerror.c strlcat.c \ strlcpy.c sudo.c sudo_noexec.c sudo_edit.c testsudoers.c tgetpass.c \ toke.c toke.l tsgetgrpw.c utimes.c visudo.c zero_bytes.c redblack.c \ @@ -263,8 +263,6 @@ mkstemp.o: $(srcdir)/mkstemp.c $(SUDODEP) $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/mkstemp.c mon_solaris.o: $(srcdir)/mon_solaris.c $(SUDODEP) $(srcdir)/mon_solaris.h $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/mon_solaris.c -mon_systrace.o: $(srcdir)/mon_systrace.c $(SUDODEP) $(srcdir)/mon_systrace.h - $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/mon_systrace.c parse.o: $(srcdir)/parse.c $(SUDODEP) $(srcdir)/parse.h $(devdir)/gram.h $(CC) -c $(CPPFLAGS) $(CFLAGS) $(DEFS) $(OPTIONS) $(srcdir)/parse.c pwutil.o: $(srcdir)/pwutil.c $(SUDODEP) diff --git a/WHATSNEW b/WHATSNEW index ddf80960f..13c56d13f 100644 --- a/WHATSNEW +++ b/WHATSNEW @@ -5,14 +5,6 @@ What's new in Sudo 1.7? apply sudoers Defaults entries before searching for the command. It also adds support for per-command Defaults specifications. - * New monitor functionality for systems with the systrace kernel facility - (OpenBSD and NetBSD in the default system, FreeBSD and Linux with kernel - patched). When monitoring is enabled, sudo will fork a daemon that - monitors the command being run and intercepts the execve() system call, - allowing or denying execution of the new command based on a sudoers lookup. - The SUDO_* environment variables are also updated if this is supported by - the version of systrace(4) on the system. - * Sudoers now supports a #include facility to allow the inclusion of other sudoers-format files. diff --git a/config.h.in b/config.h.in index a94d87b2f..c2ed862eb 100644 --- a/config.h.in +++ b/config.h.in @@ -75,9 +75,6 @@ /* Define to 1 if your `DIR' contains dd_fd. */ #undef HAVE_DD_FD -/* Define to 1 if you have the header file. */ -#undef HAVE_DEV_SYSTRACE_H - /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_DIRENT_H @@ -221,9 +218,6 @@ /* Define to 1 if you have the `ldap_start_tls_s' function. */ #undef HAVE_LDAP_START_TLS_S -/* Define to 1 if you have the header file. */ -#undef HAVE_LINUX_SYSTRACE_H - /* Define to 1 if you have the `lockf' function. */ #undef HAVE_LOCKF @@ -374,9 +368,6 @@ /* Define to 1 if you have the `sysconf' function. */ #undef HAVE_SYSCONF -/* Define to 1 to build support for tracing subprocesses using systrace(4) */ -#undef HAVE_SYSTRACE - /* Define to 1 if you have the header file. */ #undef HAVE_SYS_BSDTYPES_H @@ -397,9 +388,6 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_SYSTRACE_H - /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H diff --git a/configure.in b/configure.in index 3d412dceb..ad6bda141 100644 --- a/configure.in +++ b/configure.in @@ -392,13 +392,6 @@ AC_ARG_WITH(bsdauth, [ --with-bsdauth enable BSD authentication suppor ;; esac]) -AC_ARG_WITH(systrace, [ --with-systrace[[=DIR]] enable systrace(4) support], -[case $with_systrace in - no) with_systrace="" - ;; - *) ;; -esac]) - AC_ARG_WITH(project, [ --with-project enable Solaris project support], [case $with_project in yes|no) ;; @@ -1781,19 +1774,6 @@ AC_CHECK_FUNCS(getprogname, , [ AC_MSG_RESULT($sudo_cv___progname) ]) dnl -dnl systrace(4) support -dnl -if test -n "$with_systrace"; then - AC_DEFINE(HAVE_SYSTRACE) - if test "$with_systrace" = "yes"; then - AC_CHECK_HEADERS(dev/systrace.h sys/systrace.h linux/systrace.h, [break], [], [#include ]) - else - CPPFLAGS="$CPPFLAGS -I${with_systrace}" - fi - SUDO_OBJS="${SUDO_OBJS} mon_systrace.o" - AC_CHECK_FUNCS(setproctitle) -fi -dnl dnl Kerberos IV dnl if test -n "$with_kerb4"; then @@ -2393,7 +2373,6 @@ AH_TEMPLATE(HAVE_SKEY, [Define to 1 if you use S/Key.]) AH_TEMPLATE(HAVE_SKEYACCESS, [Define to 1 if your S/Key library has skeyaccess().]) AH_TEMPLATE(HAVE_ST_MTIM, [Define to 1 if your struct stat has an st_mtim member]) AH_TEMPLATE(HAVE_ST_MTIMESPEC, [Define to 1 if your struct stat has an st_mtimespec member]) -AH_TEMPLATE(HAVE_SYSTRACE, [Define to 1 to build support for tracing subprocesses using systrace(4)]) AH_TEMPLATE(HAVE_TERMIOS_H, [Define to 1 if you have the header file and the `tcgetattr' function.]) AH_TEMPLATE(HAVE_TIMESPEC, [Define to 1 if you have struct timespec in sys/time.h]) AH_TEMPLATE(HAVE_TIMESPECSUB2, [Define to 1 if you have a timespecsub macro or function that takes two arguments (not three)]) diff --git a/def_data.c b/def_data.c index cd04c8c6b..5f334639e 100644 --- a/def_data.c +++ b/def_data.c @@ -247,10 +247,6 @@ struct sudo_defs_types sudo_defs_table[] = { "ignore_local_sudoers", T_FLAG, "If LDAP directory is up, do we ignore local sudoers file", NULL, - }, { - "monitor", T_FLAG, - "Monitor children of cmnd and apply sudoers restrictions to them", - NULL, }, { "closefrom", T_INT, "File descriptors >= %d will be closed before executing a command", diff --git a/def_data.h b/def_data.h index 0db62d33d..0313ebde2 100644 --- a/def_data.h +++ b/def_data.h @@ -110,20 +110,18 @@ #define I_NOEXEC_FILE 54 #define def_ignore_local_sudoers (sudo_defs_table[55].sd_un.flag) #define I_IGNORE_LOCAL_SUDOERS 55 -#define def_monitor (sudo_defs_table[56].sd_un.flag) -#define I_MONITOR 56 -#define def_closefrom (sudo_defs_table[57].sd_un.ival) -#define I_CLOSEFROM 57 -#define def_closefrom_override (sudo_defs_table[58].sd_un.flag) -#define I_CLOSEFROM_OVERRIDE 58 -#define def_env_check (sudo_defs_table[59].sd_un.list) -#define I_ENV_CHECK 59 -#define def_env_delete (sudo_defs_table[60].sd_un.list) -#define I_ENV_DELETE 60 -#define def_env_keep (sudo_defs_table[61].sd_un.list) -#define I_ENV_KEEP 61 -#define def_setenv (sudo_defs_table[62].sd_un.flag) -#define I_SETENV 62 +#define def_closefrom (sudo_defs_table[56].sd_un.ival) +#define I_CLOSEFROM 56 +#define def_closefrom_override (sudo_defs_table[57].sd_un.flag) +#define I_CLOSEFROM_OVERRIDE 57 +#define def_env_check (sudo_defs_table[58].sd_un.list) +#define I_ENV_CHECK 58 +#define def_env_delete (sudo_defs_table[59].sd_un.list) +#define I_ENV_DELETE 59 +#define def_env_keep (sudo_defs_table[60].sd_un.list) +#define I_ENV_KEEP 60 +#define def_setenv (sudo_defs_table[61].sd_un.flag) +#define I_SETENV 61 enum def_tupple { never, diff --git a/def_data.in b/def_data.in index d392b6d60..3f7579186 100644 --- a/def_data.in +++ b/def_data.in @@ -182,9 +182,6 @@ noexec_file ignore_local_sudoers T_FLAG "If LDAP directory is up, do we ignore local sudoers file" -monitor - T_FLAG - "Monitor children of cmnd and apply sudoers restrictions to them" closefrom T_INT "File descriptors >= %d will be closed before executing a command" diff --git a/gram.c b/gram.c index 326f0d1df..a6219f7a5 100644 --- a/gram.c +++ b/gram.c @@ -146,17 +146,15 @@ typedef union { #define PASSWD 271 #define NOEXEC 272 #define EXEC 273 -#define MONITOR 274 -#define NOMONITOR 275 -#define SETENV 276 -#define NOSETENV 277 -#define ALL 278 -#define COMMENT 279 -#define HOSTALIAS 280 -#define CMNDALIAS 281 -#define USERALIAS 282 -#define RUNASALIAS 283 -#define ERROR 284 +#define SETENV 274 +#define NOSETENV 275 +#define ALL 276 +#define COMMENT 277 +#define HOSTALIAS 278 +#define CMNDALIAS 279 +#define USERALIAS 280 +#define RUNASALIAS 281 +#define ERROR 282 #define YYERRCODE 256 #if defined(__cplusplus) || defined(__STDC__) const short yylhs[] = @@ -169,10 +167,10 @@ short yylhs[] = 3, 3, 3, 19, 19, 18, 10, 10, 8, 8, 8, 8, 8, 2, 2, 1, 6, 6, 14, 14, 13, 13, 11, 11, 15, 15, 15, 15, 15, 20, - 20, 20, 20, 20, 20, 20, 20, 20, 5, 5, - 5, 24, 24, 27, 9, 9, 25, 25, 28, 7, - 7, 26, 26, 29, 23, 23, 30, 17, 17, 12, - 12, 16, 16, 16, 16, 16, + 20, 20, 20, 20, 20, 20, 5, 5, 5, 24, + 24, 27, 9, 9, 25, 25, 28, 7, 7, 26, + 26, 29, 23, 23, 30, 17, 17, 12, 12, 16, + 16, 16, 16, 16, }; #if defined(__cplusplus) || defined(__STDC__) const short yylen[] = @@ -185,10 +183,10 @@ short yylen[] = 3, 3, 3, 1, 3, 3, 1, 2, 1, 1, 1, 1, 1, 1, 3, 3, 1, 2, 0, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 0, - 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, - 1, 1, 3, 3, 1, 3, 1, 3, 3, 1, - 3, 1, 3, 3, 1, 3, 3, 1, 3, 1, - 2, 1, 1, 1, 1, 1, + 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, + 3, 3, 1, 3, 1, 3, 3, 1, 3, 1, + 3, 3, 1, 3, 3, 1, 3, 1, 2, 1, + 1, 1, 1, 1, }; #if defined(__cplusplus) || defined(__STDC__) const short yydefred[] = @@ -196,20 +194,19 @@ const short yydefred[] = short yydefred[] = #endif { 0, - 0, 82, 84, 85, 86, 0, 0, 0, 0, 0, - 83, 5, 0, 0, 0, 0, 0, 0, 78, 80, + 0, 80, 82, 83, 84, 0, 0, 0, 0, 0, + 81, 5, 0, 0, 0, 0, 0, 0, 76, 78, 0, 0, 3, 6, 0, 0, 17, 0, 29, 32, - 31, 33, 30, 0, 27, 0, 65, 0, 45, 47, - 48, 49, 46, 0, 41, 0, 43, 61, 60, 59, - 0, 37, 70, 0, 0, 0, 62, 0, 0, 67, - 0, 0, 75, 0, 0, 72, 81, 0, 0, 24, + 31, 33, 30, 0, 27, 0, 63, 0, 45, 47, + 48, 49, 46, 0, 41, 0, 43, 59, 58, 57, + 0, 37, 68, 0, 0, 0, 60, 0, 0, 65, + 0, 0, 73, 0, 0, 70, 79, 0, 0, 24, 0, 4, 0, 0, 0, 20, 0, 28, 0, 0, 0, 44, 0, 0, 38, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 79, 0, 0, 21, 22, - 23, 18, 66, 42, 71, 0, 63, 0, 68, 0, - 76, 0, 73, 0, 34, 0, 50, 25, 0, 0, - 0, 35, 51, 52, 53, 54, 57, 58, 55, 56, - 36, + 0, 0, 0, 0, 0, 77, 0, 0, 21, 22, + 23, 18, 64, 42, 69, 0, 61, 0, 66, 0, + 74, 0, 71, 0, 34, 0, 50, 25, 0, 0, + 0, 35, 51, 52, 53, 54, 55, 56, 36, }; #if defined(__cplusplus) || defined(__STDC__) const short yydgoto[] = @@ -226,231 +223,245 @@ const short yysindex[] = #else short yysindex[] = #endif - { 466, - -266, 0, 0, 0, 0, -21, 513, -7, 517, 188, - 0, 0, -244, -239, -234, -233, -231, 0, 0, 0, - -29, 466, 0, 0, 9, -226, 0, -9, 0, 0, - 0, 0, 0, -219, 0, -26, 0, -24, 0, 0, - 0, 0, 0, -212, 0, -23, 0, 0, 0, 0, - -241, 0, 0, -22, -25, -18, 0, -13, -15, 0, - -5, 2, 0, -3, 3, 0, 0, -7, -38, 0, - 6, 0, -198, -196, -195, 0, -21, 0, 513, -9, - -9, 0, 517, -9, 0, 188, -9, 513, -244, 188, - -239, -7, -234, 517, -233, 0, -200, 513, 0, 0, - 0, 0, 0, 0, 0, 28, 0, 30, 0, 31, - 0, 32, 0, 517, 0, 33, 0, 0, 32, -200, - -31, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0,}; + { -33, + -275, 0, 0, 0, 0, -10, -5, 265, 292, 253, + 0, 0, -253, -251, -250, -248, -243, 0, 0, 0, + -22, -33, 0, 0, -13, -242, 0, -28, 0, 0, + 0, 0, 0, -211, 0, -19, 0, -9, 0, 0, + 0, 0, 0, -222, 0, -7, 0, 0, 0, 0, + -245, 0, 0, 13, -40, -15, 0, -17, -3, 0, + 2, 3, 0, 6, 4, 0, 0, 265, -2, 0, + 10, 0, -212, -199, -194, 0, -10, 0, -5, -28, + -28, 0, 292, -28, 0, 253, -28, -5, -253, 253, + -251, 265, -250, 292, -248, 0, -198, -5, 0, 0, + 0, 0, 0, 0, 0, 26, 0, 28, 0, 29, + 0, 31, 0, 292, 0, 32, 0, 0, 31, -198, + 263, 0, 0, 0, 0, 0, 0, 0, 0,}; #if defined(__cplusplus) || defined(__STDC__) const short yyrindex[] = #else short yyrindex[] = #endif - { 73, + { 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 78, 0, 0, 1, 0, 0, 169, 0, 0, + 0, 78, 0, 0, 1, 0, 0, 157, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 197, 0, 0, 225, 0, - 0, 253, 0, 0, 298, 0, 0, 0, 0, 0, - 326, 0, 0, 0, 0, 0, 0, 0, 0, 354, - 382, 0, 0, 410, 0, 0, 438, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 267, 0, 0, 0, - 0, 0, 0, 0, 0, 29, 0, 57, 0, 85, - 0, 113, 0, 0, 0, 141, 0, 0, 480, 267, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0,}; + 0, 0, 0, 0, 0, 183, 0, 0, 209, 0, + 0, 237, 0, 0, 458, 0, 0, 0, 0, 0, + 492, 0, 0, 0, 0, 0, 0, 0, 0, 519, + 545, 0, 0, 571, 0, 0, 597, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 289, 0, 0, 0, + 0, 0, 0, 0, 0, 27, 0, 53, 0, 79, + 0, 105, 0, 0, 0, 131, 0, 0, 315, 289, + 0, 0, 0, 0, 0, 0, 0, 0, 0,}; #if defined(__cplusplus) || defined(__STDC__) const short yygindex[] = #else short yygindex[] = #endif { 0, - -41, 0, 4, 17, 37, -83, -10, 48, -2, 10, - 8, 15, -86, 0, 49, 75, -8, -4, 0, 0, - 0, 74, 0, 0, 0, 0, 11, 7, 12, 13, + -39, 0, 5, 20, 33, -83, 7, 46, -1, 11, + 8, 15, -85, 0, 45, 75, -4, 9, 0, 0, + 0, 71, 0, 0, 0, 0, 12, 17, 14, 21, }; -#define YYTABLESIZE 795 +#define YYTABLESIZE 878 #if defined(__cplusplus) || defined(__STDC__) const short yytable[] = #else short yytable[] = #endif - { 38, - 19, 51, 105, 34, 36, 79, 26, 112, 26, 26, - 26, 26, 24, 55, 68, 48, 49, 79, 58, 68, - 83, 86, 97, 61, 64, 17, 2, 119, 64, 3, - 4, 5, 76, 19, 77, 88, 50, 131, 29, 89, - 30, 31, 91, 32, 19, 39, 11, 90, 40, 41, - 42, 74, 80, 75, 81, 92, 69, 94, 33, 93, - 95, 64, 84, 98, 99, 43, 100, 101, 114, 73, - 87, 79, 1, 86, 68, 83, 120, 2, 122, 108, - 102, 78, 96, 110, 77, 106, 64, 85, 103, 69, - 104, 67, 82, 118, 0, 72, 0, 109, 0, 107, - 0, 0, 0, 0, 0, 111, 113, 0, 0, 0, - 0, 0, 74, 0, 69, 0, 0, 77, 0, 0, + { 17, + 19, 24, 105, 38, 55, 36, 58, 61, 112, 64, + 34, 48, 49, 26, 2, 77, 76, 3, 4, 5, + 88, 68, 26, 26, 79, 26, 62, 34, 119, 74, + 50, 75, 11, 19, 68, 39, 83, 129, 40, 41, + 42, 79, 89, 90, 19, 26, 29, 73, 30, 31, + 99, 32, 67, 43, 91, 80, 86, 81, 97, 62, + 93, 95, 92, 100, 33, 84, 94, 98, 101, 79, + 114, 86, 68, 87, 83, 120, 1, 2, 75, 78, + 122, 102, 96, 85, 62, 67, 106, 110, 82, 103, + 104, 67, 72, 0, 0, 0, 108, 0, 0, 0, + 107, 0, 0, 0, 72, 0, 118, 109, 113, 0, + 67, 75, 0, 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 26, 0, 0, 0, 0, 0, 75, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 26, 0, 77, 0, 0, 74, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 12, 0, 0, 0, + 0, 0, 72, 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, 12, 0, - 74, 0, 0, 26, 0, 0, 0, 0, 0, 0, + 0, 0, 9, 0, 0, 0, 0, 0, 26, 12, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, + 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, + 0, 0, 1, 0, 2, 0, 0, 3, 4, 5, + 6, 7, 8, 9, 10, 29, 8, 30, 31, 25, + 32, 10, 11, 12, 13, 14, 15, 16, 25, 25, + 0, 25, 29, 33, 30, 31, 19, 32, 19, 0, + 0, 19, 19, 19, 19, 19, 19, 19, 19, 8, + 33, 25, 0, 0, 0, 0, 19, 19, 19, 19, + 19, 19, 62, 0, 62, 51, 0, 62, 62, 62, + 62, 62, 62, 62, 62, 51, 0, 17, 0, 0, + 0, 0, 62, 62, 62, 62, 62, 62, 67, 0, + 67, 0, 0, 67, 67, 67, 67, 67, 67, 67, + 67, 39, 0, 0, 44, 0, 0, 0, 67, 67, + 67, 67, 67, 67, 75, 0, 75, 0, 0, 75, + 75, 75, 75, 75, 75, 75, 75, 40, 0, 0, + 0, 0, 0, 0, 75, 75, 75, 75, 75, 75, + 72, 0, 72, 0, 0, 72, 72, 72, 72, 72, + 72, 72, 72, 0, 0, 0, 0, 0, 0, 0, + 72, 72, 72, 72, 72, 72, 26, 0, 26, 0, + 0, 26, 26, 26, 26, 26, 26, 26, 26, 0, + 0, 0, 0, 0, 0, 0, 26, 26, 26, 26, + 26, 26, 12, 0, 12, 0, 0, 12, 12, 12, + 12, 12, 12, 12, 12, 0, 0, 0, 0, 0, + 0, 0, 12, 12, 12, 12, 12, 12, 9, 0, + 9, 0, 0, 9, 9, 9, 9, 9, 9, 9, + 9, 0, 0, 0, 0, 0, 0, 11, 9, 9, + 9, 9, 9, 9, 10, 0, 10, 0, 0, 10, + 10, 10, 10, 10, 10, 10, 10, 0, 0, 0, + 0, 0, 0, 0, 10, 10, 10, 10, 10, 10, + 11, 7, 8, 0, 8, 0, 0, 8, 8, 8, + 8, 8, 8, 8, 8, 0, 0, 0, 0, 48, + 49, 0, 8, 8, 8, 8, 8, 8, 15, 48, + 49, 0, 2, 0, 7, 3, 4, 5, 50, 0, + 0, 0, 123, 124, 125, 126, 127, 128, 50, 0, + 11, 0, 0, 0, 13, 39, 39, 0, 0, 39, + 0, 15, 40, 41, 42, 0, 0, 0, 39, 39, + 39, 39, 39, 39, 39, 0, 0, 43, 0, 0, + 14, 40, 40, 0, 0, 0, 0, 13, 0, 0, + 0, 0, 0, 0, 40, 40, 40, 40, 40, 40, + 40, 0, 0, 0, 0, 0, 16, 0, 0, 0, + 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 9, 0, 26, 0, - 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 51, 0, 0, 0, 10, 48, 49, 0, 29, 9, - 30, 31, 25, 32, 25, 25, 25, 25, 123, 124, - 125, 126, 127, 128, 129, 130, 50, 0, 33, 0, - 2, 0, 8, 3, 4, 5, 19, 10, 19, 0, - 0, 19, 19, 19, 19, 19, 19, 19, 19, 0, - 11, 0, 0, 0, 0, 0, 0, 0, 19, 19, - 19, 19, 19, 19, 64, 8, 64, 0, 0, 64, - 64, 64, 64, 64, 64, 64, 64, 11, 0, 39, - 0, 0, 0, 0, 0, 0, 64, 64, 64, 64, - 64, 64, 69, 0, 69, 0, 0, 69, 69, 69, - 69, 69, 69, 69, 69, 7, 0, 0, 0, 0, - 11, 0, 0, 0, 69, 69, 69, 69, 69, 69, - 77, 0, 77, 0, 0, 77, 77, 77, 77, 77, - 77, 77, 77, 15, 0, 0, 0, 0, 7, 0, - 0, 0, 77, 77, 77, 77, 77, 77, 74, 0, - 74, 0, 0, 74, 74, 74, 74, 74, 74, 74, - 74, 13, 0, 0, 0, 0, 15, 0, 0, 0, - 74, 74, 74, 74, 74, 74, 26, 0, 26, 0, - 0, 26, 26, 26, 26, 26, 26, 26, 26, 14, - 0, 0, 0, 0, 13, 0, 0, 0, 26, 26, - 26, 26, 26, 26, 12, 0, 12, 0, 0, 12, - 12, 12, 12, 12, 12, 12, 12, 16, 0, 0, - 0, 0, 14, 0, 48, 49, 12, 12, 12, 12, - 12, 12, 9, 0, 9, 0, 0, 9, 9, 9, - 9, 9, 9, 9, 9, 50, 0, 0, 0, 0, - 16, 0, 0, 0, 9, 9, 9, 9, 9, 9, - 10, 0, 10, 0, 0, 10, 10, 10, 10, 10, - 10, 10, 10, 0, 0, 0, 0, 0, 17, 0, - 0, 0, 10, 10, 10, 10, 10, 10, 8, 0, - 8, 0, 40, 8, 8, 8, 8, 8, 8, 8, - 8, 0, 0, 39, 39, 0, 0, 0, 0, 0, - 8, 8, 8, 8, 8, 8, 39, 39, 39, 39, - 39, 39, 39, 39, 39, 34, 0, 0, 0, 44, - 0, 0, 0, 11, 0, 11, 0, 0, 11, 11, - 11, 11, 11, 11, 11, 11, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 11, 11, 11, 11, 11, - 11, 7, 0, 7, 0, 0, 7, 7, 7, 7, - 7, 7, 7, 7, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 7, 7, 7, 7, 7, 7, 15, - 0, 15, 0, 0, 15, 15, 15, 15, 15, 15, - 15, 15, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 15, 15, 15, 15, 15, 15, 13, 0, 13, - 0, 0, 13, 13, 13, 13, 13, 13, 13, 13, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, - 13, 13, 13, 13, 13, 14, 0, 14, 0, 0, - 14, 14, 14, 14, 14, 14, 14, 14, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 14, 14, 14, - 14, 14, 14, 16, 0, 16, 0, 0, 16, 16, - 16, 16, 16, 16, 16, 16, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 16, 16, 16, 16, 16, - 16, 1, 0, 2, 0, 0, 3, 4, 5, 6, - 7, 8, 9, 10, 0, 0, 40, 40, 0, 0, - 0, 0, 0, 11, 12, 13, 14, 15, 16, 40, - 40, 40, 40, 40, 40, 40, 40, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 29, 0, 30, 31, 39, 32, 0, 40, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 33, 0, 0, 0, 43, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 11, 0, 0, 11, 11, + 11, 11, 11, 11, 11, 11, 0, 0, 0, 0, + 0, 0, 0, 11, 11, 11, 11, 11, 11, 0, + 0, 0, 0, 0, 0, 0, 0, 7, 0, 7, + 0, 0, 7, 7, 7, 7, 7, 7, 7, 7, + 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, + 7, 7, 7, 0, 15, 0, 15, 0, 0, 15, + 15, 15, 15, 15, 15, 15, 15, 0, 0, 0, + 0, 0, 0, 0, 15, 15, 15, 15, 15, 15, + 13, 0, 13, 0, 0, 13, 13, 13, 13, 13, + 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, + 13, 13, 13, 13, 13, 13, 14, 0, 14, 0, + 0, 14, 14, 14, 14, 14, 14, 14, 14, 0, + 0, 0, 0, 0, 0, 0, 14, 14, 14, 14, + 14, 14, 16, 0, 16, 0, 0, 16, 16, 16, + 16, 16, 16, 16, 16, 0, 0, 0, 0, 0, + 0, 0, 16, 16, 16, 16, 16, 16, }; #if defined(__cplusplus) || defined(__STDC__) const short yycheck[] = #else short yycheck[] = #endif - { 8, - 0, 33, 86, 33, 7, 44, 33, 94, 33, 33, - 33, 33, 279, 258, 44, 257, 258, 44, 258, 44, - 44, 44, 61, 258, 258, 33, 258, 114, 0, 261, - 262, 263, 259, 33, 44, 61, 278, 121, 258, 58, - 260, 261, 58, 263, 44, 258, 278, 61, 261, 262, - 263, 43, 36, 45, 38, 61, 0, 61, 278, 58, - 58, 33, 46, 58, 263, 278, 263, 263, 269, 61, - 54, 44, 0, 44, 44, 44, 44, 0, 120, 90, - 77, 34, 68, 92, 0, 88, 58, 51, 79, 33, - 83, 17, 44, 98, -1, 22, -1, 91, -1, 89, - -1, -1, -1, -1, -1, 93, 95, -1, -1, -1, - -1, -1, 0, -1, 58, -1, -1, 33, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + { 33, + 0, 277, 86, 8, 258, 7, 258, 258, 94, 258, + 33, 257, 258, 33, 258, 44, 259, 261, 262, 263, + 61, 44, 33, 33, 44, 33, 0, 33, 114, 43, + 276, 45, 276, 33, 44, 258, 44, 121, 261, 262, + 263, 44, 58, 61, 44, 33, 258, 61, 260, 261, + 263, 263, 0, 276, 58, 36, 44, 38, 61, 33, + 58, 58, 61, 263, 276, 46, 61, 58, 263, 44, + 269, 44, 44, 54, 44, 44, 0, 0, 0, 34, + 120, 77, 68, 51, 58, 33, 88, 92, 44, 79, + 83, 17, 22, -1, -1, -1, 90, -1, -1, -1, + 89, -1, -1, -1, 0, -1, 98, 91, 95, -1, + 58, 33, -1, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 0, -1, 58, -1, -1, 33, -1, -1, -1, -1, + 0, -1, -1, -1, -1, -1, 58, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, - 58, -1, -1, 33, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, + -1, -1, 58, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 0, -1, 58, -1, - -1, 33, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 0, -1, -1, -1, -1, -1, 58, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 33, -1, -1, -1, 0, 257, 258, -1, 258, 33, - 260, 261, 259, 263, 259, 259, 259, 259, 270, 271, - 272, 273, 274, 275, 276, 277, 278, -1, 278, -1, - 258, -1, 0, 261, 262, 263, 256, 33, 258, -1, - -1, 261, 262, 263, 264, 265, 266, 267, 268, -1, - 278, -1, -1, -1, -1, -1, -1, -1, 278, 279, - 280, 281, 282, 283, 256, 33, 258, -1, -1, 261, - 262, 263, 264, 265, 266, 267, 268, 0, -1, 33, - -1, -1, -1, -1, -1, -1, 278, 279, 280, 281, - 282, 283, 256, -1, 258, -1, -1, 261, 262, 263, - 264, 265, 266, 267, 268, 0, -1, -1, -1, -1, - 33, -1, -1, -1, 278, 279, 280, 281, 282, 283, - 256, -1, 258, -1, -1, 261, 262, 263, 264, 265, - 266, 267, 268, 0, -1, -1, -1, -1, 33, -1, - -1, -1, 278, 279, 280, 281, 282, 283, 256, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, + -1, -1, -1, -1, -1, 33, -1, -1, -1, -1, + -1, -1, 256, -1, 258, -1, -1, 261, 262, 263, + 264, 265, 266, 267, 268, 258, 0, 260, 261, 259, + 263, 33, 276, 277, 278, 279, 280, 281, 259, 259, + -1, 259, 258, 276, 260, 261, 256, 263, 258, -1, + -1, 261, 262, 263, 264, 265, 266, 267, 268, 33, + 276, 259, -1, -1, -1, -1, 276, 277, 278, 279, + 280, 281, 256, -1, 258, 33, -1, 261, 262, 263, + 264, 265, 266, 267, 268, 33, -1, 33, -1, -1, + -1, -1, 276, 277, 278, 279, 280, 281, 256, -1, 258, -1, -1, 261, 262, 263, 264, 265, 266, 267, - 268, 0, -1, -1, -1, -1, 33, -1, -1, -1, - 278, 279, 280, 281, 282, 283, 256, -1, 258, -1, - -1, 261, 262, 263, 264, 265, 266, 267, 268, 0, - -1, -1, -1, -1, 33, -1, -1, -1, 278, 279, - 280, 281, 282, 283, 256, -1, 258, -1, -1, 261, - 262, 263, 264, 265, 266, 267, 268, 0, -1, -1, - -1, -1, 33, -1, 257, 258, 278, 279, 280, 281, - 282, 283, 256, -1, 258, -1, -1, 261, 262, 263, - 264, 265, 266, 267, 268, 278, -1, -1, -1, -1, - 33, -1, -1, -1, 278, 279, 280, 281, 282, 283, + 268, 33, -1, -1, 33, -1, -1, -1, 276, 277, + 278, 279, 280, 281, 256, -1, 258, -1, -1, 261, + 262, 263, 264, 265, 266, 267, 268, 33, -1, -1, + -1, -1, -1, -1, 276, 277, 278, 279, 280, 281, 256, -1, 258, -1, -1, 261, 262, 263, 264, 265, - 266, 267, 268, -1, -1, -1, -1, -1, 33, -1, - -1, -1, 278, 279, 280, 281, 282, 283, 256, -1, - 258, -1, 33, 261, 262, 263, 264, 265, 266, 267, - 268, -1, -1, 257, 258, -1, -1, -1, -1, -1, - 278, 279, 280, 281, 282, 283, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 33, -1, -1, -1, 33, + 266, 267, 268, -1, -1, -1, -1, -1, -1, -1, + 276, 277, 278, 279, 280, 281, 256, -1, 258, -1, + -1, 261, 262, 263, 264, 265, 266, 267, 268, -1, + -1, -1, -1, -1, -1, -1, 276, 277, 278, 279, + 280, 281, 256, -1, 258, -1, -1, 261, 262, 263, + 264, 265, 266, 267, 268, -1, -1, -1, -1, -1, + -1, -1, 276, 277, 278, 279, 280, 281, 256, -1, + 258, -1, -1, 261, 262, 263, 264, 265, 266, 267, + 268, -1, -1, -1, -1, -1, -1, 0, 276, 277, + 278, 279, 280, 281, 256, -1, 258, -1, -1, 261, + 262, 263, 264, 265, 266, 267, 268, -1, -1, -1, + -1, -1, -1, -1, 276, 277, 278, 279, 280, 281, + 33, 0, 256, -1, 258, -1, -1, 261, 262, 263, + 264, 265, 266, 267, 268, -1, -1, -1, -1, 257, + 258, -1, 276, 277, 278, 279, 280, 281, 0, 257, + 258, -1, 258, -1, 33, 261, 262, 263, 276, -1, + -1, -1, 270, 271, 272, 273, 274, 275, 276, -1, + 276, -1, -1, -1, 0, 257, 258, -1, -1, 258, + -1, 33, 261, 262, 263, -1, -1, -1, 270, 271, + 272, 273, 274, 275, 276, -1, -1, 276, -1, -1, + 0, 257, 258, -1, -1, -1, -1, 33, -1, -1, + -1, -1, -1, -1, 270, 271, 272, 273, 274, 275, + 276, -1, -1, -1, -1, -1, 0, -1, -1, -1, + -1, -1, -1, 33, -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, 33, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 256, -1, 258, -1, -1, 261, 262, 263, 264, 265, 266, 267, 268, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 278, 279, 280, 281, 282, - 283, 256, -1, 258, -1, -1, 261, 262, 263, 264, - 265, 266, 267, 268, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 278, 279, 280, 281, 282, 283, 256, - -1, 258, -1, -1, 261, 262, 263, 264, 265, 266, - 267, 268, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 278, 279, 280, 281, 282, 283, 256, -1, 258, + -1, -1, -1, 276, 277, 278, 279, 280, 281, -1, + -1, -1, -1, -1, -1, -1, -1, 256, -1, 258, -1, -1, 261, 262, 263, 264, 265, 266, 267, 268, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 278, - 279, 280, 281, 282, 283, 256, -1, 258, -1, -1, - 261, 262, 263, 264, 265, 266, 267, 268, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 278, 279, 280, - 281, 282, 283, 256, -1, 258, -1, -1, 261, 262, - 263, 264, 265, 266, 267, 268, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 278, 279, 280, 281, 282, - 283, 256, -1, 258, -1, -1, 261, 262, 263, 264, - 265, 266, 267, 268, -1, -1, 257, 258, -1, -1, - -1, -1, -1, 278, 279, 280, 281, 282, 283, 270, - 271, 272, 273, 274, 275, 276, 277, 278, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 258, -1, 260, 261, 258, 263, -1, 261, 262, 263, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 278, -1, -1, -1, 278, + -1, -1, -1, -1, -1, -1, -1, 276, 277, 278, + 279, 280, 281, -1, 256, -1, 258, -1, -1, 261, + 262, 263, 264, 265, 266, 267, 268, -1, -1, -1, + -1, -1, -1, -1, 276, 277, 278, 279, 280, 281, + 256, -1, 258, -1, -1, 261, 262, 263, 264, 265, + 266, 267, 268, -1, -1, -1, -1, -1, -1, -1, + 276, 277, 278, 279, 280, 281, 256, -1, 258, -1, + -1, 261, 262, 263, 264, 265, 266, 267, 268, -1, + -1, -1, -1, -1, -1, -1, 276, 277, 278, 279, + 280, 281, 256, -1, 258, -1, -1, 261, 262, 263, + 264, 265, 266, 267, 268, -1, -1, -1, -1, -1, + -1, -1, 276, 277, 278, 279, 280, 281, }; #define YYFINAL 18 #ifndef YYDEBUG #define YYDEBUG 0 #endif -#define YYMAXTOKEN 284 +#define YYMAXTOKEN 282 #if YYDEBUG #if defined(__cplusplus) || defined(__STDC__) const char * const yyname[] = @@ -467,8 +478,8 @@ char *yyname[] = 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, "COMMAND","ALIAS","DEFVAR","NTWKADDR","NETGROUP","USERGROUP","WORD","DEFAULTS", "DEFAULTS_HOST","DEFAULTS_USER","DEFAULTS_RUNAS","DEFAULTS_CMND","RUNAS", -"NOPASSWD","PASSWD","NOEXEC","EXEC","MONITOR","NOMONITOR","SETENV","NOSETENV", -"ALL","COMMENT","HOSTALIAS","CMNDALIAS","USERALIAS","RUNASALIAS","ERROR", +"NOPASSWD","PASSWD","NOEXEC","EXEC","SETENV","NOSETENV","ALL","COMMENT", +"HOSTALIAS","CMNDALIAS","USERALIAS","RUNASALIAS","ERROR", }; #if defined(__cplusplus) || defined(__STDC__) const char * const yyrule[] = @@ -532,8 +543,6 @@ char *yyrule[] = "cmndtag : cmndtag EXEC", "cmndtag : cmndtag SETENV", "cmndtag : cmndtag NOSETENV", -"cmndtag : cmndtag MONITOR", -"cmndtag : cmndtag NOMONITOR", "cmnd : ALL", "cmnd : ALIAS", "cmnd : COMMAND", @@ -589,7 +598,7 @@ short *yyss; short *yysslim; YYSTYPE *yyvs; int yystacksize; -#line 511 "gram.y" +#line 499 "gram.y" /* * Add a list of defaults structures to the defaults list. * The binding, if non-NULL, specifies a list of hosts, users, or @@ -712,7 +721,7 @@ init_parser(path, quiet) sudolineno = 1; verbose = !quiet; } -#line 664 "y.tab.c" +#line 673 "y.tab.c" /* allocate initial stack or double stack size, up to YYMAXDEPTH */ #if defined(__cplusplus) || defined(__STDC__) static int yygrowstack(void) @@ -906,135 +915,134 @@ yyreduce: switch (yyn) { case 1: -#line 166 "gram.y" +#line 164 "gram.y" { ; } break; case 5: -#line 174 "gram.y" +#line 172 "gram.y" { ; } break; case 6: -#line 177 "gram.y" +#line 175 "gram.y" { yyerrok; } break; case 7: -#line 180 "gram.y" +#line 178 "gram.y" { add_userspec(yyvsp[-1].member, yyvsp[0].privilege); } break; case 8: -#line 183 "gram.y" +#line 181 "gram.y" { ; } break; case 9: -#line 186 "gram.y" +#line 184 "gram.y" { ; } break; case 10: -#line 189 "gram.y" +#line 187 "gram.y" { ; } break; case 11: -#line 192 "gram.y" +#line 190 "gram.y" { ; } break; case 12: -#line 195 "gram.y" +#line 193 "gram.y" { add_defaults(DEFAULTS, NULL, yyvsp[0].defaults); } break; case 13: -#line 198 "gram.y" +#line 196 "gram.y" { add_defaults(DEFAULTS_USER, yyvsp[-1].member, yyvsp[0].defaults); } break; case 14: -#line 201 "gram.y" +#line 199 "gram.y" { add_defaults(DEFAULTS_RUNAS, yyvsp[-1].member, yyvsp[0].defaults); } break; case 15: -#line 204 "gram.y" +#line 202 "gram.y" { add_defaults(DEFAULTS_HOST, yyvsp[-1].member, yyvsp[0].defaults); } break; case 16: -#line 207 "gram.y" +#line 205 "gram.y" { add_defaults(DEFAULTS_CMND, yyvsp[-1].member, yyvsp[0].defaults); } break; case 18: -#line 213 "gram.y" +#line 211 "gram.y" { LIST_APPEND(yyvsp[-2].defaults, yyvsp[0].defaults); yyval.defaults = yyvsp[-2].defaults; } break; case 19: -#line 219 "gram.y" +#line 217 "gram.y" { NEW_DEFAULT(yyval.defaults, yyvsp[0].string, NULL, TRUE); } break; case 20: -#line 222 "gram.y" +#line 220 "gram.y" { NEW_DEFAULT(yyval.defaults, yyvsp[0].string, NULL, FALSE); } break; case 21: -#line 225 "gram.y" +#line 223 "gram.y" { NEW_DEFAULT(yyval.defaults, yyvsp[-2].string, yyvsp[0].string, TRUE); } break; case 22: -#line 228 "gram.y" +#line 226 "gram.y" { NEW_DEFAULT(yyval.defaults, yyvsp[-2].string, yyvsp[0].string, '+'); } break; case 23: -#line 231 "gram.y" +#line 229 "gram.y" { NEW_DEFAULT(yyval.defaults, yyvsp[-2].string, yyvsp[0].string, '-'); } break; case 25: -#line 237 "gram.y" +#line 235 "gram.y" { LIST_APPEND(yyvsp[-2].privilege, yyvsp[0].privilege); yyval.privilege = yyvsp[-2].privilege; } break; case 26: -#line 243 "gram.y" +#line 241 "gram.y" { struct cmndtag tags; struct privilege *p = emalloc(sizeof(*p)); struct cmndspec *cs; p->hostlist = yyvsp[-2].member; p->cmndlist = yyvsp[0].cmndspec; - tags.nopasswd = tags.noexec = tags.monitor = - tags.setenv = UNSPEC; + tags.nopasswd = tags.noexec = tags.setenv = UNSPEC; /* propagate tags */ for (cs = yyvsp[0].cmndspec; cs != NULL; cs = cs->next) { if (cs->tags.nopasswd == UNSPEC) @@ -1043,8 +1051,6 @@ case 26: cs->tags.noexec = tags.noexec; if (cs->tags.setenv == UNSPEC) cs->tags.setenv = tags.setenv; - if (cs->tags.monitor == UNSPEC) - cs->tags.monitor = tags.monitor; memcpy(&tags, &cs->tags, sizeof(tags)); } p->last = NULL; @@ -1053,58 +1059,58 @@ case 26: } break; case 27: -#line 269 "gram.y" +#line 264 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = FALSE; } break; case 28: -#line 273 "gram.y" +#line 268 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = TRUE; } break; case 29: -#line 279 "gram.y" +#line 274 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, ALIAS); } break; case 30: -#line 282 "gram.y" +#line 277 "gram.y" { NEW_MEMBER(yyval.member, NULL, ALL); } break; case 31: -#line 285 "gram.y" +#line 280 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, NETGROUP); } break; case 32: -#line 288 "gram.y" +#line 283 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, NTWKADDR); } break; case 33: -#line 291 "gram.y" +#line 286 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, WORD); } break; case 35: -#line 297 "gram.y" +#line 292 "gram.y" { LIST_APPEND(yyvsp[-2].cmndspec, yyvsp[0].cmndspec); yyval.cmndspec = yyvsp[-2].cmndspec; } break; case 36: -#line 303 "gram.y" +#line 298 "gram.y" { struct cmndspec *cs = emalloc(sizeof(*cs)); cs->runaslist = yyvsp[-2].member; @@ -1116,151 +1122,138 @@ case 36: } break; case 37: -#line 314 "gram.y" +#line 309 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = FALSE; } break; case 38: -#line 318 "gram.y" +#line 313 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = TRUE; } break; case 39: -#line 324 "gram.y" +#line 319 "gram.y" { yyval.member = NULL; } break; case 40: -#line 327 "gram.y" +#line 322 "gram.y" { yyval.member = yyvsp[0].member; } break; case 42: -#line 333 "gram.y" +#line 328 "gram.y" { LIST_APPEND(yyvsp[-2].member, yyvsp[0].member); yyval.member = yyvsp[-2].member; } break; case 43: -#line 339 "gram.y" +#line 334 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = FALSE; } break; case 44: -#line 343 "gram.y" +#line 338 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = TRUE; } break; case 45: -#line 349 "gram.y" +#line 344 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, ALIAS); } break; case 46: -#line 352 "gram.y" +#line 347 "gram.y" { NEW_MEMBER(yyval.member, NULL, ALL); } break; case 47: -#line 355 "gram.y" +#line 350 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, NETGROUP); } break; case 48: -#line 358 "gram.y" +#line 353 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, USERGROUP); } break; case 49: -#line 361 "gram.y" +#line 356 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, WORD); } break; case 50: -#line 366 "gram.y" +#line 361 "gram.y" { - yyval.tag.nopasswd = yyval.tag.noexec = yyval.tag.monitor = - yyval.tag.setenv = UNSPEC; + yyval.tag.nopasswd = yyval.tag.noexec = yyval.tag.setenv = UNSPEC; } break; case 51: -#line 370 "gram.y" +#line 364 "gram.y" { yyval.tag.nopasswd = TRUE; } break; case 52: -#line 373 "gram.y" +#line 367 "gram.y" { yyval.tag.nopasswd = FALSE; } break; case 53: -#line 376 "gram.y" +#line 370 "gram.y" { yyval.tag.noexec = TRUE; } break; case 54: -#line 379 "gram.y" +#line 373 "gram.y" { yyval.tag.noexec = FALSE; } break; case 55: -#line 382 "gram.y" +#line 376 "gram.y" { yyval.tag.setenv = TRUE; } break; case 56: -#line 385 "gram.y" +#line 379 "gram.y" { yyval.tag.setenv = FALSE; } break; case 57: -#line 388 "gram.y" -{ - yyval.tag.monitor = TRUE; - } -break; -case 58: -#line 391 "gram.y" -{ - yyval.tag.monitor = FALSE; - } -break; -case 59: -#line 396 "gram.y" +#line 384 "gram.y" { NEW_MEMBER(yyval.member, NULL, ALL); } break; -case 60: -#line 399 "gram.y" +case 58: +#line 387 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, ALIAS); } break; -case 61: -#line 402 "gram.y" +case 59: +#line 390 "gram.y" { struct sudo_command *c = emalloc(sizeof(*c)); c->cmnd = yyvsp[0].command.cmnd; @@ -1268,8 +1261,8 @@ case 61: NEW_MEMBER(yyval.member, (char *)c, COMMAND); } break; -case 64: -#line 414 "gram.y" +case 62: +#line 402 "gram.y" { char *s; if ((s = alias_add(yyvsp[-2].string, HOSTALIAS, yyvsp[0].member)) != NULL) { @@ -1278,15 +1271,15 @@ case 64: } } break; -case 66: -#line 424 "gram.y" +case 64: +#line 412 "gram.y" { LIST_APPEND(yyvsp[-2].member, yyvsp[0].member); yyval.member = yyvsp[-2].member; } break; -case 69: -#line 434 "gram.y" +case 67: +#line 422 "gram.y" { char *s; if ((s = alias_add(yyvsp[-2].string, CMNDALIAS, yyvsp[0].member)) != NULL) { @@ -1295,15 +1288,15 @@ case 69: } } break; -case 71: -#line 444 "gram.y" +case 69: +#line 432 "gram.y" { LIST_APPEND(yyvsp[-2].member, yyvsp[0].member); yyval.member = yyvsp[-2].member; } break; -case 74: -#line 454 "gram.y" +case 72: +#line 442 "gram.y" { char *s; if ((s = alias_add(yyvsp[-2].string, RUNASALIAS, yyvsp[0].member)) != NULL) { @@ -1312,8 +1305,8 @@ case 74: } } break; -case 77: -#line 467 "gram.y" +case 75: +#line 455 "gram.y" { char *s; if ((s = alias_add(yyvsp[-2].string, USERALIAS, yyvsp[0].member)) != NULL) { @@ -1322,58 +1315,58 @@ case 77: } } break; -case 79: -#line 477 "gram.y" +case 77: +#line 465 "gram.y" { LIST_APPEND(yyvsp[-2].member, yyvsp[0].member); yyval.member = yyvsp[-2].member; } break; -case 80: -#line 483 "gram.y" +case 78: +#line 471 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = FALSE; } break; -case 81: -#line 487 "gram.y" +case 79: +#line 475 "gram.y" { yyval.member = yyvsp[0].member; yyval.member->negated = TRUE; } break; -case 82: -#line 493 "gram.y" +case 80: +#line 481 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, ALIAS); } break; -case 83: -#line 496 "gram.y" +case 81: +#line 484 "gram.y" { NEW_MEMBER(yyval.member, NULL, ALL); } break; -case 84: -#line 499 "gram.y" +case 82: +#line 487 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, NETGROUP); } break; -case 85: -#line 502 "gram.y" +case 83: +#line 490 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, USERGROUP); } break; -case 86: -#line 505 "gram.y" +case 84: +#line 493 "gram.y" { NEW_MEMBER(yyval.member, yyvsp[0].string, WORD); } break; -#line 1325 "y.tab.c" +#line 1318 "y.tab.c" } yyssp -= yym; yystate = *yyssp; diff --git a/gram.h b/gram.h index c667b1103..f2cb63069 100644 --- a/gram.h +++ b/gram.h @@ -15,17 +15,15 @@ #define PASSWD 271 #define NOEXEC 272 #define EXEC 273 -#define MONITOR 274 -#define NOMONITOR 275 -#define SETENV 276 -#define NOSETENV 277 -#define ALL 278 -#define COMMENT 279 -#define HOSTALIAS 280 -#define CMNDALIAS 281 -#define USERALIAS 282 -#define RUNASALIAS 283 -#define ERROR 284 +#define SETENV 274 +#define NOSETENV 275 +#define ALL 276 +#define COMMENT 277 +#define HOSTALIAS 278 +#define CMNDALIAS 279 +#define USERALIAS 280 +#define RUNASALIAS 281 +#define ERROR 282 #ifndef YYSTYPE_DEFINED #define YYSTYPE_DEFINED typedef union { diff --git a/gram.y b/gram.y index 53cb4222d..83dfc6242 100644 --- a/gram.y +++ b/gram.y @@ -127,8 +127,6 @@ yyerror(s) %token PASSWD /* passwd req for command (default) */ %token NOEXEC /* preload dummy execve() for cmnd */ %token EXEC /* don't preload dummy execve() */ -%token MONITOR /* monitor children of cmnd */ -%token NOMONITOR /* disable monitoring of children */ %token SETENV /* user may set environment for cmnd */ %token NOSETENV /* user may not set environment */ %token ALL /* ALL keyword */ @@ -246,8 +244,7 @@ privilege : hostlist '=' cmndspeclist { struct cmndspec *cs; p->hostlist = $1; p->cmndlist = $3; - tags.nopasswd = tags.noexec = tags.monitor = - tags.setenv = UNSPEC; + tags.nopasswd = tags.noexec = tags.setenv = UNSPEC; /* propagate tags */ for (cs = $3; cs != NULL; cs = cs->next) { if (cs->tags.nopasswd == UNSPEC) @@ -256,8 +253,6 @@ privilege : hostlist '=' cmndspeclist { cs->tags.noexec = tags.noexec; if (cs->tags.setenv == UNSPEC) cs->tags.setenv = tags.setenv; - if (cs->tags.monitor == UNSPEC) - cs->tags.monitor = tags.monitor; memcpy(&tags, &cs->tags, sizeof(tags)); } p->last = NULL; @@ -364,8 +359,7 @@ runasuser : ALIAS { ; cmndtag : /* empty */ { - $$.nopasswd = $$.noexec = $$.monitor = - $$.setenv = UNSPEC; + $$.nopasswd = $$.noexec = $$.setenv = UNSPEC; } | cmndtag NOPASSWD { $$.nopasswd = TRUE; @@ -385,12 +379,6 @@ cmndtag : /* empty */ { | cmndtag NOSETENV { $$.setenv = FALSE; } - | cmndtag MONITOR { - $$.monitor = TRUE; - } - | cmndtag NOMONITOR { - $$.monitor = FALSE; - } ; cmnd : ALL { diff --git a/parse.c b/parse.c index de77f52e1..3e3c7a1ee 100644 --- a/parse.c +++ b/parse.c @@ -193,8 +193,6 @@ sudoers_lookup(pwflag) def_noexec = tags->noexec; if (tags->setenv != UNSPEC) def_setenv = tags->setenv; - if (tags->monitor != UNSPEC) - def_monitor = tags->monitor; } } set_perms(PERM_ROOT); @@ -243,7 +241,6 @@ display_privs(v, pw) continue; for (priv = us->privileges; priv != NULL; priv = priv->next) { - tags.monitor = def_monitor; tags.noexec = def_noexec; tags.setenv = def_setenv; tags.nopasswd = !def_authenticate; @@ -261,10 +258,6 @@ display_privs(v, pw) print_priv(def_runas_default); } print_priv(") "); - if (TAG_CHANGED(monitor)) { - print_priv(cs->tags.monitor ? "MONITOR: " : "NOMONITOR: "); - tags.monitor = cs->tags.monitor; - } if (TAG_CHANGED(setenv)) { print_priv(cs->tags.setenv ? "SETENV: " : "NOSETENV: "); tags.setenv = cs->tags.setenv; diff --git a/parse.h b/parse.h index afa339bf2..2ce3ae621 100644 --- a/parse.h +++ b/parse.h @@ -44,7 +44,6 @@ struct cmndtag { char nopasswd; char noexec; char setenv; - char monitor; char extra; }; diff --git a/pathnames.h.in b/pathnames.h.in index b28378ce5..2f19b6ce8 100644 --- a/pathnames.h.in +++ b/pathnames.h.in @@ -111,7 +111,3 @@ #ifndef _PATH_LDAP_SECRET #define _PATH_LDAP_SECRET "/etc/ldap.secret" #endif /* _PATH_LDAP_SECRET */ - -#ifndef _PATH_DEV_SYSTRACE -#define _PATH_DEV_SYSTRACE "/dev/systrace" -#endif /* _PATH_DEV_SYSTRACE */ diff --git a/sudo.c b/sudo.c index 498f6a4f7..de730ea4f 100644 --- a/sudo.c +++ b/sudo.c @@ -405,11 +405,6 @@ main(argc, argv, envp) } #endif -#ifdef HAVE_SYSTRACE - if (def_monitor) - systrace_attach(getpid()); -#endif - /* Override user's umask if configured to do so. */ if (def_umask != 0777) (void) umask(def_umask); diff --git a/sudo.h b/sudo.h index 3b284935a..31791f6dc 100644 --- a/sudo.h +++ b/sudo.h @@ -279,9 +279,6 @@ struct passwd *sudo_getpwuid __P((uid_t)); struct passwd *sudo_fakepwuid __P((uid_t)); struct group *sudo_getgrnam __P((const char *)); struct group *sudo_getgrgid __P((gid_t)); -#ifdef HAVE_SYSTRACE -void systrace_attach __P((pid_t)); -#endif YY_DECL; /* Only provide extern declarations outside of sudo.c. */ diff --git a/sudoers.pod b/sudoers.pod index 978acd66e..0db65e7cd 100644 --- a/sudoers.pod +++ b/sudoers.pod @@ -250,7 +250,7 @@ See L for a list of supported Defaults parameters. Runas_Spec ::= '(' Runas_List ')' Tag_Spec ::= ('NOPASSWD:' | 'PASSWD:' | 'NOEXEC:' | 'EXEC:' | - 'SETENV:' | 'NOSETENV:' | 'MONITOR:' | 'NOMONITOR:') + 'SETENV:' | 'NOSETENV:' ) A B determines which commands a user may run (and as what user) on specified hosts. By default, commands are @@ -285,7 +285,7 @@ but F and F as B. A command may have zero or more tags associated with it. There are eight possible tag values, C, C, C, C, -C, C, C and C. +C and C. Once a tag is set on a C, subsequent Cs in the C, inherit the tag unless it is overridden by the opposite tag (i.e.: C overrides C and C @@ -342,23 +342,6 @@ to the restrictions imposed by I, I, or I. As such, only trusted users should be allowed to set variables in this manner. -=head3 MONITOR and NOMONITOR - -If B has been configured with the C<--with-systrace> option, -the C tag can be used to cause programs spawned by a command -to be checked against I and logged just like they would -be if run through B directly. This is useful in conjunction -with commands that allow shell escapes such as editors, shells and -paginators. - -In the following example, user B may run any command on the -machine research in monitor mode. - - chuck research = MONITOR: ALL - -See the L section below for more details -on how C works and whether or not it will work on your system. - =head2 Wildcards B allows shell-style I (aka meta or glob characters) @@ -603,16 +586,6 @@ If set, mail will be sent to the I user if the invoking user is not in the I file. This flag is I<@mail_no_user@> by default. -=item monitor - -If set, all commands run via B will behave as if the C -tag has been set, unless overridden by a C tag. See the -description of I below as well as the L section at the end of this manual. Be aware that -tracing is only supported on certain operating systems. On systems -where it is not supported this flag will have no effect. -This flag is I by default. - =item noexec If set, all commands run via B will behave as if the C @@ -1286,7 +1259,7 @@ which lets a user bypass B's access control and logging. Common programs that permit shell escapes include shells (obviously), editors, paginators, mail and terminal programs. -There are three basic approaches to this problem: +There are two basic approaches to this problem: =over 10 @@ -1341,31 +1314,6 @@ executing other commands (such as a shell). If you are unsure whether or not your system is capable of supporting I you can always just try it out and see if it works. -=item monitor - -On operating systems that support the B pseudo-device, -the C<--with-systrace> configure option can be used to compile -support for proccess monitoring in B. In monitor mode -B can transparently intercept a new command, allow or deny -it based on I, and log the result. This does require that -B become a daemon that persists until the command and all its -descendents have exited. - -To enable monitor mode on a per-command basis, use the C -tag as documented in the User Specification section above. Here -is that example again: - - chuck research = MONITOR: ALL - -This allows user B to run any command on the machine research -in monitor mode. Any commands run via shell escapes will be logged -by B. - -At the time of this writing the B pseudo-device comes -standard with OpenBSD and NetBSD and is available as patches to -FreeBSD, MacOS X and Linux. See L for -more information. - =back Note that restricting shell escapes is not a panacea. Programs diff --git a/testsudoers.c b/testsudoers.c index bffa1bad8..a1f7a54b8 100644 --- a/testsudoers.c +++ b/testsudoers.c @@ -474,7 +474,7 @@ print_privilege(priv) print_member(m); } fputs(" = ", stdout); - tags.nopasswd = tags.noexec = tags.monitor = UNSPEC; + tags.nopasswd = tags.noexec = UNSPEC; for (cs = p->cmndlist; cs != NULL; cs = cs->next) { if (cs != p->cmndlist) fputs(", ", stdout); @@ -491,8 +491,6 @@ print_privilege(priv) printf("%sPASSWD: ", cs->tags.nopasswd ? "NO" : ""); if (cs->tags.noexec != UNSPEC && cs->tags.noexec != tags.noexec) printf("%sEXEC: ", cs->tags.noexec ? "NO" : ""); - if (cs->tags.monitor != UNSPEC && cs->tags.monitor != tags.monitor) - printf("%sMONITOR: ", cs->tags.monitor ? "" : "NO"); print_member(cs->cmnd); memcpy(&tags, &cs->tags, sizeof(tags)); } diff --git a/toke.c b/toke.c index 85a42d8af..8da6387a0 100644 --- a/toke.c +++ b/toke.c @@ -288,170 +288,167 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 47 -#define YY_END_OF_BUFFER 48 -static yyconst short int yy_accept[1461] = +#define YY_NUM_RULES 45 +#define YY_END_OF_BUFFER 46 +static yyconst short int yy_accept[1429] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 48, 37, 43, 42, 41, 46, 37, 30, - 46, 37, 38, 37, 37, 37, 37, 40, 39, 31, - 31, 31, 31, 31, 31, 31, 46, 37, 37, 43, - 46, 31, 31, 31, 31, 31, 32, 46, 32, 33, - 32, 32, 32, 32, 32, 31, 31, 31, 31, 31, - 31, 31, 46, 32, 32, 1, 37, 37, 12, 11, - 12, 11, 11, 46, 46, 2, 8, 8, 8, 3, - 8, 4, 46, 37, 0, 43, 41, 0, 45, 25, - 0, 24, 0, 36, 36, 0, 37, 37, 0, 37, - - 37, 37, 37, 28, 31, 31, 31, 31, 31, 31, - 31, 37, 44, 37, 43, 0, 0, 0, 0, 0, - 0, 37, 37, 37, 37, 37, 32, 0, 32, 25, - 0, 24, 0, 32, 0, 32, 32, 32, 32, 32, - 32, 31, 31, 31, 31, 31, 31, 31, 32, 32, - 1, 34, 34, 0, 37, 12, 12, 10, 9, 10, - 0, 2, 8, 0, 8, 0, 0, 5, 6, 8, - 8, 0, 37, 37, 37, 37, 0, 28, 37, 0, - 28, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 37, 0, 0, 0, 0, 0, 0, 37, 37, 37, - - 37, 37, 32, 32, 32, 32, 32, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 32, 0, 37, 7, - 7, 0, 7, 8, 37, 37, 37, 37, 37, 37, - 0, 0, 28, 28, 28, 28, 29, 29, 29, 0, - 0, 28, 0, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 37, 0, 0, 0, 0, 0, 0, 37, - 37, 37, 32, 32, 32, 32, 32, 32, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 32, 37, 7, - 37, 37, 37, 0, 0, 28, 0, 28, 0, 28, - 28, 28, 28, 0, 0, 29, 29, 29, 28, 28, - - 28, 28, 28, 28, 0, 19, 31, 31, 31, 31, - 31, 31, 31, 37, 0, 0, 0, 0, 37, 37, - 32, 32, 32, 31, 31, 31, 31, 31, 31, 31, - 32, 37, 37, 37, 37, 37, 37, 0, 0, 0, - 28, 28, 28, 28, 0, 0, 0, 28, 28, 28, - 28, 28, 28, 0, 0, 28, 29, 28, 28, 0, - 28, 0, 28, 28, 28, 28, 31, 31, 31, 31, - 31, 31, 31, 37, 0, 0, 0, 37, 37, 32, - 32, 32, 32, 32, 31, 31, 31, 31, 31, 31, - 31, 32, 37, 26, 26, 26, 0, 0, 28, 28, - - 0, 28, 28, 28, 28, 0, 0, 0, 0, 0, - 28, 0, 28, 0, 28, 28, 28, 28, 0, 0, - 0, 28, 28, 28, 28, 28, 0, 0, 0, 0, - 28, 28, 28, 28, 28, 28, 31, 0, 18, 31, - 31, 31, 0, 17, 0, 20, 37, 0, 0, 0, - 37, 37, 26, 26, 26, 31, 31, 31, 31, 32, - 37, 37, 26, 26, 26, 26, 0, 0, 0, 28, - 28, 28, 28, 28, 28, 28, 0, 0, 0, 0, - 0, 0, 28, 28, 28, 28, 28, 28, 0, 0, - 28, 0, 28, 0, 28, 28, 28, 28, 28, 28, - - 28, 28, 28, 0, 0, 0, 0, 0, 28, 28, - 0, 28, 28, 28, 28, 0, 23, 31, 31, 31, - 35, 0, 0, 0, 37, 14, 32, 26, 26, 26, - 26, 31, 31, 31, 32, 34, 37, 27, 27, 27, - 0, 0, 28, 28, 0, 28, 28, 0, 28, 28, - 28, 28, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 28, 0, 28, 0, 28, 28, 28, 28, - 0, 0, 0, 28, 28, 28, 28, 0, 0, 0, - 28, 28, 28, 28, 28, 28, 28, 0, 28, 0, - 28, 28, 28, 28, 0, 0, 0, 28, 28, 28, - - 28, 28, 28, 31, 0, 16, 0, 21, 0, 14, - 0, 37, 0, 37, 32, 27, 27, 27, 31, 37, - 37, 27, 27, 27, 27, 27, 0, 0, 0, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 0, 0, 0, 0, 0, 0, - 28, 28, 28, 28, 28, 28, 0, 0, 28, 28, - 0, 28, 28, 28, 28, 0, 0, 0, 0, 0, - 28, 0, 28, 0, 28, 28, 28, 28, 0, 0, - 0, 28, 28, 28, 28, 28, 28, 0, 0, 0, - 0, 0, 28, 28, 0, 28, 28, 28, 28, 0, - - 22, 0, 0, 15, 14, 0, 14, 0, 32, 32, - 27, 27, 27, 27, 27, 37, 37, 37, 27, 27, - 0, 0, 28, 28, 0, 28, 28, 0, 28, 28, - 28, 28, 28, 28, 0, 28, 28, 28, 28, 28, - 28, 28, 28, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 28, 0, 28, 0, 28, 28, 28, - 28, 0, 0, 0, 28, 28, 28, 28, 28, 28, - 28, 0, 0, 0, 0, 0, 0, 28, 28, 28, - 28, 28, 28, 0, 0, 0, 0, 0, 28, 28, - 0, 28, 28, 28, 28, 28, 28, 28, 28, 28, - - 28, 28, 28, 28, 15, 0, 13, 32, 32, 32, - 27, 27, 37, 37, 37, 37, 37, 0, 0, 0, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 0, 0, 0, 0, 0, 0, 28, 28, 28, - 28, 28, 28, 0, 0, 28, 28, 0, 28, 28, - 0, 28, 28, 28, 28, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 28, 0, 28, 0, 28, - 28, 28, 28, 0, 0, 0, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 0, 28, - - 28, 28, 28, 32, 32, 32, 32, 32, 37, 37, - 37, 0, 0, 0, 0, 28, 0, 28, 0, 28, - 28, 0, 28, 28, 28, 28, 28, 28, 0, 28, - 28, 28, 28, 28, 28, 0, 28, 28, 28, 28, - 28, 28, 28, 28, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 28, 0, 28, 0, 28, 28, - 28, 28, 0, 0, 0, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 0, 0, 0, 0, 0, 0, 28, 28, 28, 28, - 28, 28, 0, 0, 0, 0, 0, 28, 28, 0, - - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 32, 32, 32, 37, 37, 37, 37, 37, 0, 0, - 0, 0, 0, 0, 0, 0, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 0, 0, 0, 0, 0, 0, 28, 28, 28, - 0, 0, 28, 28, 0, 28, 28, 0, 28, 28, - 28, 28, 28, 28, 0, 28, 28, 28, 28, 28, - 28, 28, 28, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 28, 0, 28, 0, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - - 28, 28, 0, 28, 28, 28, 28, 32, 32, 32, - 32, 32, 26, 26, 26, 0, 0, 0, 0, 28, - 28, 0, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 28, 28, 0, 0, 0, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 0, 0, 0, 0, 0, 0, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 0, - 28, 28, 28, 28, 28, 28, 28, 26, 26, 26, - - 26, 26, 26, 0, 0, 0, 0, 0, 0, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 0, 0, - 0, 28, 0, 0, 0, 0, 28, 0, 28, 0, - 28, 28, 0, 28, 28, 28, 28, 28, 28, 0, - 28, 28, 28, 28, 28, 28, 0, 28, 28, 28, - 28, 28, 28, 28, 28, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 28, 0, 28, 0, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 26, 26, 26, 0, 0, 0, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 0, 0, 0, - - 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, - 0, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 0, 0, 0, 0, - 0, 0, 28, 28, 28, 28, 28, 0, 28, 28, - 28, 28, 28, 0, 0, 0, 0, 0, 28, 28, - 28, 0, 0, 0, 0, 28, 28, 0, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 28, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 0, 0, 0, 0, 0, 0, - - 28, 28, 28, 28, 28, 28, 28, 28, 28, 0, - 0, 0, 28, 28, 28, 28, 28, 28, 28, 0, - 0, 0, 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 0, 0, 0, 0, 0, 28, 28, 0, - 0, 0, 0, 0, 28, 28, 28, 28, 28, 28, - 28, 28, 28, 28, 28, 28, 28, 28, 28, 0 + 0, 0, 46, 35, 41, 40, 39, 44, 35, 28, + 44, 35, 36, 35, 35, 35, 35, 38, 37, 29, + 29, 29, 29, 29, 29, 44, 35, 35, 41, 44, + 29, 29, 29, 29, 29, 30, 44, 30, 31, 30, + 30, 30, 30, 30, 29, 29, 29, 29, 29, 29, + 44, 30, 30, 1, 35, 35, 12, 11, 12, 11, + 11, 44, 44, 2, 8, 8, 8, 3, 8, 4, + 44, 35, 0, 41, 39, 0, 43, 23, 0, 22, + 0, 34, 34, 0, 35, 35, 0, 35, 35, 35, + + 35, 26, 29, 29, 29, 29, 29, 29, 35, 42, + 35, 41, 0, 0, 0, 0, 0, 0, 35, 35, + 35, 35, 35, 30, 0, 30, 23, 0, 22, 0, + 30, 0, 30, 30, 30, 30, 30, 30, 29, 29, + 29, 29, 29, 29, 30, 30, 1, 32, 32, 0, + 35, 12, 12, 10, 9, 10, 0, 2, 8, 0, + 8, 0, 0, 5, 6, 8, 8, 0, 35, 35, + 35, 35, 0, 26, 35, 0, 26, 29, 29, 29, + 29, 29, 29, 29, 35, 0, 0, 0, 0, 0, + 0, 35, 35, 35, 35, 35, 30, 30, 30, 30, + + 30, 29, 29, 29, 29, 29, 29, 29, 30, 0, + 35, 7, 7, 0, 7, 8, 35, 35, 35, 35, + 35, 35, 0, 0, 26, 26, 26, 26, 27, 27, + 27, 0, 0, 26, 0, 29, 29, 29, 29, 29, + 29, 29, 35, 0, 0, 0, 0, 0, 0, 35, + 35, 35, 30, 30, 30, 30, 30, 30, 29, 29, + 29, 29, 29, 29, 29, 30, 35, 7, 35, 35, + 35, 0, 0, 26, 0, 26, 0, 26, 26, 26, + 26, 0, 0, 27, 27, 27, 26, 26, 26, 26, + 26, 26, 0, 19, 29, 29, 29, 29, 29, 35, + + 0, 0, 0, 0, 35, 35, 30, 30, 30, 29, + 29, 29, 29, 29, 30, 35, 35, 35, 35, 35, + 35, 0, 0, 0, 26, 26, 26, 26, 0, 0, + 0, 26, 26, 26, 26, 26, 26, 0, 0, 26, + 27, 26, 26, 0, 26, 0, 26, 26, 26, 26, + 29, 29, 29, 29, 29, 35, 0, 0, 0, 35, + 35, 30, 30, 30, 30, 30, 29, 29, 29, 29, + 29, 30, 35, 24, 24, 24, 0, 0, 26, 26, + 0, 26, 26, 26, 26, 0, 0, 0, 0, 0, + 26, 0, 26, 0, 26, 26, 26, 26, 0, 0, + + 0, 26, 26, 26, 26, 26, 0, 0, 0, 0, + 26, 26, 26, 26, 26, 26, 0, 18, 29, 29, + 0, 17, 0, 20, 35, 0, 0, 0, 35, 35, + 24, 24, 24, 29, 29, 30, 35, 35, 24, 24, + 24, 24, 0, 0, 0, 26, 26, 26, 26, 26, + 26, 26, 0, 0, 0, 0, 0, 0, 26, 26, + 26, 26, 26, 26, 0, 0, 26, 0, 26, 0, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, + 0, 0, 0, 0, 26, 26, 0, 26, 26, 26, + 26, 29, 29, 33, 0, 0, 0, 35, 14, 30, + + 24, 24, 24, 24, 29, 29, 30, 32, 35, 25, + 25, 25, 0, 0, 26, 26, 0, 26, 26, 0, + 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 26, 0, 26, 0, 26, 26, + 26, 26, 0, 0, 0, 26, 26, 26, 26, 0, + 0, 0, 26, 26, 26, 26, 26, 26, 26, 0, + 26, 0, 26, 26, 26, 26, 0, 0, 0, 26, + 26, 26, 26, 26, 26, 0, 16, 0, 21, 0, + 14, 0, 35, 0, 35, 30, 25, 25, 25, 35, + 35, 25, 25, 25, 25, 25, 0, 0, 0, 26, + + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, + 26, 26, 26, 26, 26, 26, 0, 0, 26, 26, + 0, 26, 26, 26, 26, 0, 0, 0, 0, 0, + 26, 0, 26, 0, 26, 26, 26, 26, 0, 0, + 0, 26, 26, 26, 26, 26, 26, 0, 0, 0, + 0, 0, 26, 26, 0, 26, 26, 26, 26, 0, + 0, 15, 14, 0, 14, 0, 30, 30, 25, 25, + 25, 25, 25, 35, 35, 35, 25, 25, 0, 0, + 26, 26, 0, 26, 26, 0, 26, 26, 26, 26, + + 26, 26, 0, 26, 26, 26, 26, 26, 26, 26, + 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 26, 0, 26, 0, 26, 26, 26, 26, 0, + 0, 0, 26, 26, 26, 26, 26, 26, 26, 0, + 0, 0, 0, 0, 0, 26, 26, 26, 26, 26, + 26, 0, 0, 0, 0, 0, 26, 26, 0, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 15, 0, 13, 30, 30, 30, 25, 25, + 35, 35, 35, 35, 35, 0, 0, 0, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + + 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, + 0, 0, 0, 0, 0, 26, 26, 26, 26, 26, + 26, 0, 0, 26, 26, 0, 26, 26, 0, 26, + 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 26, 0, 26, 0, 26, 26, 26, + 26, 0, 0, 0, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 0, 26, 26, 26, + 26, 30, 30, 30, 30, 30, 35, 35, 35, 0, + 0, 0, 0, 26, 0, 26, 0, 26, 26, 0, + 26, 26, 26, 26, 26, 26, 0, 26, 26, 26, + + 26, 26, 26, 0, 26, 26, 26, 26, 26, 26, + 26, 26, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 26, 0, 26, 0, 26, 26, 26, 26, + 0, 0, 0, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 0, 0, + 0, 0, 0, 0, 26, 26, 26, 26, 26, 26, + 0, 0, 0, 0, 0, 26, 26, 0, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 30, 30, + 30, 35, 35, 35, 35, 35, 0, 0, 0, 0, + 0, 0, 0, 0, 26, 26, 26, 26, 26, 26, + + 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, + 0, 0, 0, 0, 0, 26, 26, 26, 0, 0, + 26, 26, 0, 26, 26, 0, 26, 26, 26, 26, + 26, 26, 0, 26, 26, 26, 26, 26, 26, 26, + 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 26, 0, 26, 0, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 0, 26, 26, 26, 26, 30, 30, 30, 30, 30, + 24, 24, 24, 0, 0, 0, 0, 26, 26, 0, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + + 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 26, 26, 0, 0, 0, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, + 0, 0, 0, 0, 0, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 0, 26, 26, + 26, 26, 26, 26, 26, 24, 24, 24, 24, 24, + 24, 0, 0, 0, 0, 0, 0, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 0, 0, 0, 26, + 0, 0, 0, 0, 26, 0, 26, 0, 26, 26, + + 0, 26, 26, 26, 26, 26, 26, 0, 26, 26, + 26, 26, 26, 26, 0, 26, 26, 26, 26, 26, + 26, 26, 26, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 26, 0, 26, 0, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 24, + 24, 24, 0, 0, 0, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 0, 0, 0, 0, 0, + 26, 0, 0, 0, 0, 0, 0, 0, 0, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 0, 0, 0, 0, 0, 0, + + 26, 26, 26, 26, 26, 0, 26, 26, 26, 26, + 26, 0, 0, 0, 0, 0, 26, 26, 26, 0, + 0, 0, 0, 26, 26, 0, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 0, 0, 0, 0, 0, 0, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, + 26, 26, 26, 26, 26, 26, 26, 0, 0, 0, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + + 0, 0, 0, 0, 0, 26, 26, 0, 0, 0, + 0, 0, 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 0 } ; static yyconst int yy_ec[256] = @@ -463,13 +460,13 @@ static yyconst int yy_ec[256] = 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 23, 24, 1, 1, 25, 26, 10, 27, 28, 29, 30, 31, 32, 29, - 33, 34, 35, 33, 33, 33, 36, 37, 38, 39, - 33, 40, 41, 42, 43, 44, 45, 46, 33, 33, - 10, 47, 10, 1, 48, 1, 49, 50, 51, 52, + 33, 34, 33, 33, 33, 33, 33, 35, 36, 37, + 33, 38, 39, 40, 41, 42, 43, 44, 33, 33, + 10, 45, 10, 1, 46, 1, 47, 48, 49, 50, - 53, 54, 55, 55, 56, 55, 55, 57, 58, 59, - 60, 55, 55, 61, 62, 63, 64, 55, 55, 55, - 55, 55, 1, 1, 1, 1, 1, 1, 1, 1, + 51, 52, 53, 53, 54, 53, 53, 55, 56, 57, + 58, 53, 53, 59, 60, 61, 62, 53, 53, 53, + 53, 53, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -486,1556 +483,1535 @@ static yyconst int yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst int yy_meta[65] = +static yyconst int yy_meta[63] = { 0, 1, 2, 2, 3, 1, 4, 1, 3, 3, 1, 1, 2, 1, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 4, 3, 1, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 9, 10, 11, 11, - 11, 11, 11, 11, 10, 10, 10, 10, 10, 10, - 10, 10, 10, 10 + 1, 1, 1, 1, 9, 10, 11, 11, 11, 11, + 11, 11, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10 } ; -static yyconst short int yy_base[1717] = +static yyconst short int yy_base[1684] = { 0, - 0, 63, 106, 0, 169, 170, 177, 188, 234, 297, - 360, 406, 5231, 5182, 5195,10368, 5192, 5160, 5115,10368, - 10368, 5114,10368, 178, 440, 54, 62, 5136,10368, 494, - 5113, 543, 5094, 5091, 5100, 5095, 596, 200, 20, 213, - 170, 5068, 5042, 5034, 5029, 5030, 5044, 241, 5017,10368, - 4988, 201, 609, 69, 249, 663, 4988, 712, 4966, 4963, - 4972, 4951, 765, 257, 164, 4978, 225, 255, 0,10368, - 4940, 0,10368, 374, 93, 0, 4896, 388, 149,10368, - 183,10368, 96, 4895, 302, 4922, 4917, 4917,10368, 4872, - 418, 4856, 472, 441, 4855, 641, 320, 776, 4867, 4837, - - 560, 568, 304, 4835, 815, 0, 4817, 4811, 277, 4760, - 4758, 195,10368, 53, 745, 4741, 4745, 4712, 4687, 4688, - 190, 148, 185, 141, 258, 199, 4702, 846, 593, 4701, - 871, 4686, 880, 774, 905, 733, 916, 4698, 793, 902, - 313, 955, 0, 4679, 4673, 356, 4657, 4654, 367, 198, - 4693, 814, 4618, 986, 260, 0, 4660, 99,10368,10368, - 372, 0, 4616, 377, 1011, 376, 400,10368,10368, 4615, - 426, 1013, 1045, 1079, 1113, 1147, 4610, 1187, 4617, 1226, - 372, 1265, 4600, 4594, 4581, 4562, 4569, 4563, 4522, 4529, - 378, 4470, 4474, 4433, 4435, 4440, 365, 354, 4443, 385, - - 19, 194, 1306, 1340, 1374, 1408, 4450, 1447, 4415, 4409, - 4397, 4404, 4413, 4407, 4397, 4392, 386, 1016, 392, 4376, - 10368, 432, 1027, 1044, 933, 368, 1488, 1522, 1059, 453, - 4398, 4397, 1556, 941, 882, 1067, 4361, 1091, 552, 4360, - 4349, 451, 1595, 4338, 622, 4291, 4300, 4275, 4242, 4240, - 4199, 4206, 387, 4151, 4153, 4099, 4112, 4086, 462, 435, - 624, 389, 1100, 587, 1636, 1670, 1124, 595, 4092, 633, - 4071, 4080, 4074, 4037, 4035, 4029, 4033, 622, 692, 754, - 1704, 1738, 1772, 4020, 4012, 1805, 1132, 827, 1844, 967, - 1885, 0, 1166, 4008, 3990, 1204, 3951, 3949, 0, 722, - - 1896, 1243, 1213, 1284, 736,10368, 3922, 3922, 3911, 3872, - 3880, 3880, 3866, 734, 3860, 3815, 3816, 438, 589, 597, - 1937, 1971, 2005, 3807, 3814, 3808, 3801, 3809, 3743, 3729, - 772, 810, 1317, 604, 2039, 2073, 1327, 3736, 3733, 3732, - 2107, 1251, 1292, 1359, 1384, 1394, 1427, 733, 2148, 1349, - 1435, 1466, 1020, 3730, 3728, 2187, 3716, 3715, 861, 1496, - 1275, 2226, 1418, 2267, 0, 1506, 3698, 815, 3695, 3676, - 3683, 854, 857, 946, 3662, 3630, 600, 806, 740, 1534, - 846, 2278, 2312, 1544, 3646, 888, 3643, 3624, 3631, 892, - 977, 995, 998, 2345, 2378, 2411, 3606, 3605, 3603, 1457, - - 2443, 1479, 2484, 0, 1578, 1612, 3575, 1646, 1656, 1622, - 1033, 1678, 1688, 2493, 1690, 2534, 0, 1714, 3564, 3553, - 3531, 2545, 1723, 1690, 1748, 3529, 2584, 1758, 1782, 1792, - 1079, 2625, 1822, 1830, 1863, 1854, 997, 1029,10368, 3499, - 3505, 3443, 1058,10368, 1122,10368, 863, 3429, 3400, 767, - 1081, 880, 2665, 2698, 2731, 1170, 3410, 3416, 3402, 980, - 1008, 1914, 893, 2764, 2797, 1923, 3410, 3409, 3408, 1306, - 1327, 2831, 1946, 1871, 1957, 1981, 1990, 2015, 2025, 2049, - 2059, 2083, 1394, 2872, 2091, 1981, 2126, 2159, 3380, 3377, - 2911, 2168, 1375, 2950, 1523, 2991, 0, 463, 3376, 3002, - - 2204, 2134, 2245, 2212, 3353, 2288, 2298, 2322, 1544, 2236, - 3041, 2330, 3082, 0, 2332, 1171,10368, 3106, 1211, 1580, - 3319, 3277, 3270, 994, 894, 2420, 2355, 1057, 3156, 3189, - 2364, 3236, 1713, 2367, 3215, 3214, 3287, 3321, 3355, 3389, - 3236, 3221, 3225, 1656, 3421, 1758, 2389, 3460, 2391, 3501, - 0, 2421, 2400, 3185, 2434, 2462, 2512, 2518, 3167, 2564, - 2603, 2644, 1792, 2650, 2503, 3510, 2594, 3551, 0, 2675, - 3108, 3107, 3106, 3562, 2684, 2253, 2708, 2718, 2741, 2751, - 3091, 3603, 2772, 2470, 2782, 1576, 3090, 2805, 1637, 3642, - 1773, 3683, 0, 1134, 2815, 2850, 2891, 1957, 3694, 2928, - - 2572, 2969, 2960, 3748, 1187,10368, 1190,10368, 3063, 2852, - 1531, 1112, 3063, 3021, 3799, 3833, 3867, 3901, 3948, 3019, - 1111, 3999, 4033, 4067, 4101, 2792, 3043, 3005, 3004, 2025, - 2059, 4135, 2936, 2611, 3060, 2117, 4176, 3027, 2899, 3166, - 2982, 3175, 3198, 3207, 3297, 3307, 3331, 3341, 3365, 3375, - 2298, 4217, 3397, 3068, 3407, 3094, 2974, 2971, 0, 2006, - 4256, 2040, 4297, 0, 1230, 3438, 2980, 3479, 3529, 3448, - 2969, 3579, 2074, 4306, 2168, 4347, 0, 1269, 3622, 3661, - 3713, 2953, 4358, 3587, 3487, 3809, 2279, 3817, 2962, 3843, - 3853, 3877, 2453, 3218, 4397, 3220, 4438, 0, 3885, 1471, - - 10368, 2876, 2934, 2889, 2888, 4033, 2852, 4067, 3909, 1336, - 4449, 4483, 4517, 4551, 3540, 4585, 4619, 4653, 4078, 1905, - 2874, 2853, 2860, 2555, 4685, 2635, 3224, 4724, 3470, 4765, - 0, 3919, 2718, 3520, 4774, 3652, 4815, 0, 4009, 2843, - 4045, 4087, 4111, 4117, 2843, 4154, 4195, 4236, 4242, 2829, - 4275, 4325, 4377, 2751, 4383, 3674, 4824, 3727, 4865, 0, - 4416, 2818, 2817, 2753, 2752, 2732, 4876, 4457, 3630, 4467, - 2313, 4493, 4503, 4527, 4537, 4561, 4571, 2720, 4917, 4593, - 4125, 4603, 2684, 4627, 2729, 4637, 4663, 4673, 2699, 2783, - 4956, 2816, 4997, 0, 1309, 4703, 4742, 4792, 2850, 5008, - - 4841, 4162, 4895, 3927,10368, 2708,10368, 5049, 5083, 5117, - 4934, 3184, 4942, 1338, 5151, 5185, 5027, 2686, 2685, 5217, - 2882, 3307, 5258, 4849, 4203, 4976, 3341, 5299, 5033, 4283, - 5059, 3930, 3375, 5340, 5067, 4333, 5093, 4266, 5102, 5126, - 5135, 5161, 5171, 5195, 5205, 5236, 5277, 3407, 5381, 5316, - 4711, 5359, 4316, 2673, 2628, 0, 2627, 5420, 2587, 3003, - 5459, 3051, 5500, 0, 1397, 5324, 2596, 5400, 5439, 5478, - 5484, 2558, 5511, 5521, 5531, 2547, 5537, 3288, 5545, 3322, - 5586, 0, 1412, 5564, 5597, 5607, 2536, 5617, 5634, 4750, - 5658, 3356, 2505, 5667, 5676, 4801, 3613, 4908, 5684, 4988, - - 5725, 0, 5703, 5734, 1575, 5768, 5802, 5745, 5836, 5870, - 5904, 2495, 5938, 5642, 5244, 2455, 5753, 3704, 0, 3853, - 5430, 0, 5469, 5979, 0, 5779, 3892, 5555, 0, 5577, - 5990, 0, 5790, 4016, 5812, 0, 5814, 6001, 0, 5827, - 2454, 5845, 5854, 5879, 5885, 2435, 5914, 5924, 5895, 5955, - 2429, 6012, 6022, 5965, 4019, 6030, 5816, 0, 6040, 6051, - 0, 6062, 2390, 2388, 2386, 2385, 2384, 6073, 6040, 5285, - 6092, 2366, 6114, 6131, 5367, 6155, 3421, 6139, 6163, 6171, - 6181, 6191, 6201, 6211, 6221, 6231, 2365, 6241, 6258, 5408, - 6282, 3800, 6266, 2374, 6292, 6302, 6312, 2363, 3834, 6318, - - 3868, 6359, 0, 1468, 4145, 6370, 6335, 5447, 6389, 6105, - 6411, 6445, 6479, 6422, 1702, 6513, 6547, 6432, 2362, 6343, - 3933, 2346, 4024, 6581, 0, 1506, 2343, 4186, 2342, 4227, - 2340, 6402, 4368, 2309, 6456, 4467, 2308, 6458, 6468, 6488, - 6497, 6523, 6533, 6557, 6567, 6592, 6602, 4503, 2238, 6612, - 2228, 2190, 0, 2189, 6621, 2188, 4058, 6660, 4484, 6701, - 0, 1509, 2187, 4518, 6710, 4538, 6751, 0, 1526,10368, - 6612, 6638, 6646, 6677, 2182, 6729, 6762, 6687, 6770, 2181, - 6780, 6790, 6800, 2170, 6806, 4552, 6814, 4572, 6855, 0, - 1544, 6831, 6839, 6864, 2169, 6874, 6891, 6737, 6915, 4604, - - 4637, 6720, 0, 6906, 6925, 0, 6936, 6945, 1736, 6979, - 7013, 6956, 6962, 6994, 7002, 7034, 7045, 7055, 2157, 2160, - 2119, 4654, 2118, 4673, 2104, 4886, 2103, 4967, 2102, 5018, - 2101, 2100, 7064, 7073, 7082, 7088, 2071, 7098, 7108, 7026, - 7116, 2070, 7126, 7136, 7146, 5171, 2036, 2026, 1993, 7152, - 1992, 1991, 7193, 7169, 6970, 7212, 1990, 7234, 7177, 7220, - 7253, 4685, 1979, 7275, 7292, 7261, 7316, 5084, 7300, 7324, - 7332, 7342, 7352, 7362, 7372, 7382, 7392, 1962, 7402, 7419, - 7427, 7443, 5152,10368, 7451, 7459, 7467, 1959, 5186, 7473, - 5206, 7514, 0, 1659, 5227, 1967, 7483, 7492, 7524, 7532, - - 1882, 7540, 7548, 7580, 1770, 7590, 7600, 7556, 1739, 1721, - 1704, 1698, 1670, 1622, 1606, 7609, 7618, 7627, 7637, 7647, - 7657, 1604, 1579, 7667, 7684, 7500, 0, 7708, 1577, 0, - 1559, 5512, 0, 5598, 7718, 0, 1725, 1468, 5618, 0, - 5744, 7729, 0, 1795, 1450, 5788, 0, 5905, 7740, 0, - 1807,10368, 7692, 7749, 7564, 7757, 1409, 7767, 7777, 7572, - 7785, 1372, 7795, 7805, 7815, 1360, 7821, 5925, 0, 5939, - 7831, 0, 1809, 1331, 7842, 7859, 7867, 7883, 6013, 5268, - 1334, 1165, 7891, 7899, 7907, 7931, 7941, 1178, 1176, 1173, - 1147, 1124, 1090, 1055, 7950, 7959, 7916, 7967, 1012, 7977, - - 7987, 7997, 1009, 996, 8003, 6074, 979, 6093, 8013, 0, - 1830, 0, 976, 0, 965, 0, 6182, 904, 0, 6202, - 891, 0, 6222, 8022, 8030, 8038, 8048, 8058, 8068, 8078, - 8088, 8098, 867, 0, 6242, 863, 6283, 0, 6303, 8108, - 0, 1848, 859, 8117, 835, 8127, 8137, 8147, 8154, 8163, - 8172, 8182, 8192, 8202, 778, 0,10368, 6390, 0, 760, - 0, 748, 0, 734, 0, 665, 0,10368, 8210, 8218, - 7923, 8226, 658, 8236, 8246, 8256, 8262, 641, 8272, 8282, - 8292, 583, 0, 496, 0, 6423, 491, 8299, 8308, 8317, - 488, 8326, 8335, 8344, 8350, 441, 8360, 8370, 8380, 380, - - 0, 0, 0, 0, 0, 0, 8386, 8394, 8402, 8412, - 8422, 8432, 0, 311, 0, 300, 8441, 8450, 8459, 8467, - 8477, 8487, 0,10368,10368,10368,10368,10368,10368, 8495, - 8503, 8511, 8517, 192, 8527, 8537, 8547,10368, 0, 8553, - 90, 8563, 8573, 8583, 8589, 8597, 8605,10368, 8613, 8621, - 8629,10368, 8637, 8645, 8653,10368, 8659, 8667, 8675,10368, - 8696, 8707, 8718, 8729, 8740, 8751, 8762, 8773, 8784, 8795, - 8806, 8817, 8828, 8839, 8841, 8852, 8863, 8874, 8885, 8890, - 8896, 8907, 8918, 8923, 8929, 8934, 8939, 8944, 8950, 8955, - 8960, 8967, 8972, 8977, 8982, 8988, 8993, 8998, 9004, 9009, - - 9014, 9019, 9026, 9031, 9036, 9042, 9049, 9056, 9061, 9066, - 9071, 9077, 9082, 9087, 9093, 9099, 9105, 9110, 9115, 9122, - 9127, 9134, 9145, 9156, 9161, 9166, 9172, 9178, 9185, 9192, - 9197, 9202, 9207, 9214, 9220, 9231, 9242, 9253, 9264, 9275, - 9280, 9285, 9291, 9297, 9303, 9309, 9314, 9319, 9324, 9331, - 9338, 9343, 9350, 9361, 9372, 9383, 9394, 9405, 9410, 9415, - 9421, 9427, 9434, 9441, 9448, 9453, 9458, 9463, 9468, 9473, - 9480, 9486, 9497, 9508, 9519, 9524, 9530, 9536, 9542, 9548, - 9554, 9559, 9564, 9569, 9574, 9581, 9588, 9593, 9600, 9611, - 9622, 9627, 9633, 9639, 9644, 9651, 9656, 9663, 9668, 9675, - - 9680, 9687, 9692, 9697, 9702, 9707, 9712, 9717, 9722, 9729, - 9735, 9746, 9757, 9764, 9769, 9775, 9781, 9787, 9793, 9799, - 9805, 9811, 9817, 9823, 9829, 9835, 9840, 9845, 9850, 9855, - 9862, 9869, 9876, 9881, 9888, 9893, 9904, 9915, 9920, 9926, - 9932, 9938, 9944, 9950, 9956, 9962, 9967, 9972, 9977, 9982, - 9987, 9992, 9999,10005,10011,10022,10033,10039,10045,10051, - 10057,10063,10069,10075,10080,10085,10090,10095,10102,10107, - 10114,10119,10126,10131,10138,10143,10148,10154,10165,10171, - 10178,10183,10188,10193,10198,10203,10208,10213,10218,10223, - 10228,10233,10238,10245,10250,10256,10261,10266,10271,10276, - - 10281,10286,10291,10296,10301,10306,10311,10316,10321,10326, - 10331,10336,10341,10346,10351,10356 + 0, 61, 102, 0, 163, 164, 171, 182, 226, 287, + 348, 392, 4545, 4499, 4541,10254, 4538, 4523, 4480,10254, + 10254, 4452,10254, 172, 424, 52, 60, 4472,10254, 476, + 4451, 523, 4458, 4450, 4445, 574, 217, 20, 180, 165, + 4385, 4389, 4381, 4365, 4365, 4379, 228, 4354,10254, 4350, + 354, 587, 67, 183, 639, 4350, 686, 4328, 4335, 4303, + 737, 238, 146, 4269, 361, 147, 0,10254, 4264, 0, + 10254, 406, 91, 0, 4222, 376, 142,10254, 168,10254, + 94, 4221, 290, 4226, 4222, 4222,10254, 4162, 299, 4151, + 746, 381, 4139, 771, 443, 782, 4119, 4110, 246, 540, + + 301, 4108, 819, 0, 4090, 183, 4081, 4079, 310,10254, + 250, 398, 4049, 4053, 4045, 4040, 4015, 186, 252, 312, + 145, 311, 259, 4023, 782, 571, 4022, 850, 3992, 875, + 619, 884, 706, 895, 4020, 799, 912, 548, 932, 0, + 3986, 335, 3978, 3949, 326, 341, 3984, 819, 3925, 963, + 369, 0, 3965, 98,10254,10254, 223, 0, 3888, 618, + 988, 370, 422,10254,10254, 3887, 729, 990, 1020, 1052, + 1084, 1116, 3907, 1154, 3899, 1191, 342, 1228, 3882, 3866, + 3866, 3861, 3853, 3823, 366, 3797, 3801, 3748, 3750, 3728, + 327, 434, 3728, 388, 19, 375, 1267, 1299, 1331, 1363, + + 3760, 1400, 3714, 3699, 3687, 3680, 3672, 3678, 377, 993, + 412, 3664,10254, 378, 1004, 1019, 1034, 534, 1439, 1471, + 1064, 282, 3659, 3656, 1503, 1070, 748, 1094, 3655, 1102, + 579, 3654, 3592, 597, 1540, 3555, 456, 3544, 3521, 3519, + 3486, 3491, 580, 3475, 3463, 3448, 3461, 3448, 447, 504, + 697, 152, 1133, 588, 1579, 1611, 1173, 368, 3468, 624, + 3459, 3451, 3449, 3445, 3438, 596, 668, 715, 1643, 1675, + 1707, 3448, 3447, 1738, 1208, 829, 1775, 858, 1814, 0, + 1247, 3429, 3426, 1275, 3426, 3410, 0, 598, 1825, 1284, + 886, 1309, 627,10254, 3403, 3364, 3370, 3370, 3358, 731, + + 3338, 3321, 3276, 727, 225, 423, 1864, 1896, 1928, 3305, + 3295, 3301, 3287, 3275, 737, 810, 1317, 733, 1960, 1992, + 1351, 3292, 3291, 3275, 2024, 1381, 920, 1419, 1449, 1459, + 1481, 729, 2063, 1489, 1042, 1522, 942, 3274, 3262, 2100, + 3261, 3260, 865, 1557, 944, 2137, 962, 2176, 0, 1589, + 822, 3240, 3247, 861, 895, 958, 3229, 3199, 662, 953, + 440, 1598, 812, 2187, 2219, 1628, 896, 3210, 3217, 995, + 999, 966, 981, 2250, 2281, 2312, 3217, 3212, 3207, 1258, + 2342, 1342, 2381, 0, 1660, 1683, 3179, 1693, 1717, 1727, + 1052, 1755, 1349, 2390, 1410, 2429, 0, 1794, 3099, 3098, + + 3082, 2440, 1842, 1141, 1874, 3079, 2477, 1884, 1906, 1916, + 1116, 2516, 1936, 1179, 1946, 1430, 1075,10254, 3070, 3023, + 1230,10254, 1231,10254, 748, 3009, 2938, 919, 1134, 985, + 2554, 2585, 2616, 2967, 2940, 833, 987, 1971, 846, 2647, + 2678, 1980, 2957, 2955, 2953, 1331, 1363, 2710, 2001, 1565, + 2012, 1626, 2043, 2082, 2119, 2156, 2197, 2207, 1459, 2749, + 2227, 1651, 2237, 1855, 2932, 2931, 2786, 2258, 1300, 2823, + 1472, 2862, 0, 734, 2930, 2873, 2266, 1763, 2291, 2299, + 2939, 2322, 2332, 2361, 1513, 2110, 2910, 2147, 2949, 0, + 2409, 2973, 1250, 2892, 2882, 2859, 971, 1049, 2477, 2457, + + 850, 3021, 3052, 2496, 3097, 1403, 2873, 2871, 3146, 3178, + 3210, 3242, 2876, 2875, 2854, 1611, 3272, 1693, 2352, 3309, + 2528, 3348, 0, 2564, 2537, 2852, 2573, 2595, 2605, 2624, + 2836, 2634, 2657, 2667, 1727, 2686, 2696, 3357, 2698, 3396, + 0, 2729, 2825, 2808, 2807, 3407, 2766, 2367, 2805, 2842, + 2892, 2929, 2806, 3446, 3029, 2698, 3039, 1598, 2805, 3060, + 1708, 3483, 1875, 3522, 0, 1005, 3070, 3156, 3166, 1916, + 3533, 3186, 2774, 3196, 2796, 1634,10254, 1797,10254, 2766, + 3216, 1636, 1082, 2767, 2731, 3572, 3604, 3636, 3668, 3228, + 1296, 3700, 3732, 3764, 3796, 3221, 2751, 2750, 2732, 1946, + + 1960, 3828, 3258, 3251, 3291, 2012, 3867, 3326, 3334, 3376, + 2833, 3425, 3464, 3501, 3552, 3582, 3592, 3614, 3624, 3646, + 2034, 3906, 3654, 3676, 3684, 2853, 2731, 2730, 0, 1897, + 3943, 2083, 3982, 0, 1024, 3708, 2738, 3718, 3742, 3752, + 2727, 3772, 2188, 3991, 2238, 4030, 0, 1158, 3782, 3806, + 3816, 2713, 4041, 3845, 3853, 3886, 2323, 3923, 2722, 3962, + 4010, 4060, 2207, 2920, 4078, 3081, 4117, 0, 4097, 2675, + 2718, 2645, 2644, 4140, 2627, 4149, 4160, 1297, 4192, 4224, + 4256, 4288, 4153, 4320, 4352, 4384, 4171, 1343, 2636, 2635, + 2613, 2495, 4414, 2605, 3282, 4451, 3367, 4490, 0, 4203, + + 2634, 3437, 4499, 3513, 4538, 0, 4215, 2612, 4233, 4242, + 4265, 4271, 2596, 4298, 4308, 4183, 4328, 2584, 4338, 4362, + 4372, 2667, 4392, 3563, 4547, 3953, 4586, 0, 4402, 2573, + 2562, 2538, 2526, 2525, 4597, 4431, 3931, 4470, 2441, 4518, + 4566, 4616, 4636, 4646, 4656, 2499, 4666, 4683, 4066, 4705, + 2537, 4713, 2507, 4723, 4733, 4743, 2496, 2874, 4749, 2893, + 4788, 0, 1194, 4767, 4798, 4807, 2961, 4817, 4834, 4279, + 4856, 3973,10254, 2515,10254, 4866, 4898, 4930, 4877, 1549, + 4885, 1329, 4962, 4994, 4915, 2462, 2461, 5024, 3039, 3070, + 5063, 4945, 4439, 4972, 3085, 5102, 4980, 4691, 5004, 4001, + + 3166, 5141, 5012, 4842, 5043, 4021, 5081, 5120, 5159, 5180, + 5190, 5200, 5210, 5220, 5230, 3210, 5240, 5257, 4907, 5279, + 4148, 2460, 2459, 0, 2458, 5287, 2443, 3147, 5324, 3197, + 5363, 0, 1212, 5304, 2452, 5343, 5374, 5384, 5390, 2422, + 5400, 5410, 5420, 2411, 5426, 3408, 5434, 3583, 5473, 0, + 1214, 5453, 5484, 5494, 2410, 5504, 5521, 4921, 5543, 3605, + 2417, 5552, 5561, 5570, 3543, 4171, 5576, 4461, 5615, 0, + 5595, 5624, 1344, 5656, 5688, 5635, 5720, 5752, 5784, 2407, + 5816, 5641, 4938, 2402, 5667, 3624, 0, 3684, 4509, 0, + 4557, 5855, 0, 5679, 3718, 4627, 0, 4779, 5866, 0, + + 5698, 3752, 5171, 0, 5270, 5877, 0, 5711, 2401, 5729, + 5738, 5761, 5767, 2401, 5794, 5804, 5835, 5886, 2400, 5896, + 5906, 5916, 3782, 5922, 5334, 0, 5354, 5932, 0, 5943, + 2345, 2344, 2332, 2301, 2300, 5954, 5971, 4953, 5993, 2299, + 6003, 6020, 5312, 6042, 3637, 6050, 6058, 6066, 6076, 6086, + 6096, 6106, 6116, 6126, 2282, 6136, 6153, 5529, 6175, 3733, + 6183, 2280, 6193, 6203, 6213, 2269, 3797, 6219, 3887, 6258, + 0, 1247, 3816, 6269, 6236, 5775, 6288, 5444, 6308, 6340, + 6372, 6319, 1361, 6404, 6436, 6329, 2268, 6349, 4042, 2267, + 4136, 6468, 0, 1286, 2275, 4130, 2248, 4132, 2246, 5464, + + 4144, 2219, 5984, 4308, 2168, 6033, 6360, 6381, 6390, 6414, + 6424, 6446, 6456, 6479, 6489, 4338, 2167, 6166, 2157, 2156, + 0, 2140, 6497, 2139, 4289, 6534, 4353, 6573, 0, 1385, + 2122, 4414, 6582, 4598, 6621, 0, 1491,10254, 6514, 6551, + 5841, 6599, 2131, 6632, 6642, 6652, 6658, 2130, 6668, 6678, + 6688, 2119, 6694, 4647, 6702, 4667, 6741, 0, 1507, 6719, + 6750, 6758, 2103, 6768, 6785, 6244, 6807, 4724, 4372, 6299, + 0, 6564, 6817, 0, 6828, 6837, 1501, 6869, 6901, 6848, + 6854, 6884, 6914, 6931, 6944, 6954, 2102, 2094, 2093, 4857, + 2091, 4616, 2075, 5034, 2074, 5667, 2073, 5804, 2055, 2054, + + 6963, 6972, 6923, 6980, 2054, 6990, 7000, 7010, 7016, 2053, + 7026, 7036, 7046, 5826, 2036, 2026, 1983, 7052, 1980, 1979, + 7091, 7069, 6522, 7110, 1978, 7130, 7147, 6607, 7169, 4963, + 1962, 7179, 7196, 6727, 7218, 4995, 7226, 7234, 7242, 7252, + 7262, 7272, 7282, 7292, 7302, 1961, 7312, 7329, 6793, 7351, + 5191,10254, 7359, 7367, 6892, 1948, 5211, 7375, 5375, 7414, + 0, 1525, 6279, 1956, 7082, 7394, 7424, 7432, 1898, 7440, + 7454, 7470, 1894, 7484, 7494, 7462, 1847, 1853, 1852, 1851, + 1837, 1836, 1835, 7503, 7512, 7521, 7531, 7541, 7551, 1805, + 1795, 7561, 7578, 7155, 0, 7600, 1793, 0, 1792, 5401, + + 0, 5485, 7610, 0, 1630, 1778, 5505, 0, 5785, 7621, + 0, 1632, 1777, 5897, 0, 5955, 7632, 0, 1660,10254, + 7641, 7649, 7204, 7657, 1786, 7667, 7677, 7687, 7693, 1751, + 7703, 7713, 7723, 1740, 7729, 6004, 0, 6077, 7739, 0, + 1663, 1739, 7750, 7767, 7337, 7789, 6097, 6424, 1747, 1645, + 7797, 7805, 7813, 7835, 7845, 1672, 1622, 1608, 1596, 1549, + 1534, 1449, 7854, 7863, 7872, 7878, 1432, 7888, 7898, 7827, + 1428, 1402, 7906, 6117, 1385, 6137, 7916, 0, 1696, 0, + 1366, 0, 1229, 0, 6194, 1119, 0, 6320, 1117, 0, + 6405, 7925, 7933, 7941, 7951, 7961, 7971, 7981, 7991, 8001, + + 1104, 0, 6437, 1071, 6480, 0, 6633, 8011, 0, 1727, + 989, 8020, 971, 8030, 8040, 8050, 8057, 8066, 8075, 8085, + 8095, 8105, 954, 0,10254, 6669, 0, 897, 0, 801, + 0, 768, 0, 761, 0,10254, 8113, 8121, 7586, 8129, + 697, 8139, 8149, 8159, 8165, 628, 8175, 8185, 8195, 590, + 0, 561, 0, 6769, 566, 8202, 8211, 8220, 467, 8229, + 8238, 8247, 8253, 388, 8263, 8273, 8283, 360, 0, 0, + 0, 0, 0, 0, 8289, 8297, 8305, 8315, 8325, 8335, + 0, 353, 0, 316, 8344, 8353, 8362, 8370, 8380, 8390, + 0,10254,10254,10254,10254,10254,10254, 8398, 8406, 7775, + + 8414, 228, 8424, 8434, 8444,10254, 0, 8450, 84, 8460, + 8470, 8480, 8486, 8494, 8502,10254, 8510, 8518, 8526,10254, + 8534, 8542, 8550,10254, 8556, 8564, 8572,10254, 8593, 8604, + 8615, 8626, 8637, 8648, 8659, 8670, 8681, 8692, 8703, 8714, + 8725, 8736, 8738, 8749, 8760, 8771, 8782, 8787, 8793, 8804, + 8815, 8820, 8826, 8831, 8836, 8841, 8847, 8852, 8857, 8864, + 8869, 8874, 8879, 8885, 8890, 8895, 8901, 8906, 8911, 8916, + 8923, 8928, 8933, 8939, 8946, 8953, 8958, 8963, 8968, 8974, + 8979, 8984, 8990, 8996, 9002, 9007, 9012, 9019, 9024, 9031, + 9042, 9047, 9052, 9058, 9064, 9071, 9078, 9083, 9088, 9093, + + 9100, 9106, 9117, 9128, 9139, 9150, 9161, 9166, 9171, 9177, + 9183, 9189, 9195, 9200, 9205, 9210, 9217, 9224, 9229, 9236, + 9247, 9258, 9269, 9280, 9291, 9296, 9301, 9307, 9313, 9320, + 9327, 9334, 9339, 9344, 9349, 9354, 9359, 9366, 9372, 9383, + 9394, 9405, 9410, 9416, 9422, 9428, 9434, 9440, 9445, 9450, + 9455, 9460, 9467, 9474, 9479, 9486, 9497, 9508, 9513, 9519, + 9525, 9530, 9537, 9542, 9549, 9554, 9561, 9566, 9573, 9578, + 9583, 9588, 9593, 9598, 9603, 9608, 9615, 9621, 9632, 9643, + 9650, 9655, 9661, 9667, 9673, 9679, 9685, 9691, 9697, 9703, + 9709, 9715, 9721, 9726, 9731, 9736, 9741, 9748, 9755, 9762, + + 9767, 9774, 9779, 9790, 9801, 9806, 9812, 9818, 9824, 9830, + 9836, 9842, 9848, 9853, 9858, 9863, 9868, 9873, 9878, 9885, + 9891, 9897, 9908, 9919, 9925, 9931, 9937, 9943, 9949, 9955, + 9961, 9966, 9971, 9976, 9981, 9988, 9993,10000,10005,10012, + 10017,10024,10029,10034,10040,10051,10057,10064,10069,10074, + 10079,10084,10089,10094,10099,10104,10109,10114,10119,10124, + 10131,10136,10142,10147,10152,10157,10162,10167,10172,10177, + 10182,10187,10192,10197,10202,10207,10212,10217,10222,10227, + 10232,10237,10242 } ; -static yyconst short int yy_def[1717] = +static yyconst short int yy_def[1684] = { 0, - 1460, 1, 1460, 3, 1, 1, 1461, 1461, 1462, 1462, - 1463, 1463, 1460, 1464, 1460, 1460, 1460, 1465, 1466, 1460, - 1460, 1467, 1460, 1468, 1464, 25, 25, 1460, 1460, 1460, - 30, 30, 32, 32, 32, 32, 1464, 25, 1464, 1460, - 1465, 30, 30, 32, 32, 32, 1469, 1460, 1470, 1460, - 1471, 1472, 1469, 53, 53, 1460, 56, 56, 58, 58, - 58, 58, 1469, 53, 1469, 1460, 1473, 1464, 1474, 1460, - 1474, 1474, 1460, 1460, 1460, 1475, 1476, 1477, 1476, 1460, - 1476, 1460, 1478, 1464, 1464, 1460, 1460, 1465, 1460, 1466, - 1466, 1467, 1467, 1468, 1479, 1464, 1464, 25, 1480, 98, - - 98, 98, 98, 1481, 30, 32, 32, 32, 32, 32, - 32, 1464, 1460, 1464, 1460, 1460, 1460, 1460, 1460, 1460, - 1465, 1464, 98, 1464, 1464, 1464, 1469, 1469, 1460, 1470, - 1470, 1471, 1471, 1472, 1469, 1469, 53, 137, 137, 137, - 137, 56, 58, 58, 58, 58, 58, 58, 1469, 1469, - 1460, 1473, 1482, 1464, 1464, 1474, 1474, 1460, 1460, 1460, - 1460, 1475, 1476, 1476, 1477, 1483, 1477, 1460, 1460, 1476, - 1476, 1460, 1464, 1464, 1464, 98, 1484, 1460, 176, 1460, - 1485, 30, 32, 32, 32, 32, 32, 32, 32, 32, - 1464, 1460, 1460, 1460, 1460, 1460, 1465, 1464, 176, 1464, - - 1464, 1464, 1469, 1469, 1469, 137, 206, 56, 58, 58, - 58, 58, 58, 58, 58, 58, 1469, 1460, 1464, 1476, - 1460, 1483, 1477, 1477, 1464, 1464, 1464, 1464, 1464, 1464, - 1486, 1487, 1460, 233, 233, 233, 1488, 1488, 238, 1460, - 1488, 1489, 1460, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 1464, 1460, 1460, 1460, 1460, 1460, 1465, 1464, - 1464, 1464, 1469, 1469, 1469, 1469, 1469, 1469, 58, 58, - 58, 58, 58, 58, 58, 58, 58, 1469, 1464, 1483, - 1464, 1464, 1464, 1490, 1491, 1460, 1460, 1492, 1460, 1492, - 1492, 291, 1492, 1493, 1494, 1493, 296, 1493, 1495, 1496, - - 1460, 301, 301, 301, 1460, 1460, 32, 32, 32, 32, - 32, 32, 32, 1464, 1460, 1460, 1460, 1465, 1464, 1464, - 1469, 1469, 1469, 58, 58, 58, 58, 58, 58, 58, - 1469, 1464, 1464, 1464, 1464, 1464, 1464, 1460, 1497, 1498, - 1460, 341, 341, 341, 1460, 1460, 1460, 1499, 1460, 349, - 349, 349, 1499, 1500, 1501, 1460, 1500, 1502, 1460, 1460, - 1503, 1460, 1503, 1503, 364, 1503, 32, 32, 32, 32, - 32, 32, 32, 1464, 1460, 1460, 1465, 1464, 1464, 1469, - 1469, 1469, 1469, 1469, 58, 58, 58, 58, 58, 58, - 58, 1469, 1464, 1464, 1464, 1464, 1504, 1505, 1506, 1507, - - 1460, 1507, 1507, 403, 1507, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1508, 1460, 1508, 1508, 416, 1508, 1460, 1509, - 1510, 1460, 422, 422, 422, 1511, 1460, 1460, 1460, 1460, - 1512, 1460, 432, 432, 432, 1512, 32, 1460, 1460, 32, - 32, 32, 1460, 1460, 1460, 1460, 1464, 1460, 1460, 1465, - 1464, 1464, 1469, 1469, 1469, 58, 58, 58, 58, 1469, - 1464, 1464, 1464, 1464, 1464, 1464, 1460, 1513, 1514, 1515, - 1516, 1460, 472, 472, 472, 1516, 1460, 1460, 1460, 1460, - 1460, 1460, 1517, 1460, 484, 484, 484, 1517, 1518, 1519, - 1460, 1460, 1520, 1460, 1520, 1520, 496, 496, 1521, 1460, - - 500, 500, 500, 1460, 1460, 1460, 1460, 1460, 1460, 1522, - 1460, 1522, 1522, 513, 1522, 1460, 1460, 1460, 518, 518, - 1464, 1460, 1460, 1523, 1464, 1464, 1524, 1524, 1524, 1524, - 1524, 1460, 532, 532, 1524, 1464, 1464, 1464, 1464, 1464, - 1525, 1526, 1527, 1528, 1460, 1460, 1529, 1460, 1529, 1529, - 550, 1529, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1530, 1460, 1530, 1530, 568, 1530, - 1460, 1531, 1532, 1460, 574, 574, 574, 1460, 1460, 1460, - 1533, 1460, 582, 582, 582, 1533, 1460, 1460, 1534, 1460, - 1534, 1534, 592, 592, 1460, 1460, 1460, 1535, 1460, 599, - - 599, 599, 1535, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1536, 1537, 1538, 1539, 1540, 1540, 1540, 1540, 1460, 1537, - 1537, 1537, 1537, 1537, 1537, 1537, 1460, 1541, 1542, 1543, - 1544, 1460, 632, 632, 632, 1545, 1460, 637, 637, 637, - 1545, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1546, 1460, 652, 652, 652, 1546, 1547, 1548, 1549, 1550, - 1460, 1550, 1550, 663, 663, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1551, 1460, 1551, 1551, 676, 676, 1460, 1460, - 1460, 1552, 1460, 683, 683, 683, 1552, 1460, 1460, 1460, - 1460, 1460, 1460, 1553, 1460, 1553, 1553, 697, 1553, 1460, - - 1460, 1460, 1554, 1555, 1556, 1556, 1557, 1557, 1558, 1558, - 1558, 1558, 1558, 1558, 1558, 1555, 1555, 1555, 1555, 1555, - 1559, 1560, 1561, 1562, 1460, 1460, 1563, 1460, 1563, 1563, - 730, 1563, 1460, 1564, 1460, 1564, 1564, 737, 1564, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1565, 1460, 1565, 1565, 759, - 1565, 1460, 1566, 1567, 1568, 1569, 1460, 767, 767, 767, - 1569, 1460, 1460, 1460, 1460, 1460, 1460, 1570, 1460, 779, - 779, 779, 1570, 1460, 1460, 1460, 1460, 1460, 1460, 1571, - 1460, 1571, 1571, 793, 793, 1460, 1460, 1460, 1572, 1460, - - 800, 800, 800, 1572, 1460, 1573, 1460, 1574, 1574, 1574, - 1574, 1574, 1575, 1575, 1575, 1575, 1575, 1460, 1576, 1460, - 1577, 1578, 1460, 823, 823, 823, 1579, 1460, 828, 828, - 828, 1579, 1580, 1460, 834, 834, 834, 1580, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1581, 1460, 849, - 849, 849, 1581, 1582, 1583, 1584, 1585, 1460, 1460, 1586, - 1460, 1586, 1586, 863, 863, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1587, 1460, 1587, - 1587, 881, 881, 1460, 1460, 1460, 1588, 1460, 888, 888, - 888, 1588, 1460, 1460, 1460, 1460, 1460, 1589, 1460, 1589, - - 1589, 901, 1589, 1590, 1590, 1590, 1590, 1590, 1591, 1591, - 1591, 1592, 1460, 913, 913, 1593, 913, 1594, 1595, 1460, - 1596, 1597, 1596, 1596, 924, 1596, 1460, 1598, 1599, 1598, - 1598, 931, 1598, 1460, 1600, 1601, 1600, 1600, 938, 1600, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1602, 1603, 1602, 1602, - 960, 1602, 1460, 1604, 1605, 1606, 1607, 1460, 968, 968, - 968, 1608, 1460, 973, 973, 973, 1608, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1609, 1460, 988, 988, - 988, 1609, 1460, 1460, 1460, 1460, 1460, 1460, 1610, 1460, - - 1610, 1610, 1002, 1002, 1611, 1460, 1006, 1006, 1006, 1611, - 1612, 1612, 1612, 1613, 1613, 1613, 1613, 1613, 1460, 1460, - 1614, 1615, 1614, 1614, 1024, 1024, 1616, 1617, 1618, 1619, - 1620, 1619, 1621, 1622, 1621, 1623, 1624, 1623, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1625, 1626, 1625, - 1627, 1628, 1629, 1630, 1460, 1460, 1631, 1460, 1631, 1631, - 1060, 1060, 1460, 1632, 1460, 1632, 1632, 1067, 1067, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1633, 1460, 1633, 1633, 1089, - 1089, 1460, 1460, 1460, 1634, 1460, 1096, 1096, 1096, 1634, - - 1460, 1635, 1636, 1635, 1635, 1105, 1635, 1637, 1637, 1637, - 1637, 1637, 1638, 1638, 1638, 1460, 1460, 1460, 1639, 1640, - 1460, 1639, 1641, 1460, 1642, 1460, 1643, 1460, 1644, 1460, - 1645, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1646, 1460, 1647, 1460, - 1648, 1649, 1460, 1153, 1153, 1153, 1650, 1460, 1158, 1158, - 1158, 1650, 1651, 1460, 1164, 1164, 1164, 1651, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1652, 1460, 1179, - 1179, 1179, 1652, 1460, 1460, 1460, 1460, 1460, 1653, 1460, - 1653, 1653, 1192, 1192, 1654, 1655, 1654, 1656, 1656, 1656, - - 1657, 1657, 1657, 1460, 1460, 1460, 1460, 1460, 1460, 1658, - 1659, 1660, 1661, 1662, 1663, 1460, 1460, 1460, 1460, 1460, - 1460, 1664, 1665, 1460, 1224, 1224, 1666, 1224, 1667, 1668, - 1460, 1669, 1670, 1669, 1669, 1235, 1235, 1460, 1671, 1672, - 1671, 1671, 1242, 1242, 1460, 1673, 1674, 1673, 1673, 1249, - 1249, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1675, 1676, 1675, - 1675, 1271, 1271, 1677, 1460, 1275, 1275, 1275, 1677, 1460, - 1678, 1679, 1679, 1679, 1460, 1460, 1460, 1680, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - - 1460, 1460, 1460, 1460, 1460, 1681, 1682, 1681, 1681, 1309, - 1309, 1683, 1684, 1685, 1686, 1687, 1686, 1688, 1689, 1688, - 1690, 1691, 1690, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1692, 1693, 1692, 1460, 1694, 1695, 1694, 1694, - 1340, 1340, 1696, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1697, 1698, 1460, 1697, 1699, 1460, - 1700, 1460, 1701, 1460, 1702, 1460, 1703, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1704, 1705, 1706, 1705, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - - 1707, 1708, 1709, 1710, 1711, 1712, 1460, 1460, 1460, 1460, - 1460, 1460, 1713, 1460, 1714, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1715, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1716, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 0, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460 + 1428, 1, 1428, 3, 1, 1, 1429, 1429, 1430, 1430, + 1431, 1431, 1428, 1432, 1428, 1428, 1428, 1433, 1434, 1428, + 1428, 1435, 1428, 1436, 1432, 25, 25, 1428, 1428, 1428, + 30, 30, 32, 32, 32, 1432, 25, 1432, 1428, 1433, + 30, 30, 32, 32, 32, 1437, 1428, 1438, 1428, 1439, + 1440, 1437, 52, 52, 1428, 55, 55, 57, 57, 57, + 1437, 52, 1437, 1428, 1441, 1432, 1442, 1428, 1442, 1442, + 1428, 1428, 1428, 1443, 1444, 1445, 1444, 1428, 1444, 1428, + 1446, 1432, 1432, 1428, 1428, 1433, 1428, 1434, 1434, 1435, + 1435, 1436, 1447, 1432, 1432, 25, 1448, 96, 96, 96, + + 96, 1449, 30, 32, 32, 32, 32, 32, 1432, 1428, + 1432, 1428, 1428, 1428, 1428, 1428, 1428, 1433, 1432, 96, + 1432, 1432, 1432, 1437, 1437, 1428, 1438, 1438, 1439, 1439, + 1440, 1437, 1437, 52, 134, 134, 134, 134, 55, 57, + 57, 57, 57, 57, 1437, 1437, 1428, 1441, 1450, 1432, + 1432, 1442, 1442, 1428, 1428, 1428, 1428, 1443, 1444, 1444, + 1445, 1451, 1445, 1428, 1428, 1444, 1444, 1428, 1432, 1432, + 1432, 96, 1452, 1428, 172, 1428, 1453, 30, 32, 32, + 32, 32, 32, 32, 1432, 1428, 1428, 1428, 1428, 1428, + 1433, 1432, 172, 1432, 1432, 1432, 1437, 1437, 1437, 134, + + 200, 55, 57, 57, 57, 57, 57, 57, 1437, 1428, + 1432, 1444, 1428, 1451, 1445, 1445, 1432, 1432, 1432, 1432, + 1432, 1432, 1454, 1455, 1428, 225, 225, 225, 1456, 1456, + 230, 1428, 1456, 1457, 1428, 32, 32, 32, 32, 32, + 32, 32, 1432, 1428, 1428, 1428, 1428, 1428, 1433, 1432, + 1432, 1432, 1437, 1437, 1437, 1437, 1437, 1437, 57, 57, + 57, 57, 57, 57, 57, 1437, 1432, 1451, 1432, 1432, + 1432, 1458, 1459, 1428, 1428, 1460, 1428, 1460, 1460, 279, + 1460, 1461, 1462, 1461, 284, 1461, 1463, 1464, 1428, 289, + 289, 289, 1428, 1428, 32, 32, 32, 32, 32, 1432, + + 1428, 1428, 1428, 1433, 1432, 1432, 1437, 1437, 1437, 57, + 57, 57, 57, 57, 1437, 1432, 1432, 1432, 1432, 1432, + 1432, 1428, 1465, 1466, 1428, 325, 325, 325, 1428, 1428, + 1428, 1467, 1428, 333, 333, 333, 1467, 1468, 1469, 1428, + 1468, 1470, 1428, 1428, 1471, 1428, 1471, 1471, 348, 1471, + 32, 32, 32, 32, 32, 1432, 1428, 1428, 1433, 1432, + 1432, 1437, 1437, 1437, 1437, 1437, 57, 57, 57, 57, + 57, 1437, 1432, 1432, 1432, 1432, 1472, 1473, 1474, 1475, + 1428, 1475, 1475, 383, 1475, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1476, 1428, 1476, 1476, 396, 1476, 1428, 1477, + + 1478, 1428, 402, 402, 402, 1479, 1428, 1428, 1428, 1428, + 1480, 1428, 412, 412, 412, 1480, 1428, 1428, 32, 32, + 1428, 1428, 1428, 1428, 1432, 1428, 1428, 1433, 1432, 1432, + 1437, 1437, 1437, 57, 57, 1437, 1432, 1432, 1432, 1432, + 1432, 1432, 1428, 1481, 1482, 1483, 1484, 1428, 448, 448, + 448, 1484, 1428, 1428, 1428, 1428, 1428, 1428, 1485, 1428, + 460, 460, 460, 1485, 1486, 1487, 1428, 1428, 1488, 1428, + 1488, 1488, 472, 472, 1489, 1428, 476, 476, 476, 1428, + 1428, 1428, 1428, 1428, 1428, 1490, 1428, 1490, 1490, 489, + 1490, 1428, 492, 1432, 1428, 1428, 1491, 1432, 1432, 1437, + + 1437, 1437, 1437, 1437, 1428, 505, 1437, 1432, 1432, 1432, + 1432, 1432, 1492, 1493, 1494, 1495, 1428, 1428, 1496, 1428, + 1496, 1496, 522, 1496, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1497, 1428, 1497, 1497, + 540, 1497, 1428, 1498, 1499, 1428, 546, 546, 546, 1428, + 1428, 1428, 1500, 1428, 554, 554, 554, 1500, 1428, 1428, + 1501, 1428, 1501, 1501, 564, 564, 1428, 1428, 1428, 1502, + 1428, 571, 571, 571, 1502, 1428, 1428, 1428, 1428, 1428, + 1428, 1503, 1504, 1505, 1506, 1507, 1507, 1507, 1507, 1504, + 1504, 1504, 1504, 1504, 1504, 1504, 1428, 1508, 1509, 1510, + + 1511, 1428, 602, 602, 602, 1512, 1428, 607, 607, 607, + 1512, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1513, 1428, 622, 622, 622, 1513, 1514, 1515, 1516, 1517, + 1428, 1517, 1517, 633, 633, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1518, 1428, 1518, 1518, 646, 646, 1428, 1428, + 1428, 1519, 1428, 653, 653, 653, 1519, 1428, 1428, 1428, + 1428, 1428, 1428, 1520, 1428, 1520, 1520, 667, 1520, 1428, + 1521, 1522, 1523, 1523, 1524, 1524, 1525, 1525, 1525, 1525, + 1525, 1525, 1525, 1522, 1522, 1522, 1522, 1522, 1526, 1527, + 1528, 1529, 1428, 1428, 1530, 1428, 1530, 1530, 698, 1530, + + 1428, 1531, 1428, 1531, 1531, 705, 1531, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1532, 1428, 1532, 1532, 727, 1532, 1428, + 1533, 1534, 1535, 1536, 1428, 735, 735, 735, 1536, 1428, + 1428, 1428, 1428, 1428, 1428, 1537, 1428, 747, 747, 747, + 1537, 1428, 1428, 1428, 1428, 1428, 1428, 1538, 1428, 1538, + 1538, 761, 761, 1428, 1428, 1428, 1539, 1428, 768, 768, + 768, 1539, 1428, 1540, 1428, 1541, 1541, 1541, 1541, 1541, + 1542, 1542, 1542, 1542, 1542, 1428, 1543, 1428, 1544, 1545, + 1428, 791, 791, 791, 1546, 1428, 796, 796, 796, 1546, + + 1547, 1428, 802, 802, 802, 1547, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1548, 1428, 817, 817, 817, + 1548, 1549, 1550, 1551, 1552, 1428, 1428, 1553, 1428, 1553, + 1553, 831, 831, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1554, 1428, 1554, 1554, 849, + 849, 1428, 1428, 1428, 1555, 1428, 856, 856, 856, 1555, + 1428, 1428, 1428, 1428, 1428, 1556, 1428, 1556, 1556, 869, + 1556, 1557, 1557, 1557, 1557, 1557, 1558, 1558, 1558, 1559, + 1428, 881, 881, 1560, 881, 1561, 1562, 1428, 1563, 1564, + 1563, 1563, 892, 1563, 1428, 1565, 1566, 1565, 1565, 899, + + 1565, 1428, 1567, 1568, 1567, 1567, 906, 1567, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1569, 1570, 1569, 1569, 928, 1569, + 1428, 1571, 1572, 1573, 1574, 1428, 936, 936, 936, 1575, + 1428, 941, 941, 941, 1575, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1576, 1428, 956, 956, 956, 1576, + 1428, 1428, 1428, 1428, 1428, 1428, 1577, 1428, 1577, 1577, + 970, 970, 1578, 1428, 974, 974, 974, 1578, 1579, 1579, + 1579, 1580, 1580, 1580, 1580, 1580, 1428, 1428, 1581, 1582, + 1581, 1581, 992, 992, 1583, 1584, 1585, 1586, 1587, 1586, + + 1588, 1589, 1588, 1590, 1591, 1590, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1592, 1593, 1592, 1594, 1595, + 1596, 1597, 1428, 1428, 1598, 1428, 1598, 1598, 1028, 1028, + 1428, 1599, 1428, 1599, 1599, 1035, 1035, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1600, 1428, 1600, 1600, 1057, 1057, 1428, + 1428, 1428, 1601, 1428, 1064, 1064, 1064, 1601, 1428, 1602, + 1603, 1602, 1602, 1073, 1602, 1604, 1604, 1604, 1604, 1604, + 1605, 1605, 1605, 1428, 1428, 1428, 1606, 1607, 1428, 1606, + 1608, 1428, 1609, 1428, 1610, 1428, 1611, 1428, 1612, 1428, + + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1613, 1428, 1614, 1428, 1615, 1616, + 1428, 1121, 1121, 1121, 1617, 1428, 1126, 1126, 1126, 1617, + 1618, 1428, 1132, 1132, 1132, 1618, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1619, 1428, 1147, 1147, 1147, + 1619, 1428, 1428, 1428, 1428, 1428, 1620, 1428, 1620, 1620, + 1160, 1160, 1621, 1622, 1621, 1623, 1623, 1623, 1624, 1624, + 1624, 1428, 1428, 1428, 1428, 1428, 1428, 1625, 1626, 1627, + 1628, 1629, 1630, 1428, 1428, 1428, 1428, 1428, 1428, 1631, + 1632, 1428, 1192, 1192, 1633, 1192, 1634, 1635, 1428, 1636, + + 1637, 1636, 1636, 1203, 1203, 1428, 1638, 1639, 1638, 1638, + 1210, 1210, 1428, 1640, 1641, 1640, 1640, 1217, 1217, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1642, 1643, 1642, 1642, 1239, + 1239, 1644, 1428, 1243, 1243, 1243, 1644, 1428, 1645, 1646, + 1646, 1646, 1428, 1428, 1428, 1647, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1648, 1649, 1648, 1648, 1277, 1277, 1650, + 1651, 1652, 1653, 1654, 1653, 1655, 1656, 1655, 1657, 1658, + 1657, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + + 1659, 1660, 1659, 1428, 1661, 1662, 1661, 1661, 1308, 1308, + 1663, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1664, 1665, 1428, 1664, 1666, 1428, 1667, 1428, + 1668, 1428, 1669, 1428, 1670, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1671, 1672, 1673, 1672, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1674, 1675, + 1676, 1677, 1678, 1679, 1428, 1428, 1428, 1428, 1428, 1428, + 1680, 1428, 1681, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1682, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + + 1428, 1428, 1428, 1428, 1428, 1428, 1683, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 0, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428 } ; -static yyconst short int yy_nxt[10433] = +static yyconst short int yy_nxt[10317] = { 0, 14, 15, 16, 17, 14, 18, 19, 20, 21, 14, 22, 23, 14, 14, 24, 25, 26, 27, 25, 25, 25, 25, 25, 28, 29, 21, 14, 30, 30, 30, - 30, 31, 32, 32, 32, 33, 34, 32, 35, 32, - 36, 32, 32, 32, 32, 32, 37, 14, 38, 38, - 38, 38, 38, 38, 14, 14, 14, 14, 14, 14, - 14, 39, 14, 14, 40, 85, 85, 262, 41, 101, - 101, 101, 101, 101, 101, 101, 101, 102, 102, 102, - 102, 102, 103, 114, 139, 139, 139, 139, 139, 139, - 139, 139, 42, 43, 161, 113, 44, 171, 113, 85, - - 161, 113, 45, 1440, 191, 46, 47, 15, 16, 17, - 47, 48, 49, 21, 50, 47, 51, 23, 47, 47, - 52, 53, 54, 55, 53, 53, 53, 53, 53, 28, - 29, 21, 47, 56, 56, 56, 56, 57, 58, 58, - 58, 59, 60, 58, 61, 58, 62, 58, 58, 58, - 58, 58, 63, 47, 64, 64, 64, 64, 64, 64, - 47, 47, 47, 47, 47, 47, 47, 65, 47, 47, - 66, 66, 89, 168, 21, 21, 21, 21, 15, 70, - 71, 95, 72, 67, 67, 95, 95, 85, 73, 15, - 70, 71, 89, 72, 85, 164, 161, 113, 84, 73, - - 73, 72, 200, 95, 95, 1433, 198, 169, 95, 95, - 128, 73, 72, 84, 115, 100, 100, 100, 100, 100, - 100, 100, 100, 74, 96, 121, 95, 150, 153, 164, - 68, 68, 153, 153, 74, 15, 16, 17, 199, 18, - 85, 85, 116, 117, 128, 85, 118, 135, 197, 217, - 153, 202, 119, 129, 260, 120, 129, 129, 129, 129, - 129, 129, 129, 129, 140, 140, 140, 140, 140, 141, - 127, 154, 138, 138, 138, 138, 138, 138, 138, 138, - 75, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 15, 16, - - 17, 85, 18, 84, 85, 84, 85, 84, 185, 84, - 84, 219, 186, 84, 180, 187, 201, 188, 155, 179, - 179, 179, 179, 179, 179, 84, 84, 84, 207, 207, - 207, 207, 207, 207, 1338, 173, 174, 175, 173, 173, - 173, 173, 173, 75, 76, 76, 76, 76, 76, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 15, 16, 17, 78, 18, 85, 89, 161, 113, - 79, 80, 81, 161, 113, 158, 113, 159, 163, 160, - 221, 225, 163, 159, 82, 160, 180, 211, 163, 166, - 166, 212, 163, 166, 213, 243, 214, 160, 160, 166, - - 85, 163, 166, 1307, 223, 260, 83, 15, 16, 17, - 78, 18, 166, 128, 85, 259, 79, 80, 81, 90, - 160, 90, 222, 90, 85, 90, 90, 161, 113, 90, - 82, 85, 128, 85, 167, 85, 280, 253, 85, 314, - 89, 90, 90, 90, 95, 278, 224, 260, 95, 95, - 260, 279, 83, 97, 1395, 98, 98, 98, 98, 98, - 98, 98, 98, 99, 89, 180, 95, 100, 100, 100, - 100, 100, 164, 92, 243, 92, 99, 92, 222, 92, - 92, 85, 319, 92, 581, 581, 85, 96, 100, 100, - 100, 100, 100, 100, 84, 92, 92, 92, 84, 85, - - 84, 377, 180, 84, 84, 180, 84, 84, 84, 105, - 105, 105, 105, 105, 105, 105, 105, 99, 318, 1338, - 84, 105, 105, 105, 105, 105, 106, 106, 106, 106, - 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, - 85, 106, 100, 100, 100, 100, 100, 100, 84, 84, - 84, 84, 84, 84, 84, 84, 84, 84, 106, 106, - 106, 106, 106, 106, 106, 106, 1460, 298, 298, 298, - 106, 106, 106, 106, 106, 179, 179, 179, 179, 179, - 179, 179, 179, 179, 179, 179, 179, 179, 179, 179, - 179, 84, 84, 84, 84, 84, 84, 112, 113, 84, - - 263, 84, 89, 84, 84, 129, 1269, 84, 129, 129, - 129, 129, 129, 129, 129, 129, 378, 333, 99, 84, - 84, 84, 136, 305, 137, 137, 137, 137, 137, 137, - 137, 137, 99, 128, 305, 85, 138, 138, 138, 138, - 138, 128, 94, 85, 84, 306, 94, 99, 84, 84, - 85, 450, 94, 379, 1377, 128, 306, 138, 138, 138, - 138, 138, 138, 127, 94, 94, 84, 127, 128, 127, - 85, 1372, 127, 127, 331, 127, 127, 127, 142, 142, - 142, 142, 142, 142, 142, 142, 99, 320, 1247, 127, - 142, 142, 142, 142, 142, 143, 143, 143, 143, 143, - - 143, 143, 143, 143, 143, 143, 143, 143, 143, 128, - 143, 138, 138, 138, 138, 138, 138, 127, 127, 127, - 127, 127, 127, 127, 127, 127, 127, 143, 143, 143, - 143, 143, 143, 143, 143, 1460, 180, 305, 85, 143, - 143, 143, 143, 143, 332, 243, 115, 180, 203, 204, - 205, 203, 203, 203, 203, 203, 289, 1240, 221, 306, - 127, 127, 127, 127, 127, 127, 149, 113, 127, 89, - 127, 1233, 127, 127, 116, 117, 127, 95, 118, 128, - 85, 95, 95, 1230, 119, 374, 85, 120, 127, 127, - 127, 176, 176, 176, 176, 176, 176, 176, 176, 95, - - 222, 1307, 452, 176, 176, 176, 176, 176, 207, 207, - 207, 207, 207, 207, 207, 207, 438, 153, 128, 524, - 135, 153, 153, 392, 176, 176, 176, 176, 176, 176, - 182, 182, 182, 182, 182, 182, 182, 182, 439, 153, - 287, 180, 182, 182, 182, 182, 182, 127, 1344, 127, - 289, 127, 85, 127, 127, 443, 85, 127, 445, 380, - 154, 393, 451, 176, 176, 176, 176, 176, 176, 127, - 127, 127, 130, 180, 130, 180, 130, 444, 130, 130, - 446, 132, 130, 132, 243, 132, 1190, 132, 132, 438, - 1269, 132, 128, 443, 130, 130, 130, 292, 292, 292, - - 292, 292, 293, 132, 132, 132, 134, 462, 127, 85, - 134, 439, 127, 127, 1247, 444, 134, 207, 207, 207, - 207, 207, 207, 207, 207, 521, 85, 1240, 134, 134, - 127, 206, 206, 206, 206, 206, 206, 206, 206, 85, - 85, 526, 612, 206, 206, 206, 206, 206, 281, 282, - 283, 281, 281, 281, 281, 281, 291, 291, 291, 291, - 291, 291, 291, 291, 206, 206, 206, 206, 206, 206, - 208, 208, 208, 208, 208, 208, 208, 208, 445, 85, - 1460, 180, 208, 208, 208, 208, 208, 152, 1233, 84, - 289, 152, 85, 84, 84, 611, 89, 152, 516, 1230, - - 446, 447, 1357, 206, 206, 206, 206, 206, 206, 152, - 152, 84, 166, 166, 95, 220, 166, 153, 95, 1150, - 517, 153, 166, 180, 95, 1298, 128, 153, 166, 166, - 438, 220, 166, 287, 180, 166, 95, 95, 166, 153, - 153, 128, 535, 289, 85, 166, 166, 180, 223, 166, - 460, 166, 439, 461, 85, 166, 289, 167, 225, 443, - 226, 226, 226, 226, 226, 226, 226, 226, 166, 180, - 536, 527, 225, 167, 226, 226, 226, 226, 226, 226, - 1460, 444, 290, 290, 290, 290, 290, 290, 290, 290, - 167, 85, 225, 180, 227, 227, 227, 227, 227, 227, - - 227, 227, 362, 128, 180, 85, 296, 296, 297, 298, - 298, 298, 298, 298, 295, 321, 322, 323, 321, 321, - 321, 321, 321, 445, 620, 85, 225, 85, 228, 228, - 228, 228, 228, 229, 226, 226, 525, 263, 180, 264, - 264, 264, 264, 264, 264, 446, 128, 345, 346, 347, - 345, 345, 345, 345, 345, 682, 682, 85, 85, 85, - 84, 180, 230, 230, 230, 230, 230, 230, 230, 230, - 128, 516, 516, 704, 230, 230, 230, 230, 230, 287, - 180, 353, 353, 353, 353, 353, 353, 180, 605, 289, - 180, 607, 180, 517, 517, 230, 230, 230, 230, 230, - - 230, 180, 233, 234, 235, 233, 233, 233, 233, 233, - 606, 128, 605, 608, 236, 236, 236, 236, 236, 357, - 357, 357, 357, 357, 357, 357, 357, 295, 365, 365, - 365, 365, 365, 366, 606, 236, 236, 236, 236, 236, - 236, 237, 238, 239, 239, 239, 239, 239, 239, 240, - 106, 766, 766, 241, 241, 241, 241, 241, 364, 364, - 364, 364, 364, 364, 364, 364, 403, 403, 403, 403, - 403, 403, 403, 403, 241, 241, 241, 241, 241, 241, - 244, 244, 244, 244, 244, 244, 244, 244, 360, 180, - 778, 778, 244, 244, 244, 244, 244, 1460, 362, 363, - - 363, 363, 363, 363, 363, 363, 363, 404, 404, 404, - 404, 404, 405, 230, 230, 230, 230, 230, 230, 263, - 180, 264, 264, 264, 264, 264, 264, 264, 264, 545, - 887, 887, 394, 395, 396, 394, 394, 394, 394, 394, - 333, 180, 334, 334, 334, 334, 334, 334, 180, 709, - 401, 813, 128, 263, 1190, 265, 265, 265, 265, 265, - 265, 265, 265, 85, 416, 416, 416, 416, 416, 416, - 416, 416, 1460, 85, 402, 402, 402, 402, 402, 402, - 402, 402, 128, 1087, 85, 1261, 128, 263, 492, 266, - 266, 266, 266, 266, 267, 264, 264, 406, 494, 407, - - 407, 407, 407, 407, 407, 407, 407, 406, 180, 408, - 408, 408, 408, 408, 408, 408, 408, 414, 972, 972, - 128, 127, 1256, 268, 268, 268, 268, 268, 268, 268, - 268, 1460, 180, 987, 987, 268, 268, 268, 268, 268, - 406, 362, 409, 409, 409, 409, 409, 410, 407, 407, - 417, 417, 417, 417, 417, 418, 268, 268, 268, 268, - 268, 268, 269, 269, 269, 269, 269, 269, 269, 269, - 287, 180, 700, 1065, 269, 269, 269, 269, 269, 1460, - 401, 415, 415, 415, 415, 415, 415, 415, 415, 1095, - 1095, 1058, 1460, 180, 701, 268, 268, 268, 268, 268, - - 268, 225, 401, 226, 226, 226, 226, 226, 226, 226, - 226, 428, 429, 430, 428, 428, 428, 428, 428, 360, - 180, 436, 436, 436, 436, 436, 436, 1119, 1119, 362, - 1157, 1157, 611, 89, 85, 225, 1460, 226, 226, 226, - 226, 226, 226, 226, 226, 703, 494, 1163, 1163, 453, - 454, 455, 453, 453, 453, 453, 453, 380, 180, 381, - 381, 381, 381, 381, 381, 1178, 1178, 362, 85, 287, - 180, 288, 288, 288, 288, 288, 288, 288, 288, 289, - 128, 607, 1055, 290, 290, 290, 290, 290, 904, 492, - 128, 287, 180, 476, 476, 476, 476, 476, 476, 494, - - 1230, 401, 1150, 608, 290, 290, 290, 290, 290, 290, - 301, 302, 303, 301, 301, 301, 301, 301, 180, 106, - 180, 128, 304, 304, 304, 304, 304, 477, 478, 479, - 477, 477, 477, 477, 477, 406, 180, 407, 407, 407, - 407, 407, 407, 304, 304, 304, 304, 304, 304, 263, - 588, 264, 264, 264, 264, 264, 264, 264, 264, 406, - 590, 407, 407, 407, 407, 407, 407, 407, 407, 406, - 180, 407, 407, 407, 407, 407, 407, 407, 407, 545, - 1274, 1274, 128, 263, 180, 264, 264, 264, 264, 264, - 264, 264, 264, 480, 481, 482, 480, 480, 480, 480, - - 480, 412, 180, 1460, 180, 497, 497, 497, 497, 497, - 498, 414, 180, 414, 605, 1014, 128, 333, 180, 334, - 334, 334, 334, 334, 334, 334, 334, 412, 180, 488, - 488, 488, 488, 488, 488, 180, 606, 414, 496, 496, - 496, 496, 496, 496, 496, 496, 1315, 1315, 85, 1108, - 85, 333, 143, 335, 335, 335, 335, 335, 335, 335, - 335, 1460, 1022, 495, 495, 495, 495, 495, 495, 495, - 495, 504, 180, 505, 505, 505, 505, 505, 505, 505, - 505, 401, 128, 1204, 85, 333, 1460, 336, 336, 336, - 336, 336, 337, 334, 334, 504, 590, 506, 506, 506, - - 506, 506, 506, 506, 506, 504, 180, 507, 507, 507, - 507, 507, 508, 505, 505, 414, 1318, 1318, 85, 180, - 341, 342, 343, 341, 341, 341, 341, 341, 1321, 1321, - 1333, 1333, 344, 344, 344, 344, 344, 513, 513, 513, - 513, 513, 513, 513, 513, 514, 514, 514, 514, 514, - 515, 1355, 1355, 344, 344, 344, 344, 344, 344, 349, - 350, 351, 349, 349, 349, 349, 349, 360, 180, 1384, - 1384, 352, 352, 352, 352, 352, 1460, 362, 512, 512, - 512, 512, 512, 512, 512, 512, 551, 551, 551, 551, - 551, 552, 352, 352, 352, 352, 352, 352, 287, 180, - - 353, 353, 353, 353, 353, 353, 353, 353, 289, 360, - 180, 361, 361, 361, 361, 361, 361, 361, 361, 362, - 720, 720, 720, 363, 363, 363, 363, 363, 85, 537, - 538, 539, 540, 537, 537, 537, 537, 462, 463, 463, - 463, 463, 463, 463, 363, 363, 363, 363, 363, 363, - 380, 85, 381, 381, 381, 381, 381, 381, 381, 381, - 85, 550, 550, 550, 550, 550, 550, 550, 550, 85, - 1460, 180, 549, 549, 549, 549, 549, 549, 549, 549, - 511, 180, 1000, 128, 380, 1087, 382, 382, 382, 382, - 382, 382, 382, 382, 287, 180, 569, 569, 569, 569, - - 569, 570, 1065, 553, 401, 554, 554, 554, 554, 554, - 554, 554, 554, 1058, 1055, 1230, 1150, 128, 380, 492, - 383, 383, 383, 383, 383, 384, 381, 381, 553, 661, - 555, 555, 555, 555, 555, 555, 555, 555, 553, 180, - 556, 556, 556, 556, 556, 557, 554, 554, 725, 965, - 180, 128, 333, 1460, 334, 334, 334, 334, 334, 334, - 334, 334, 558, 661, 559, 559, 559, 559, 559, 559, - 559, 559, 558, 180, 560, 560, 560, 560, 560, 560, - 560, 560, 545, 1141, 1136, 85, 333, 672, 334, 334, - 334, 334, 334, 334, 334, 334, 558, 674, 561, 561, - - 561, 561, 561, 562, 559, 559, 568, 568, 568, 568, - 568, 568, 568, 568, 180, 180, 180, 180, 180, 85, - 287, 180, 400, 400, 400, 400, 400, 400, 400, 400, - 401, 180, 180, 180, 402, 402, 402, 402, 402, 1460, - 548, 567, 567, 567, 567, 567, 567, 567, 567, 593, - 593, 593, 593, 593, 594, 402, 402, 402, 402, 402, - 402, 412, 180, 413, 413, 413, 413, 413, 413, 413, - 413, 414, 412, 180, 180, 415, 415, 415, 415, 415, - 1022, 1460, 414, 578, 579, 580, 578, 578, 578, 578, - 578, 674, 1000, 879, 1079, 1074, 415, 415, 415, 415, - - 415, 415, 422, 423, 424, 422, 422, 422, 422, 422, - 861, 858, 1055, 1150, 425, 425, 425, 425, 425, 592, - 592, 592, 592, 592, 592, 592, 592, 595, 596, 597, - 595, 595, 595, 595, 595, 425, 425, 425, 425, 425, - 425, 432, 433, 434, 432, 432, 432, 432, 432, 360, - 180, 965, 180, 435, 435, 435, 435, 435, 1460, 511, - 591, 591, 591, 591, 591, 591, 591, 591, 664, 664, - 664, 664, 664, 665, 435, 435, 435, 435, 435, 435, - 360, 180, 436, 436, 436, 436, 436, 436, 436, 436, - 362, 380, 588, 381, 381, 381, 381, 381, 381, 381, - - 381, 504, 590, 505, 505, 505, 505, 505, 505, 505, - 505, 504, 180, 505, 505, 505, 505, 505, 505, 505, - 505, 566, 180, 180, 128, 380, 492, 381, 381, 381, - 381, 381, 381, 381, 381, 504, 661, 505, 505, 505, - 505, 505, 505, 1460, 180, 360, 180, 603, 603, 603, - 603, 603, 603, 511, 180, 511, 180, 180, 128, 462, - 463, 463, 463, 463, 463, 463, 463, 463, 607, 1121, - 615, 616, 617, 618, 615, 615, 615, 615, 527, 528, - 528, 528, 528, 528, 528, 820, 791, 993, 879, 861, - 608, 85, 462, 464, 464, 464, 464, 464, 464, 464, - - 464, 128, 412, 180, 1460, 180, 143, 858, 1055, 1053, - 128, 965, 548, 764, 548, 642, 643, 644, 642, 642, - 642, 642, 642, 613, 85, 462, 465, 465, 465, 465, - 465, 466, 463, 463, 412, 180, 641, 641, 641, 641, - 641, 641, 950, 613, 548, 613, 614, 553, 945, 554, - 554, 554, 554, 554, 554, 554, 554, 85, 472, 473, - 474, 472, 472, 472, 472, 472, 85, 180, 180, 180, - 475, 475, 475, 475, 475, 553, 511, 554, 554, 554, - 554, 554, 554, 554, 554, 677, 677, 677, 677, 677, - 678, 475, 475, 475, 475, 475, 475, 287, 180, 476, - - 476, 476, 476, 476, 476, 476, 476, 401, 484, 485, - 486, 484, 484, 484, 484, 484, 564, 180, 820, 180, - 487, 487, 487, 487, 487, 553, 566, 554, 554, 554, - 554, 554, 554, 645, 646, 647, 645, 645, 645, 645, - 645, 487, 487, 487, 487, 487, 487, 412, 180, 488, - 488, 488, 488, 488, 488, 488, 488, 414, 492, 791, - 493, 493, 493, 493, 493, 493, 493, 493, 494, 180, - 674, 871, 495, 495, 495, 495, 495, 558, 725, 559, - 559, 559, 559, 559, 559, 559, 559, 698, 698, 698, - 698, 698, 699, 495, 495, 495, 495, 495, 495, 500, - - 501, 502, 500, 500, 500, 500, 500, 1460, 180, 866, - 661, 503, 503, 503, 503, 503, 558, 566, 559, 559, - 559, 559, 559, 559, 559, 559, 731, 731, 731, 731, - 731, 732, 503, 503, 503, 503, 503, 503, 360, 180, - 510, 510, 510, 510, 510, 510, 510, 510, 511, 180, - 858, 965, 512, 512, 512, 512, 512, 558, 545, 559, - 559, 559, 559, 559, 559, 648, 649, 650, 648, 648, - 648, 648, 648, 512, 512, 512, 512, 512, 512, 527, - 528, 528, 528, 528, 528, 528, 528, 528, 564, 180, - 656, 656, 656, 656, 656, 656, 764, 672, 566, 663, - - 663, 663, 663, 663, 663, 663, 663, 674, 820, 629, - 807, 128, 527, 529, 529, 529, 529, 529, 529, 529, - 529, 1460, 590, 662, 662, 662, 662, 662, 662, 662, - 662, 666, 180, 667, 667, 667, 667, 667, 667, 667, - 667, 548, 784, 674, 128, 527, 530, 530, 530, 530, - 530, 531, 528, 528, 666, 661, 668, 668, 668, 668, - 668, 668, 668, 668, 666, 180, 669, 669, 669, 669, - 669, 670, 667, 667, 566, 858, 856, 128, 462, 463, - 463, 463, 463, 463, 463, 463, 463, 676, 676, 676, - 676, 676, 676, 676, 676, 1460, 588, 675, 675, 675, - - 675, 675, 675, 675, 675, 620, 791, 720, 720, 720, - 85, 462, 463, 463, 463, 463, 463, 463, 463, 463, - 679, 680, 681, 679, 679, 679, 679, 679, 688, 1460, - 689, 689, 689, 689, 689, 689, 689, 689, 85, 791, - 764, 573, 749, 85, 412, 180, 547, 547, 547, 547, - 547, 547, 547, 547, 548, 613, 744, 180, 549, 549, - 549, 549, 549, 688, 180, 690, 690, 690, 690, 690, - 690, 690, 690, 695, 180, 613, 820, 613, 613, 549, - 549, 549, 549, 549, 549, 564, 180, 565, 565, 565, - 565, 565, 565, 565, 565, 566, 180, 629, 708, 567, - - 567, 567, 567, 567, 688, 919, 691, 691, 691, 691, - 691, 692, 689, 689, 738, 738, 738, 738, 738, 739, - 567, 567, 567, 567, 567, 567, 574, 575, 576, 574, - 574, 574, 574, 574, 706, 85, 807, 805, 577, 577, - 577, 577, 577, 697, 697, 697, 697, 697, 697, 697, - 697, 730, 730, 730, 730, 730, 730, 730, 730, 577, - 577, 577, 577, 577, 577, 582, 583, 584, 582, 582, - 582, 582, 582, 360, 180, 688, 590, 585, 585, 585, - 585, 585, 1460, 511, 696, 696, 696, 696, 696, 696, - 696, 696, 494, 666, 764, 412, 180, 573, 585, 585, - - 585, 585, 585, 585, 492, 548, 586, 586, 586, 586, - 586, 586, 586, 586, 494, 588, 672, 589, 589, 589, - 589, 589, 589, 589, 589, 590, 861, 723, 629, 591, - 591, 591, 591, 591, 716, 717, 718, 716, 716, 716, - 716, 716, 737, 737, 737, 737, 737, 737, 737, 737, - 591, 591, 591, 591, 591, 591, 599, 600, 601, 599, - 599, 599, 599, 599, 1460, 85, 469, 708, 602, 602, - 602, 602, 602, 1460, 861, 729, 729, 729, 729, 729, - 729, 729, 729, 760, 760, 760, 760, 760, 761, 602, - 602, 602, 602, 602, 602, 360, 180, 603, 603, 603, - - 603, 603, 603, 603, 603, 511, 84, 564, 180, 706, - 84, 702, 84, 427, 494, 84, 84, 566, 84, 84, - 84, 106, 106, 106, 106, 106, 106, 106, 106, 659, - 573, 421, 84, 106, 106, 106, 106, 106, 106, 106, - 106, 106, 106, 106, 106, 604, 106, 106, 106, 106, - 106, 106, 85, 106, 84, 84, 84, 84, 84, 84, - 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, - 527, 528, 528, 528, 528, 528, 528, 528, 528, 1460, - 558, 736, 736, 736, 736, 736, 736, 736, 736, 180, - 740, 740, 740, 740, 740, 740, 740, 740, 553, 812, - - 812, 812, 128, 527, 528, 528, 528, 528, 528, 528, - 528, 528, 180, 741, 741, 741, 741, 741, 741, 741, - 741, 180, 742, 742, 742, 742, 742, 743, 740, 740, - 128, 360, 180, 1460, 180, 128, 127, 412, 180, 180, - 127, 695, 127, 695, 629, 127, 127, 728, 127, 127, - 127, 143, 143, 143, 143, 143, 143, 143, 143, 469, - 85, 128, 127, 143, 143, 143, 143, 143, 143, 143, - 143, 143, 143, 143, 143, 619, 143, 143, 143, 143, - 143, 143, 128, 143, 127, 127, 127, 127, 127, 127, - 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, - - 620, 877, 621, 621, 621, 621, 621, 621, 621, 621, - 744, 879, 745, 745, 745, 745, 745, 745, 745, 745, - 744, 180, 746, 746, 746, 746, 746, 746, 746, 746, - 725, 610, 609, 85, 620, 1460, 622, 622, 622, 622, - 622, 622, 622, 622, 744, 879, 747, 747, 747, 747, - 747, 748, 745, 745, 749, 180, 750, 750, 750, 750, - 750, 750, 750, 750, 728, 85, 504, 85, 620, 588, - 623, 623, 623, 623, 623, 624, 625, 625, 749, 791, - 751, 751, 751, 751, 751, 751, 751, 751, 749, 180, - 752, 752, 752, 752, 752, 753, 750, 750, 735, 427, - - 573, 85, 620, 421, 626, 626, 626, 621, 621, 621, - 621, 621, 759, 759, 759, 759, 759, 759, 759, 759, - 1460, 180, 758, 758, 758, 758, 758, 758, 758, 758, - 757, 543, 469, 340, 672, 85, 632, 633, 634, 632, - 632, 632, 632, 632, 861, 534, 533, 532, 635, 635, - 635, 635, 635, 772, 773, 774, 772, 772, 772, 772, - 772, 666, 523, 667, 667, 667, 667, 667, 667, 635, - 635, 635, 635, 635, 635, 637, 638, 639, 637, 637, - 637, 637, 637, 1460, 180, 522, 520, 640, 640, 640, - 640, 640, 666, 728, 667, 667, 667, 667, 667, 667, - - 667, 667, 794, 794, 794, 794, 794, 795, 640, 640, - 640, 640, 640, 640, 412, 180, 641, 641, 641, 641, - 641, 641, 641, 641, 548, 652, 653, 654, 652, 652, - 652, 652, 652, 564, 180, 519, 518, 655, 655, 655, - 655, 655, 666, 735, 667, 667, 667, 667, 667, 667, - 667, 667, 427, 709, 491, 812, 812, 812, 655, 655, - 655, 655, 655, 655, 564, 180, 656, 656, 656, 656, - 656, 656, 656, 656, 566, 492, 421, 660, 660, 660, - 660, 660, 660, 660, 660, 661, 128, 295, 406, 662, - 662, 662, 662, 662, 775, 776, 777, 775, 775, 775, - - 775, 775, 793, 793, 793, 793, 793, 793, 793, 793, - 662, 662, 662, 662, 662, 662, 672, 180, 673, 673, - 673, 673, 673, 673, 673, 673, 674, 180, 469, 340, - 675, 675, 675, 675, 675, 784, 695, 785, 785, 785, - 785, 785, 785, 785, 785, 864, 864, 864, 864, 864, - 865, 675, 675, 675, 675, 675, 675, 683, 684, 685, - 683, 683, 683, 683, 683, 1460, 180, 459, 458, 686, - 686, 686, 686, 686, 784, 735, 786, 786, 786, 786, - 786, 786, 786, 786, 457, 456, 449, 755, 180, 448, - 686, 686, 686, 686, 686, 686, 588, 757, 687, 687, - - 687, 687, 687, 687, 687, 687, 590, 360, 180, 694, - 694, 694, 694, 694, 694, 694, 694, 695, 180, 442, - 441, 696, 696, 696, 696, 696, 784, 919, 787, 787, - 787, 787, 787, 788, 785, 785, 440, 437, 427, 295, - 1460, 180, 696, 696, 696, 696, 696, 696, 84, 700, - 757, 421, 84, 295, 84, 399, 340, 84, 84, 232, - 84, 84, 84, 106, 106, 106, 106, 106, 106, 106, - 106, 701, 391, 390, 84, 106, 106, 106, 106, 106, - 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, - 106, 106, 106, 106, 85, 106, 84, 84, 84, 84, - - 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, - 84, 84, 709, 877, 710, 710, 710, 710, 710, 710, - 710, 710, 1460, 879, 792, 792, 792, 792, 792, 792, - 792, 792, 796, 797, 798, 796, 796, 796, 796, 796, - 389, 388, 387, 386, 385, 128, 709, 588, 711, 711, - 711, 711, 711, 711, 711, 711, 688, 1000, 689, 689, - 689, 689, 689, 689, 689, 689, 688, 180, 689, 689, - 689, 689, 689, 689, 689, 689, 725, 315, 376, 128, - 709, 1460, 712, 712, 712, 712, 712, 713, 714, 714, - 688, 1000, 689, 689, 689, 689, 689, 689, 360, 180, - - 804, 804, 804, 804, 804, 804, 180, 375, 695, 373, - 372, 371, 370, 128, 709, 728, 715, 715, 715, 710, - 710, 710, 710, 710, 808, 809, 810, 808, 808, 808, - 808, 808, 412, 180, 832, 832, 832, 832, 832, 832, - 360, 180, 728, 412, 180, 369, 1020, 128, 127, 700, - 695, 368, 127, 728, 127, 128, 1022, 127, 127, 367, - 127, 127, 127, 143, 143, 143, 143, 143, 143, 143, - 143, 701, 295, 354, 127, 143, 143, 143, 143, 143, - 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, - 143, 143, 143, 143, 128, 143, 127, 127, 127, 127, - - 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, - 127, 127, 620, 356, 625, 625, 625, 625, 625, 625, - 625, 625, 564, 180, 838, 838, 838, 838, 838, 838, - 180, 295, 735, 180, 705, 340, 705, 1460, 705, 735, - 705, 705, 757, 232, 705, 85, 620, 1022, 625, 625, - 625, 625, 625, 625, 625, 625, 705, 705, 705, 180, - 740, 740, 740, 740, 740, 740, 740, 740, 707, 330, - 707, 672, 707, 329, 707, 707, 328, 327, 707, 85, - 620, 1058, 625, 625, 625, 625, 625, 625, 719, 719, - 707, 707, 707, 719, 719, 719, 719, 719, 719, 719, - - 719, 180, 740, 740, 740, 740, 740, 740, 740, 740, - 326, 325, 324, 85, 620, 99, 719, 719, 719, 719, - 719, 719, 719, 719, 85, 180, 740, 740, 740, 740, - 740, 740, 839, 840, 841, 839, 839, 839, 839, 839, - 882, 882, 882, 882, 882, 883, 315, 85, 412, 180, - 727, 727, 727, 727, 727, 727, 727, 727, 728, 180, - 317, 315, 729, 729, 729, 729, 729, 744, 899, 745, - 745, 745, 745, 745, 745, 745, 745, 902, 902, 902, - 902, 902, 903, 729, 729, 729, 729, 729, 729, 564, - 180, 734, 734, 734, 734, 734, 734, 734, 734, 735, - - 180, 316, 315, 736, 736, 736, 736, 736, 744, 919, - 745, 745, 745, 745, 745, 745, 745, 745, 925, 925, - 925, 925, 925, 926, 736, 736, 736, 736, 736, 736, - 755, 180, 756, 756, 756, 756, 756, 756, 756, 756, - 757, 180, 313, 312, 758, 758, 758, 758, 758, 744, - 922, 745, 745, 745, 745, 745, 745, 842, 843, 844, - 842, 842, 842, 842, 842, 758, 758, 758, 758, 758, - 758, 767, 768, 769, 767, 767, 767, 767, 767, 564, - 180, 311, 310, 770, 770, 770, 770, 770, 749, 735, - 750, 750, 750, 750, 750, 750, 750, 750, 932, 932, - - 932, 932, 932, 933, 770, 770, 770, 770, 770, 770, - 492, 309, 771, 771, 771, 771, 771, 771, 771, 771, - 661, 779, 780, 781, 779, 779, 779, 779, 779, 755, - 180, 308, 307, 782, 782, 782, 782, 782, 749, 757, - 750, 750, 750, 750, 750, 750, 750, 750, 939, 939, - 939, 939, 939, 940, 782, 782, 782, 782, 782, 782, - 672, 99, 783, 783, 783, 783, 783, 783, 783, 783, - 674, 588, 295, 790, 790, 790, 790, 790, 790, 790, - 790, 791, 180, 299, 295, 792, 792, 792, 792, 792, - 749, 929, 750, 750, 750, 750, 750, 750, 845, 846, - - 847, 845, 845, 845, 845, 845, 792, 792, 792, 792, - 792, 792, 800, 801, 802, 800, 800, 800, 800, 800, - 286, 232, 164, 277, 803, 803, 803, 803, 803, 755, - 180, 853, 853, 853, 853, 853, 853, 276, 275, 757, - 274, 273, 272, 271, 270, 803, 803, 803, 803, 803, - 803, 360, 180, 804, 804, 804, 804, 804, 804, 804, - 804, 695, 709, 136, 714, 714, 714, 714, 714, 714, - 714, 714, 863, 863, 863, 863, 863, 863, 863, 863, - 1460, 180, 862, 862, 862, 862, 862, 862, 862, 862, - 936, 261, 258, 257, 256, 128, 709, 1460, 714, 714, - - 714, 714, 714, 714, 714, 714, 866, 1058, 867, 867, - 867, 867, 867, 867, 867, 867, 866, 180, 868, 868, - 868, 868, 868, 868, 868, 868, 958, 255, 254, 128, - 709, 877, 714, 714, 714, 714, 714, 714, 811, 811, - 866, 1065, 869, 869, 869, 869, 869, 870, 867, 867, - 871, 1460, 872, 872, 872, 872, 872, 872, 872, 872, - 252, 1065, 251, 128, 709, 1085, 811, 811, 811, 811, - 811, 811, 811, 811, 871, 1087, 873, 873, 873, 873, - 873, 873, 873, 873, 871, 1460, 874, 874, 874, 874, - 874, 875, 872, 872, 250, 1087, 249, 128, 813, 248, - - 814, 814, 814, 814, 814, 814, 814, 814, 881, 881, - 881, 881, 881, 881, 881, 881, 1460, 588, 880, 880, - 880, 880, 880, 880, 880, 880, 247, 1000, 246, 245, - 97, 85, 813, 232, 815, 815, 815, 815, 815, 815, - 815, 815, 884, 885, 886, 884, 884, 884, 884, 884, - 784, 180, 785, 785, 785, 785, 785, 785, 785, 785, - 899, 164, 164, 157, 218, 85, 813, 1020, 816, 816, - 816, 816, 816, 817, 814, 814, 784, 1022, 785, 785, - 785, 785, 785, 785, 785, 785, 784, 180, 785, 785, - 785, 785, 785, 785, 151, 216, 919, 215, 672, 85, - - 823, 824, 825, 823, 823, 823, 823, 823, 1058, 210, - 209, 127, 826, 826, 826, 826, 826, 180, 893, 893, - 893, 893, 893, 893, 893, 893, 961, 961, 961, 961, - 961, 962, 133, 826, 826, 826, 826, 826, 826, 828, - 829, 830, 828, 828, 828, 828, 828, 131, 128, 196, - 195, 831, 831, 831, 831, 831, 180, 894, 894, 894, - 894, 894, 894, 894, 894, 1003, 1003, 1003, 1003, 1003, - 1004, 194, 831, 831, 831, 831, 831, 831, 412, 180, - 832, 832, 832, 832, 832, 832, 832, 832, 728, 834, - 835, 836, 834, 834, 834, 834, 834, 193, 192, 190, - - 189, 837, 837, 837, 837, 837, 180, 895, 895, 895, - 895, 895, 896, 893, 893, 180, 893, 893, 893, 893, - 893, 893, 837, 837, 837, 837, 837, 837, 564, 180, - 838, 838, 838, 838, 838, 838, 838, 838, 735, 849, - 850, 851, 849, 849, 849, 849, 849, 184, 183, 180, - 84, 852, 852, 852, 852, 852, 901, 901, 901, 901, - 901, 901, 901, 901, 924, 924, 924, 924, 924, 924, - 924, 924, 852, 852, 852, 852, 852, 852, 755, 180, - 853, 853, 853, 853, 853, 853, 853, 853, 757, 672, - 178, 860, 860, 860, 860, 860, 860, 860, 860, 861, - - 180, 172, 93, 862, 862, 862, 862, 862, 1460, 922, - 900, 900, 900, 900, 900, 900, 900, 900, 91, 89, - 87, 360, 180, 86, 862, 862, 862, 862, 862, 862, - 877, 899, 878, 878, 878, 878, 878, 878, 878, 878, - 879, 85, 164, 157, 880, 880, 880, 880, 880, 811, - 811, 811, 811, 811, 811, 811, 811, 909, 910, 911, - 909, 909, 909, 909, 909, 880, 880, 880, 880, 880, - 880, 888, 889, 890, 888, 888, 888, 888, 888, 151, - 128, 180, 148, 891, 891, 891, 891, 891, 85, 1460, - 929, 923, 923, 923, 923, 923, 923, 923, 923, 147, - - 146, 1460, 180, 145, 891, 891, 891, 891, 891, 891, - 588, 899, 892, 892, 892, 892, 892, 892, 892, 892, - 791, 360, 180, 898, 898, 898, 898, 898, 898, 898, - 898, 899, 180, 144, 133, 900, 900, 900, 900, 900, - 813, 936, 814, 814, 814, 814, 814, 814, 931, 931, - 931, 931, 931, 931, 931, 931, 900, 900, 900, 900, - 900, 900, 904, 131, 905, 905, 905, 905, 905, 905, - 905, 905, 1460, 85, 930, 930, 930, 930, 930, 930, - 930, 930, 938, 938, 938, 938, 938, 938, 938, 938, - 128, 126, 125, 124, 123, 128, 904, 877, 906, 906, - - 906, 906, 906, 906, 906, 906, 1460, 1065, 937, 937, - 937, 937, 937, 937, 937, 937, 180, 941, 941, 941, - 941, 941, 941, 941, 941, 122, 111, 110, 109, 128, - 904, 108, 907, 907, 907, 907, 907, 908, 905, 905, - 180, 942, 942, 942, 942, 942, 942, 942, 942, 180, - 943, 943, 943, 943, 943, 944, 941, 941, 107, 104, - 93, 91, 89, 128, 813, 1085, 814, 814, 814, 814, - 814, 814, 814, 814, 945, 1087, 946, 946, 946, 946, - 946, 946, 946, 946, 945, 180, 947, 947, 947, 947, - 947, 947, 947, 947, 958, 87, 86, 85, 813, 588, - - 814, 814, 814, 814, 814, 814, 814, 814, 945, 1190, - 948, 948, 948, 948, 948, 949, 946, 946, 950, 1460, - 951, 951, 951, 951, 951, 951, 951, 951, 85, 1190, - 1460, 85, 913, 914, 915, 913, 913, 913, 913, 913, - 916, 180, 1460, 1460, 917, 917, 917, 917, 917, 950, - 1103, 952, 952, 952, 952, 952, 952, 952, 952, 1025, - 1025, 1025, 1025, 1025, 1026, 917, 917, 917, 917, 917, - 917, 412, 180, 921, 921, 921, 921, 921, 921, 921, - 921, 922, 180, 1460, 1460, 923, 923, 923, 923, 923, - 950, 1103, 953, 953, 953, 953, 953, 954, 951, 951, - - 1061, 1061, 1061, 1061, 1061, 1062, 923, 923, 923, 923, - 923, 923, 564, 180, 928, 928, 928, 928, 928, 928, - 928, 928, 929, 1460, 1460, 1460, 930, 930, 930, 930, - 930, 960, 960, 960, 960, 960, 960, 960, 960, 978, - 979, 980, 978, 978, 978, 978, 978, 930, 930, 930, - 930, 930, 930, 755, 180, 935, 935, 935, 935, 935, - 935, 935, 935, 936, 1460, 1460, 1460, 937, 937, 937, - 937, 937, 1460, 1460, 959, 959, 959, 959, 959, 959, - 959, 959, 1068, 1068, 1068, 1068, 1068, 1069, 937, 937, - 937, 937, 937, 937, 956, 180, 957, 957, 957, 957, - - 957, 957, 957, 957, 958, 1460, 1460, 1460, 959, 959, - 959, 959, 959, 866, 1460, 867, 867, 867, 867, 867, - 867, 867, 867, 1090, 1090, 1090, 1090, 1090, 1091, 959, - 959, 959, 959, 959, 959, 968, 969, 970, 968, 968, - 968, 968, 968, 412, 180, 1460, 1460, 971, 971, 971, - 971, 971, 866, 922, 867, 867, 867, 867, 867, 867, - 867, 867, 1106, 1106, 1106, 1106, 1106, 1107, 971, 971, - 971, 971, 971, 971, 973, 974, 975, 973, 973, 973, - 973, 973, 1460, 180, 1460, 1460, 976, 976, 976, 976, - 976, 866, 922, 867, 867, 867, 867, 867, 867, 981, - - 982, 983, 981, 981, 981, 981, 981, 976, 976, 976, - 976, 976, 976, 672, 1460, 977, 977, 977, 977, 977, - 977, 977, 977, 861, 871, 672, 872, 872, 872, 872, - 872, 872, 872, 872, 871, 1233, 872, 872, 872, 872, - 872, 872, 872, 872, 871, 1460, 872, 872, 872, 872, - 872, 872, 984, 985, 986, 984, 984, 984, 984, 984, - 988, 989, 990, 988, 988, 988, 988, 988, 564, 180, - 1460, 1460, 991, 991, 991, 991, 991, 993, 929, 994, - 994, 994, 994, 994, 994, 994, 994, 1460, 1460, 1460, - 1460, 180, 1460, 991, 991, 991, 991, 991, 991, 877, - - 929, 992, 992, 992, 992, 992, 992, 992, 992, 879, - 993, 1460, 995, 995, 995, 995, 995, 995, 995, 995, - 993, 1233, 996, 996, 996, 996, 996, 997, 994, 994, - 588, 877, 999, 999, 999, 999, 999, 999, 999, 999, - 1000, 1240, 1460, 1460, 1001, 1001, 1001, 1001, 1001, 1002, - 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1024, 1024, 1024, - 1024, 1024, 1024, 1024, 1024, 1001, 1001, 1001, 1001, 1001, - 1001, 1460, 1460, 1001, 1001, 1001, 1001, 1001, 1001, 1001, - 1001, 180, 893, 893, 893, 893, 893, 893, 893, 893, - 180, 893, 893, 893, 893, 893, 893, 893, 893, 1006, - - 1007, 1008, 1006, 1006, 1006, 1006, 1006, 1460, 1460, 1460, - 1460, 1009, 1009, 1009, 1009, 1009, 360, 180, 1010, 1010, - 1010, 1010, 1010, 1010, 1460, 1460, 899, 1460, 1460, 1460, - 1460, 1460, 1009, 1009, 1009, 1009, 1009, 1009, 360, 180, - 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 899, 1011, - 1012, 1013, 1011, 1011, 1011, 1011, 1011, 1460, 904, 1460, - 905, 905, 905, 905, 905, 905, 1460, 1240, 1023, 1023, - 1023, 1023, 1023, 1023, 1023, 1023, 1460, 1460, 1460, 1460, - 128, 904, 1460, 905, 905, 905, 905, 905, 905, 905, - 905, 128, 412, 180, 1032, 1032, 1032, 1032, 1032, 1032, - - 1460, 1085, 922, 564, 180, 1035, 1035, 1035, 1035, 1035, - 1035, 1247, 1460, 929, 128, 904, 1460, 905, 905, 905, - 905, 905, 905, 905, 905, 755, 180, 1460, 180, 956, - 180, 1460, 1460, 1460, 1460, 936, 1460, 936, 1460, 958, - 755, 180, 1038, 1038, 1038, 1038, 1038, 1038, 128, 1014, - 936, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 180, - 941, 941, 941, 941, 941, 941, 941, 941, 180, 941, - 941, 941, 941, 941, 941, 941, 941, 1460, 1460, 1460, - 1460, 1460, 85, 1014, 1460, 1016, 1016, 1016, 1016, 1016, - 1016, 1016, 1016, 180, 941, 941, 941, 941, 941, 941, - - 1039, 1040, 1041, 1039, 1039, 1039, 1039, 1039, 945, 1460, - 946, 946, 946, 946, 946, 946, 85, 1014, 1460, 1017, - 1017, 1017, 1017, 1017, 1018, 1015, 1015, 945, 1247, 946, - 946, 946, 946, 946, 946, 946, 946, 945, 1267, 946, - 946, 946, 946, 946, 946, 946, 946, 1460, 1269, 1460, - 85, 1020, 1460, 1021, 1021, 1021, 1021, 1021, 1021, 1021, - 1021, 1022, 1269, 1460, 1460, 1023, 1023, 1023, 1023, 1023, - 1042, 1043, 1044, 1042, 1042, 1042, 1042, 1042, 950, 1460, - 951, 951, 951, 951, 951, 951, 1023, 1023, 1023, 1023, - 1023, 1023, 412, 180, 1032, 1032, 1032, 1032, 1032, 1032, - - 1032, 1032, 922, 564, 180, 1035, 1035, 1035, 1035, 1035, - 1035, 1035, 1035, 929, 755, 180, 1038, 1038, 1038, 1038, - 1038, 1038, 1038, 1038, 936, 950, 588, 951, 951, 951, - 951, 951, 951, 951, 951, 950, 1190, 951, 951, 951, - 951, 951, 951, 951, 951, 1045, 1046, 1047, 1045, 1045, - 1045, 1045, 1045, 1460, 180, 1060, 1060, 1060, 1060, 1060, - 1060, 1060, 1060, 958, 956, 180, 1050, 1050, 1050, 1050, - 1050, 1050, 1050, 1050, 958, 956, 180, 1050, 1050, 1050, - 1050, 1050, 1050, 1460, 1460, 958, 672, 1305, 1057, 1057, - 1057, 1057, 1057, 1057, 1057, 1057, 1058, 1307, 1460, 1460, - - 1059, 1059, 1059, 1059, 1059, 1460, 1460, 1059, 1059, 1059, - 1059, 1059, 1059, 1059, 1059, 1460, 1307, 1460, 360, 180, - 1460, 1059, 1059, 1059, 1059, 1059, 1059, 877, 899, 1064, - 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1065, 1460, 1460, - 1460, 1066, 1066, 1066, 1066, 1066, 1067, 1067, 1067, 1067, - 1067, 1067, 1067, 1067, 1070, 1070, 1070, 1070, 1070, 1070, - 1070, 1070, 1066, 1066, 1066, 1066, 1066, 1066, 1460, 1460, - 1066, 1066, 1066, 1066, 1066, 1066, 1066, 1066, 1071, 1071, - 1071, 1071, 1071, 1071, 1071, 1071, 1072, 1072, 1072, 1072, - 1072, 1073, 1070, 1070, 1074, 672, 1075, 1075, 1075, 1075, - - 1075, 1075, 1075, 1075, 1074, 1233, 1076, 1076, 1076, 1076, - 1076, 1076, 1076, 1076, 1074, 877, 1077, 1077, 1077, 1077, - 1077, 1078, 1075, 1075, 1079, 1240, 1080, 1080, 1080, 1080, - 1080, 1080, 1080, 1080, 1079, 1085, 1081, 1081, 1081, 1081, - 1081, 1081, 1081, 1081, 1079, 1247, 1082, 1082, 1082, 1082, - 1082, 1083, 1080, 1080, 1085, 1267, 1086, 1086, 1086, 1086, - 1086, 1086, 1086, 1086, 1087, 1269, 1460, 1460, 1088, 1088, - 1088, 1088, 1088, 1089, 1089, 1089, 1089, 1089, 1089, 1089, - 1089, 1092, 1093, 1094, 1092, 1092, 1092, 1092, 1092, 1088, - 1088, 1088, 1088, 1088, 1088, 1460, 588, 1088, 1088, 1088, - - 1088, 1088, 1088, 1088, 1088, 993, 1338, 994, 994, 994, - 994, 994, 994, 994, 994, 993, 1460, 994, 994, 994, - 994, 994, 994, 994, 994, 993, 1338, 994, 994, 994, - 994, 994, 994, 1096, 1097, 1098, 1096, 1096, 1096, 1096, - 1096, 1460, 1460, 1460, 1460, 1099, 1099, 1099, 1099, 1099, - 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1116, 1117, - 1118, 1116, 1116, 1116, 1116, 1116, 1099, 1099, 1099, 1099, - 1099, 1099, 588, 1460, 1100, 1100, 1100, 1100, 1100, 1100, - 1100, 1100, 1000, 360, 180, 1102, 1102, 1102, 1102, 1102, - 1102, 1102, 1102, 1103, 1460, 1460, 1460, 1104, 1104, 1104, - - 1104, 1104, 1460, 1305, 1104, 1104, 1104, 1104, 1104, 1104, - 1104, 1104, 1460, 1307, 1460, 412, 180, 1460, 1104, 1104, - 1104, 1104, 1104, 1104, 1108, 922, 1109, 1109, 1109, 1109, - 1109, 1109, 1109, 1109, 1460, 1460, 588, 1113, 1114, 1115, - 1113, 1113, 1113, 1113, 1113, 1014, 1338, 1015, 1015, 1015, - 1015, 1015, 1015, 1460, 1460, 1460, 1460, 128, 1108, 1460, - 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 85, 564, - 180, 755, 180, 1460, 1460, 1460, 1460, 1460, 85, 929, - 1460, 936, 180, 1132, 1132, 1132, 1132, 1132, 1132, 1132, - 1132, 128, 1108, 1460, 1111, 1111, 1111, 1111, 1111, 1112, - - 1109, 1109, 180, 1133, 1133, 1133, 1133, 1133, 1133, 1133, - 1133, 180, 1134, 1134, 1134, 1134, 1134, 1135, 1132, 1132, - 1460, 1460, 1460, 1460, 1460, 128, 1014, 1460, 1015, 1015, - 1015, 1015, 1015, 1015, 1015, 1015, 1136, 1460, 1137, 1137, - 1137, 1137, 1137, 1137, 1137, 1137, 1136, 1460, 1138, 1138, - 1138, 1138, 1138, 1138, 1138, 1138, 1460, 1460, 1460, 85, - 1014, 1460, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, - 1136, 1460, 1139, 1139, 1139, 1139, 1139, 1140, 1137, 1137, - 1141, 1460, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, - 1460, 1460, 1460, 85, 1020, 1460, 1122, 1122, 1122, 1122, - - 1122, 1122, 1122, 1122, 1022, 1141, 1460, 1143, 1143, 1143, - 1143, 1143, 1143, 1143, 1143, 1141, 1460, 1144, 1144, 1144, - 1144, 1144, 1145, 1142, 1142, 956, 180, 1070, 1070, 1070, - 1070, 1070, 1070, 1070, 1070, 958, 1153, 1154, 1155, 1153, - 1153, 1153, 1153, 1153, 1460, 1460, 1460, 1460, 1156, 1156, - 1156, 1156, 1156, 1070, 1070, 1070, 1070, 1070, 1070, 1070, - 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1460, 1460, 1156, - 1156, 1156, 1156, 1156, 1156, 1158, 1159, 1160, 1158, 1158, - 1158, 1158, 1158, 1460, 1460, 1460, 1460, 1161, 1161, 1161, - 1161, 1161, 1169, 1170, 1171, 1169, 1169, 1169, 1169, 1169, - - 1074, 1460, 1075, 1075, 1075, 1075, 1075, 1075, 1161, 1161, - 1161, 1161, 1161, 1161, 672, 1460, 1162, 1162, 1162, 1162, - 1162, 1162, 1162, 1162, 1058, 1164, 1165, 1166, 1164, 1164, - 1164, 1164, 1164, 360, 180, 1460, 1460, 1167, 1167, 1167, - 1167, 1167, 1074, 1103, 1075, 1075, 1075, 1075, 1075, 1075, - 1075, 1075, 1193, 1193, 1193, 1193, 1193, 1194, 1167, 1167, - 1167, 1167, 1167, 1167, 877, 1460, 1168, 1168, 1168, 1168, - 1168, 1168, 1168, 1168, 1065, 1074, 1460, 1075, 1075, 1075, - 1075, 1075, 1075, 1075, 1075, 1172, 1173, 1174, 1172, 1172, - 1172, 1172, 1172, 1079, 1460, 1080, 1080, 1080, 1080, 1080, - - 1080, 1080, 1080, 1079, 1460, 1080, 1080, 1080, 1080, 1080, - 1080, 1080, 1080, 1079, 1460, 1080, 1080, 1080, 1080, 1080, - 1080, 1175, 1176, 1177, 1175, 1175, 1175, 1175, 1175, 1179, - 1180, 1181, 1179, 1179, 1179, 1179, 1179, 1460, 1460, 1460, - 1460, 1182, 1182, 1182, 1182, 1182, 1184, 1184, 1184, 1184, - 1184, 1184, 1184, 1184, 1185, 1185, 1185, 1185, 1185, 1185, - 1185, 1185, 1182, 1182, 1182, 1182, 1182, 1182, 1085, 1460, - 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1087, 1186, - 1186, 1186, 1186, 1186, 1187, 1184, 1184, 588, 1460, 1189, - 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1190, 1460, 1460, - - 1460, 1191, 1191, 1191, 1191, 1191, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1460, 1460, 1460, 1460, 1460, 1460, - 180, 1460, 1191, 1191, 1191, 1191, 1191, 1191, 1460, 1103, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 360, 180, - 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1103, 360, - 180, 1197, 1197, 1197, 1197, 1197, 1197, 1460, 1460, 1103, - 1198, 1199, 1200, 1198, 1198, 1198, 1198, 1198, 1460, 1108, - 1460, 1109, 1109, 1109, 1109, 1109, 1109, 1201, 1201, 1201, - 1201, 1201, 1201, 1201, 1201, 1236, 1236, 1236, 1236, 1236, - 1237, 128, 1108, 1460, 1109, 1109, 1109, 1109, 1109, 1109, - - 1109, 1109, 128, 1460, 1460, 1460, 1460, 1460, 85, 1113, - 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1202, 1202, 1202, - 1202, 1202, 1203, 1201, 1201, 128, 1108, 1460, 1109, 1109, - 1109, 1109, 1109, 1109, 1109, 1109, 1460, 1460, 1460, 1136, - 85, 1137, 1137, 1137, 1137, 1137, 1137, 1204, 85, 1205, - 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1460, 1204, 128, - 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1204, 1460, - 1207, 1207, 1207, 1207, 1207, 1208, 1205, 1205, 180, 1132, - 1132, 1132, 1132, 1132, 1132, 1132, 1132, 180, 1132, 1132, - 1132, 1132, 1132, 1132, 1132, 1132, 180, 1132, 1132, 1132, - - 1132, 1132, 1132, 1216, 1217, 1218, 1216, 1216, 1216, 1216, - 1216, 1136, 1460, 1137, 1137, 1137, 1137, 1137, 1137, 1137, - 1137, 1136, 1460, 1137, 1137, 1137, 1137, 1137, 1137, 1137, - 1137, 1219, 1220, 1221, 1219, 1219, 1219, 1219, 1219, 1141, - 1460, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1141, - 1460, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1141, - 1460, 1142, 1142, 1142, 1142, 1142, 1142, 1224, 1225, 1226, - 1224, 1224, 1224, 1224, 1224, 1227, 1460, 1460, 1460, 1228, - 1228, 1228, 1228, 1228, 1235, 1235, 1235, 1235, 1235, 1235, - 1235, 1235, 1242, 1242, 1242, 1242, 1242, 1242, 1242, 1242, - - 1228, 1228, 1228, 1228, 1228, 1228, 672, 1460, 1232, 1232, - 1232, 1232, 1232, 1232, 1232, 1232, 1233, 1460, 1460, 1460, - 1234, 1234, 1234, 1234, 1234, 1460, 1460, 1234, 1234, 1234, - 1234, 1234, 1234, 1234, 1234, 1243, 1243, 1243, 1243, 1243, - 1244, 1234, 1234, 1234, 1234, 1234, 1234, 877, 1460, 1239, - 1239, 1239, 1239, 1239, 1239, 1239, 1239, 1240, 1460, 1460, - 1460, 1241, 1241, 1241, 1241, 1241, 1460, 1460, 1241, 1241, - 1241, 1241, 1241, 1241, 1241, 1241, 1250, 1250, 1250, 1250, - 1250, 1251, 1241, 1241, 1241, 1241, 1241, 1241, 1085, 1460, - 1246, 1246, 1246, 1246, 1246, 1246, 1246, 1246, 1247, 1460, - - 1460, 1460, 1248, 1248, 1248, 1248, 1248, 1249, 1249, 1249, - 1249, 1249, 1249, 1249, 1249, 1252, 1252, 1252, 1252, 1252, - 1252, 1252, 1252, 1248, 1248, 1248, 1248, 1248, 1248, 1460, - 1460, 1248, 1248, 1248, 1248, 1248, 1248, 1248, 1248, 1253, - 1253, 1253, 1253, 1253, 1253, 1253, 1253, 1254, 1254, 1254, - 1254, 1254, 1255, 1252, 1252, 1256, 1460, 1257, 1257, 1257, - 1257, 1257, 1257, 1257, 1257, 1256, 1460, 1258, 1258, 1258, - 1258, 1258, 1258, 1258, 1258, 1256, 1460, 1259, 1259, 1259, - 1259, 1259, 1260, 1257, 1257, 1261, 1460, 1262, 1262, 1262, - 1262, 1262, 1262, 1262, 1262, 1261, 1460, 1263, 1263, 1263, - - 1263, 1263, 1263, 1263, 1263, 1261, 1460, 1264, 1264, 1264, - 1264, 1264, 1265, 1262, 1262, 1267, 1460, 1268, 1268, 1268, - 1268, 1268, 1268, 1268, 1268, 1269, 1460, 1460, 1460, 1270, - 1270, 1270, 1270, 1270, 1271, 1271, 1271, 1271, 1271, 1271, - 1271, 1271, 1272, 1272, 1272, 1272, 1272, 1273, 1460, 1460, - 1270, 1270, 1270, 1270, 1270, 1270, 1460, 1460, 1270, 1270, - 1270, 1270, 1270, 1270, 1270, 1270, 1184, 1184, 1184, 1184, - 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, - 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1275, 1276, - 1277, 1275, 1275, 1275, 1275, 1275, 360, 180, 1460, 1460, - - 1278, 1278, 1278, 1278, 1278, 1460, 1103, 1282, 1282, 1282, - 1282, 1282, 1282, 1282, 1282, 1310, 1310, 1310, 1310, 1310, - 1311, 1278, 1278, 1278, 1278, 1278, 1278, 588, 1460, 1279, - 1279, 1279, 1279, 1279, 1279, 1279, 1279, 1190, 128, 1198, - 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1283, 1283, 1283, - 1283, 1283, 1284, 1282, 1282, 1201, 1201, 1201, 1201, 1201, - 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1204, - 128, 1205, 1205, 1205, 1205, 1205, 1205, 1460, 128, 1252, - 1252, 1252, 1252, 1252, 1252, 1256, 85, 1257, 1257, 1257, - 1257, 1257, 1257, 1460, 85, 1285, 1286, 1287, 1285, 1285, - - 1285, 1285, 1285, 1204, 1460, 1205, 1205, 1205, 1205, 1205, - 1205, 1205, 1205, 1204, 1460, 1205, 1205, 1205, 1205, 1205, - 1205, 1205, 1205, 180, 1294, 1294, 1294, 1294, 1294, 1294, - 1294, 1294, 180, 1295, 1295, 1295, 1295, 1295, 1295, 1295, - 1295, 180, 1296, 1296, 1296, 1296, 1296, 1297, 1294, 1294, - 1298, 1460, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, - 1298, 1460, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, - 1298, 1460, 1301, 1301, 1301, 1301, 1301, 1302, 1299, 1299, - 1305, 1460, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306, - 1307, 1460, 1460, 1460, 1308, 1308, 1308, 1308, 1308, 1309, - - 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1252, 1252, 1252, - 1252, 1252, 1252, 1252, 1252, 1308, 1308, 1308, 1308, 1308, - 1308, 1460, 1460, 1308, 1308, 1308, 1308, 1308, 1308, 1308, - 1308, 672, 1460, 1317, 1317, 1317, 1317, 1317, 1317, 1317, - 1317, 1233, 877, 1460, 1320, 1320, 1320, 1320, 1320, 1320, - 1320, 1320, 1240, 1085, 1460, 1323, 1323, 1323, 1323, 1323, - 1323, 1323, 1323, 1247, 1252, 1252, 1252, 1252, 1252, 1252, - 1252, 1252, 1324, 1325, 1326, 1324, 1324, 1324, 1324, 1324, - 1256, 1460, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, - 1256, 1460, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, - - 1327, 1328, 1329, 1327, 1327, 1327, 1327, 1327, 1261, 1460, - 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1261, 1460, - 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1262, 1261, 1460, - 1262, 1262, 1262, 1262, 1262, 1262, 1330, 1331, 1332, 1330, - 1330, 1330, 1330, 1330, 1267, 1460, 1335, 1335, 1335, 1335, - 1335, 1335, 1335, 1335, 1269, 588, 1460, 1337, 1337, 1337, - 1337, 1337, 1337, 1337, 1337, 1338, 1460, 1460, 1460, 1339, - 1339, 1339, 1339, 1339, 1340, 1340, 1340, 1340, 1340, 1340, - 1340, 1340, 1341, 1341, 1341, 1341, 1341, 1342, 1460, 1460, - 1339, 1339, 1339, 1339, 1339, 1339, 1460, 1460, 1339, 1339, - - 1339, 1339, 1339, 1339, 1339, 1339, 1282, 1282, 1282, 1282, - 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, 1282, - 1344, 1460, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, - 180, 1294, 1294, 1294, 1294, 1294, 1294, 128, 1368, 1368, - 1368, 1368, 1368, 1368, 1344, 128, 1346, 1346, 1346, 1346, - 1346, 1346, 1346, 1346, 1344, 1460, 1347, 1347, 1347, 1347, - 1347, 1348, 1345, 1345, 180, 1294, 1294, 1294, 1294, 1294, - 1294, 1294, 1294, 180, 1294, 1294, 1294, 1294, 1294, 1294, - 1294, 1294, 1349, 1350, 1351, 1349, 1349, 1349, 1349, 1349, - 1298, 1460, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, - - 1298, 1460, 1299, 1299, 1299, 1299, 1299, 1299, 1299, 1299, - 1298, 1460, 1299, 1299, 1299, 1299, 1299, 1299, 1352, 1353, - 1354, 1352, 1352, 1352, 1352, 1352, 1305, 1460, 1358, 1358, - 1358, 1358, 1358, 1358, 1358, 1358, 1307, 1368, 1368, 1368, - 1368, 1368, 1368, 1368, 1368, 1369, 1369, 1369, 1369, 1369, - 1369, 1369, 1369, 1370, 1370, 1370, 1370, 1370, 1371, 1368, - 1368, 1372, 1460, 1373, 1373, 1373, 1373, 1373, 1373, 1373, - 1373, 1372, 1460, 1374, 1374, 1374, 1374, 1374, 1374, 1374, - 1374, 1372, 1460, 1375, 1375, 1375, 1375, 1375, 1376, 1373, - 1373, 1377, 1460, 1378, 1378, 1378, 1378, 1378, 1378, 1378, - - 1378, 1377, 1460, 1379, 1379, 1379, 1379, 1379, 1379, 1379, - 1379, 1377, 1460, 1380, 1380, 1380, 1380, 1380, 1381, 1378, - 1378, 588, 1460, 1386, 1386, 1386, 1386, 1386, 1386, 1386, - 1386, 1338, 1388, 1389, 1390, 1388, 1388, 1388, 1388, 1388, - 1344, 1460, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, - 1344, 1460, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, - 1344, 1460, 1345, 1345, 1345, 1345, 1345, 1345, 180, 1391, - 1391, 1391, 1391, 1391, 1391, 1391, 1391, 180, 1392, 1392, - 1392, 1392, 1392, 1392, 1392, 1392, 180, 1393, 1393, 1393, - 1393, 1393, 1394, 1391, 1391, 1395, 1460, 1396, 1396, 1396, - - 1396, 1396, 1396, 1396, 1396, 1395, 1460, 1397, 1397, 1397, - 1397, 1397, 1397, 1397, 1397, 1395, 1460, 1398, 1398, 1398, - 1398, 1398, 1399, 1396, 1396, 1368, 1368, 1368, 1368, 1368, - 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, - 1368, 1407, 1408, 1409, 1407, 1407, 1407, 1407, 1407, 1372, - 1460, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1372, - 1460, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1372, - 1460, 1373, 1373, 1373, 1373, 1373, 1373, 1410, 1411, 1412, - 1410, 1410, 1410, 1410, 1410, 1377, 1460, 1378, 1378, 1378, - 1378, 1378, 1378, 1378, 1378, 1377, 1460, 1378, 1378, 1378, - - 1378, 1378, 1378, 1378, 1378, 1377, 1460, 1378, 1378, 1378, - 1378, 1378, 1378, 180, 1416, 1416, 1416, 1416, 1416, 1416, - 1416, 1416, 180, 1417, 1417, 1417, 1417, 1417, 1417, 1417, - 1417, 180, 1418, 1418, 1418, 1418, 1418, 1419, 1416, 1416, - 180, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 180, - 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 180, 1391, - 1391, 1391, 1391, 1391, 1391, 1420, 1421, 1422, 1420, 1420, - 1420, 1420, 1420, 1395, 1460, 1396, 1396, 1396, 1396, 1396, - 1396, 1396, 1396, 1395, 1460, 1396, 1396, 1396, 1396, 1396, - 1396, 1396, 1396, 1395, 1460, 1396, 1396, 1396, 1396, 1396, - - 1396, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1430, - 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1431, 1431, 1431, - 1431, 1431, 1432, 1429, 1429, 1433, 1460, 1434, 1434, 1434, - 1434, 1434, 1434, 1434, 1434, 1433, 1460, 1435, 1435, 1435, - 1435, 1435, 1435, 1435, 1435, 1433, 1460, 1436, 1436, 1436, - 1436, 1436, 1437, 1434, 1434, 180, 1416, 1416, 1416, 1416, - 1416, 1416, 1416, 1416, 180, 1416, 1416, 1416, 1416, 1416, - 1416, 1416, 1416, 180, 1416, 1416, 1416, 1416, 1416, 1416, - 1440, 1460, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, - 1440, 1460, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, - - 1440, 1460, 1443, 1443, 1443, 1443, 1443, 1444, 1441, 1441, - 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, - 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, 1429, - 1429, 1429, 1445, 1446, 1447, 1445, 1445, 1445, 1445, 1445, - 1433, 1460, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, - 1433, 1460, 1434, 1434, 1434, 1434, 1434, 1434, 1434, 1434, - 1433, 1460, 1434, 1434, 1434, 1434, 1434, 1434, 1449, 1450, - 1451, 1449, 1449, 1449, 1449, 1449, 1440, 1460, 1441, 1441, - 1441, 1441, 1441, 1441, 1441, 1441, 1440, 1460, 1441, 1441, - 1441, 1441, 1441, 1441, 1441, 1441, 1440, 1460, 1441, 1441, - - 1441, 1441, 1441, 1441, 1452, 1452, 1452, 1452, 1452, 1452, - 1452, 1452, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, - 1454, 1454, 1454, 1454, 1454, 1455, 1452, 1452, 1456, 1456, - 1456, 1456, 1456, 1456, 1456, 1456, 1457, 1457, 1457, 1457, - 1457, 1457, 1457, 1457, 1458, 1458, 1458, 1458, 1458, 1459, - 1456, 1456, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, - 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, - 1452, 1452, 1452, 1452, 1456, 1456, 1456, 1456, 1456, 1456, - 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, - 1456, 1456, 1456, 1456, 1456, 1456, 69, 69, 69, 69, - - 69, 69, 69, 69, 69, 69, 69, 21, 21, 21, - 21, 21, 21, 21, 21, 21, 21, 21, 77, 77, - 77, 77, 77, 77, 77, 77, 77, 77, 77, 84, - 1460, 1460, 1460, 84, 84, 84, 1460, 84, 84, 84, - 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, - 88, 90, 1460, 1460, 1460, 90, 90, 90, 1460, 90, - 90, 90, 92, 1460, 1460, 1460, 92, 92, 92, 1460, - 92, 92, 92, 94, 1460, 94, 1460, 94, 94, 94, - 1460, 94, 94, 94, 127, 1460, 1460, 1460, 127, 127, - 127, 1460, 127, 127, 127, 130, 1460, 1460, 1460, 130, - - 130, 130, 1460, 130, 130, 130, 132, 1460, 1460, 1460, - 132, 132, 132, 1460, 132, 132, 132, 134, 1460, 134, - 1460, 134, 134, 134, 1460, 134, 134, 134, 152, 1460, - 152, 1460, 152, 152, 152, 1460, 152, 152, 152, 156, - 1460, 156, 156, 156, 156, 156, 1460, 1460, 156, 156, - 162, 162, 163, 1460, 163, 1460, 163, 163, 163, 163, - 163, 163, 163, 165, 165, 165, 165, 165, 165, 165, - 165, 165, 165, 165, 170, 170, 170, 170, 170, 170, - 170, 170, 170, 170, 170, 95, 1460, 95, 1460, 95, - 95, 95, 1460, 95, 95, 95, 177, 177, 1460, 1460, - - 177, 181, 181, 1460, 1460, 1460, 181, 153, 1460, 153, - 1460, 153, 153, 153, 1460, 153, 153, 153, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, 166, 231, - 231, 1460, 1460, 231, 242, 242, 242, 1460, 1460, 242, - 284, 284, 1460, 1460, 284, 285, 285, 1460, 1460, 285, - 294, 294, 1460, 1460, 294, 300, 300, 300, 1460, 1460, - 300, 338, 338, 1460, 1460, 338, 339, 339, 1460, 1460, - 339, 348, 348, 348, 348, 1460, 1460, 348, 354, 354, - 1460, 1460, 354, 355, 355, 1460, 1460, 355, 358, 1460, - 1460, 1460, 358, 359, 359, 359, 1460, 1460, 359, 397, - - 397, 1460, 1460, 397, 398, 398, 1460, 1460, 398, 411, - 411, 411, 1460, 1460, 411, 419, 419, 1460, 1460, 419, - 420, 420, 1460, 1460, 420, 426, 426, 1460, 1460, 426, - 431, 431, 431, 431, 1460, 1460, 431, 467, 467, 1460, - 1460, 467, 468, 468, 1460, 1460, 468, 470, 470, 1460, - 1460, 1460, 470, 471, 471, 471, 471, 1460, 1460, 471, - 483, 483, 483, 483, 1460, 1460, 483, 489, 489, 1460, - 1460, 489, 490, 490, 1460, 1460, 490, 499, 499, 1460, - 1460, 499, 509, 509, 509, 1460, 1460, 509, 541, 541, - 1460, 1460, 541, 542, 542, 1460, 1460, 542, 544, 544, - - 544, 1460, 1460, 544, 546, 546, 546, 1460, 1460, 546, - 563, 563, 563, 1460, 1460, 563, 571, 571, 1460, 1460, - 571, 572, 572, 1460, 1460, 572, 581, 1460, 581, 581, - 1460, 1460, 581, 587, 587, 1460, 1460, 587, 598, 598, - 598, 598, 1460, 1460, 598, 88, 88, 88, 88, 88, - 88, 88, 88, 88, 88, 88, 127, 1460, 1460, 1460, - 127, 127, 127, 1460, 127, 127, 127, 627, 627, 1460, - 1460, 627, 628, 628, 1460, 1460, 628, 630, 630, 1460, - 1460, 1460, 630, 631, 631, 631, 1460, 1460, 631, 636, - 636, 636, 636, 1460, 1460, 636, 651, 651, 651, 651, - - 1460, 1460, 651, 657, 657, 1460, 1460, 657, 658, 658, - 1460, 1460, 658, 671, 671, 1460, 1460, 671, 682, 1460, - 682, 682, 1460, 1460, 682, 693, 693, 693, 1460, 1460, - 693, 88, 88, 88, 88, 88, 88, 88, 88, 88, - 88, 88, 84, 1460, 1460, 1460, 84, 84, 84, 1460, - 84, 84, 84, 705, 1460, 1460, 1460, 705, 705, 705, - 1460, 705, 705, 705, 707, 1460, 1460, 1460, 707, 707, - 707, 1460, 707, 707, 707, 127, 1460, 1460, 1460, 127, - 127, 127, 1460, 127, 127, 127, 721, 721, 1460, 1460, - 721, 722, 722, 1460, 1460, 722, 724, 724, 724, 1460, - - 1460, 724, 726, 726, 726, 1460, 1460, 726, 733, 733, - 733, 1460, 1460, 733, 754, 754, 754, 1460, 1460, 754, - 762, 762, 1460, 1460, 762, 763, 763, 1460, 1460, 763, - 765, 1460, 1460, 1460, 765, 766, 1460, 766, 766, 1460, - 1460, 766, 778, 1460, 778, 778, 1460, 1460, 778, 789, - 789, 1460, 1460, 789, 799, 799, 799, 799, 1460, 1460, - 799, 806, 806, 806, 806, 806, 806, 806, 806, 806, - 806, 806, 84, 1460, 1460, 1460, 84, 84, 84, 1460, - 84, 84, 84, 705, 1460, 1460, 1460, 705, 705, 705, - 1460, 705, 705, 705, 707, 1460, 1460, 1460, 707, 707, - - 707, 1460, 707, 707, 707, 127, 1460, 1460, 1460, 127, - 127, 127, 1460, 127, 127, 127, 818, 818, 1460, 1460, - 818, 819, 819, 1460, 1460, 819, 821, 821, 1460, 1460, - 1460, 821, 822, 822, 822, 1460, 1460, 822, 827, 827, - 827, 827, 1460, 1460, 827, 833, 833, 833, 833, 1460, - 1460, 833, 848, 848, 848, 848, 1460, 1460, 848, 854, - 854, 1460, 1460, 854, 855, 855, 1460, 1460, 855, 857, - 857, 1460, 1460, 857, 859, 859, 1460, 1460, 859, 876, - 876, 1460, 1460, 876, 887, 1460, 887, 887, 1460, 1460, - 887, 897, 897, 897, 1460, 1460, 897, 806, 806, 806, - - 806, 806, 806, 806, 806, 806, 806, 806, 127, 1460, - 1460, 1460, 127, 127, 127, 1460, 127, 127, 127, 84, - 1460, 1460, 1460, 84, 84, 84, 1460, 84, 84, 84, - 912, 912, 1460, 1460, 912, 918, 918, 918, 1460, 1460, - 918, 920, 920, 920, 1460, 1460, 920, 927, 927, 927, - 1460, 1460, 927, 934, 934, 934, 1460, 1460, 934, 955, - 955, 955, 1460, 1460, 955, 963, 963, 1460, 1460, 963, - 964, 964, 1460, 1460, 964, 966, 1460, 1460, 1460, 966, - 967, 967, 1460, 1460, 967, 972, 1460, 972, 972, 1460, - 1460, 972, 987, 1460, 987, 987, 1460, 1460, 987, 998, - - 998, 1460, 1460, 998, 1005, 1005, 1005, 1005, 1460, 1460, - 1005, 127, 1460, 1460, 1460, 127, 127, 127, 1460, 127, - 127, 127, 84, 1460, 1460, 1460, 84, 84, 84, 1460, - 84, 84, 84, 1019, 1019, 1460, 1460, 1019, 1027, 1027, - 1460, 1460, 1460, 1027, 1028, 1028, 1028, 1460, 1460, 1028, - 1029, 1460, 1460, 1460, 1029, 1030, 1030, 1030, 1030, 1460, - 1460, 1030, 1031, 1460, 1460, 1460, 1031, 1033, 1033, 1033, - 1033, 1460, 1460, 1033, 1034, 1460, 1460, 1460, 1034, 1036, - 1036, 1036, 1036, 1460, 1460, 1036, 1037, 1460, 1460, 1460, - 1037, 1048, 1048, 1048, 1048, 1460, 1460, 1048, 1049, 1460, - - 1460, 1460, 1049, 1051, 1051, 1460, 1460, 1051, 1052, 1052, - 1460, 1460, 1052, 1054, 1054, 1460, 1460, 1054, 1056, 1056, - 1460, 1460, 1056, 1063, 1063, 1460, 1460, 1063, 1084, 1084, - 1460, 1460, 1084, 1095, 1460, 1095, 1095, 1460, 1460, 1095, - 1101, 1101, 1101, 1460, 1460, 1101, 127, 1460, 1460, 1460, - 127, 127, 127, 1460, 127, 127, 127, 84, 1460, 1460, - 1460, 84, 84, 84, 1460, 84, 84, 84, 1119, 1460, - 1119, 1119, 1460, 1460, 1119, 1120, 1120, 1460, 1460, 1120, - 1123, 1123, 1460, 1460, 1460, 1123, 1124, 1124, 1124, 1460, - 1460, 1124, 1125, 1125, 1460, 1460, 1460, 1125, 1126, 1126, - - 1126, 1460, 1460, 1126, 1127, 1127, 1460, 1460, 1460, 1127, - 1128, 1128, 1128, 1460, 1460, 1128, 1129, 1129, 1460, 1460, - 1460, 1129, 1130, 1130, 1130, 1460, 1460, 1130, 1131, 1131, - 1460, 1460, 1460, 1131, 1146, 1146, 1146, 1460, 1460, 1146, - 1147, 1147, 1460, 1460, 1460, 1147, 1148, 1148, 1460, 1460, - 1148, 1149, 1149, 1460, 1460, 1149, 1151, 1460, 1460, 1460, - 1151, 1152, 1152, 1460, 1460, 1152, 1157, 1460, 1157, 1157, - 1460, 1460, 1157, 1163, 1460, 1163, 1163, 1460, 1460, 1163, - 1178, 1460, 1178, 1178, 1460, 1460, 1178, 1188, 1188, 1460, - 1460, 1188, 1195, 1195, 1195, 1195, 1460, 1460, 1195, 1196, - - 1460, 1460, 1460, 1196, 127, 1460, 1460, 1460, 127, 127, - 127, 1460, 127, 127, 127, 84, 1460, 1460, 1460, 84, - 84, 84, 1460, 84, 84, 84, 1209, 1209, 1460, 1460, - 1209, 1210, 1210, 1460, 1460, 1460, 1210, 1211, 1211, 1460, - 1460, 1460, 1211, 1212, 1212, 1460, 1460, 1460, 1212, 1213, - 1213, 1460, 1460, 1460, 1213, 1214, 1214, 1460, 1460, 1460, - 1214, 1215, 1215, 1460, 1460, 1460, 1215, 1222, 1222, 1460, - 1460, 1460, 1222, 1223, 1223, 1460, 1460, 1223, 1229, 1229, - 1460, 1460, 1229, 1231, 1231, 1460, 1460, 1231, 1238, 1238, - 1460, 1460, 1238, 1245, 1245, 1460, 1460, 1245, 1266, 1266, - - 1460, 1460, 1266, 1274, 1460, 1274, 1274, 1460, 1460, 1274, - 1280, 1280, 1280, 1460, 1460, 1280, 1281, 1281, 1460, 1460, - 1460, 1281, 127, 1460, 1460, 1460, 127, 127, 127, 1460, - 127, 127, 127, 84, 1460, 1460, 1460, 84, 84, 84, - 1460, 84, 84, 84, 1288, 1288, 1460, 1460, 1460, 1288, - 1289, 1289, 1460, 1460, 1460, 1289, 1290, 1290, 1460, 1460, - 1460, 1290, 1291, 1291, 1460, 1460, 1460, 1291, 1292, 1292, - 1460, 1460, 1460, 1292, 1293, 1293, 1460, 1460, 1460, 1293, - 1303, 1303, 1460, 1460, 1460, 1303, 1304, 1304, 1460, 1460, - 1304, 1312, 1460, 1460, 1460, 1312, 1313, 1313, 1460, 1460, - - 1313, 1314, 1460, 1460, 1460, 1314, 1315, 1460, 1315, 1315, - 1460, 1460, 1315, 1316, 1460, 1460, 1460, 1316, 1318, 1460, - 1318, 1318, 1460, 1460, 1318, 1319, 1460, 1460, 1460, 1319, - 1321, 1460, 1321, 1321, 1460, 1460, 1321, 1322, 1460, 1460, - 1460, 1322, 1333, 1460, 1333, 1333, 1460, 1460, 1333, 1334, - 1460, 1460, 1460, 1334, 1336, 1336, 1460, 1460, 1336, 1343, - 1343, 1460, 1460, 1460, 1343, 127, 1460, 1460, 1460, 127, - 127, 127, 1460, 127, 127, 127, 1121, 1121, 1460, 1460, - 1460, 1121, 1355, 1460, 1355, 1355, 1460, 1460, 1355, 1356, - 1356, 1460, 1460, 1356, 1359, 1460, 1460, 1460, 1359, 1360, - - 1360, 1460, 1460, 1360, 1361, 1460, 1460, 1460, 1361, 1362, - 1362, 1460, 1460, 1362, 1363, 1460, 1460, 1460, 1363, 1364, - 1364, 1460, 1460, 1364, 1365, 1460, 1460, 1460, 1365, 1366, - 1366, 1460, 1460, 1366, 1367, 1460, 1460, 1460, 1367, 1382, - 1382, 1460, 1460, 1382, 1383, 1460, 1460, 1460, 1383, 1384, - 1460, 1384, 1384, 1460, 1460, 1384, 1385, 1460, 1460, 1460, - 1385, 1387, 1387, 1460, 1460, 1460, 1387, 1400, 1400, 1460, - 1460, 1400, 1401, 1460, 1460, 1460, 1401, 1402, 1460, 1460, - 1460, 1402, 1403, 1460, 1460, 1460, 1403, 1404, 1460, 1460, - 1460, 1404, 1405, 1460, 1460, 1460, 1405, 1406, 1460, 1460, - - 1460, 1406, 1413, 1460, 1460, 1460, 1413, 1414, 1414, 1460, - 1460, 1414, 1415, 1460, 1460, 1460, 1415, 1423, 1460, 1460, - 1460, 1423, 1424, 1460, 1460, 1460, 1424, 1425, 1460, 1460, - 1460, 1425, 1426, 1460, 1460, 1460, 1426, 1427, 1460, 1460, - 1460, 1427, 1428, 1460, 1460, 1460, 1428, 1438, 1460, 1460, - 1460, 1438, 1439, 1460, 1460, 1460, 1439, 1357, 1460, 1460, - 1460, 1357, 1448, 1460, 1460, 1460, 1448, 13, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460 + 30, 31, 32, 32, 33, 32, 34, 32, 35, 32, + 32, 32, 32, 32, 36, 14, 37, 37, 37, 37, + 37, 37, 14, 14, 14, 14, 14, 14, 14, 38, + 14, 14, 39, 83, 83, 252, 40, 99, 99, 99, + 99, 99, 99, 99, 99, 100, 100, 100, 100, 100, + 101, 111, 136, 136, 136, 136, 136, 136, 136, 136, + 41, 42, 157, 110, 43, 167, 110, 1408, 44, 157, + + 110, 45, 46, 15, 16, 17, 46, 47, 48, 21, + 49, 46, 50, 23, 46, 46, 51, 52, 53, 54, + 52, 52, 52, 52, 52, 28, 29, 21, 46, 55, + 55, 55, 55, 56, 57, 57, 58, 57, 59, 57, + 60, 57, 57, 57, 57, 57, 61, 46, 62, 62, + 62, 62, 62, 62, 46, 46, 46, 46, 46, 46, + 46, 63, 46, 46, 64, 64, 164, 87, 21, 21, + 21, 21, 15, 68, 69, 93, 70, 65, 65, 93, + 93, 112, 71, 15, 68, 69, 160, 70, 87, 83, + 125, 83, 165, 71, 71, 70, 83, 93, 137, 137, + + 137, 137, 137, 138, 194, 71, 70, 146, 151, 113, + 114, 250, 160, 115, 180, 72, 94, 116, 118, 181, + 117, 182, 66, 66, 157, 110, 72, 15, 16, 17, + 82, 18, 98, 98, 98, 98, 98, 98, 98, 98, + 126, 1401, 191, 126, 126, 126, 126, 126, 126, 126, + 126, 124, 360, 135, 135, 135, 135, 135, 135, 135, + 135, 175, 175, 175, 175, 175, 175, 175, 175, 83, + 73, 74, 74, 74, 74, 74, 74, 74, 74, 74, + 74, 74, 74, 74, 74, 74, 74, 74, 15, 16, + 17, 82, 18, 82, 83, 82, 83, 82, 82, 185, + + 88, 82, 88, 83, 88, 97, 88, 88, 192, 196, + 88, 157, 110, 82, 82, 82, 175, 175, 175, 175, + 175, 175, 88, 88, 88, 82, 83, 157, 110, 87, + 176, 73, 74, 74, 74, 74, 74, 74, 74, 74, + 74, 74, 74, 74, 74, 74, 74, 74, 74, 15, + 16, 17, 76, 18, 83, 83, 176, 93, 77, 78, + 79, 93, 93, 193, 149, 235, 204, 195, 149, 149, + 125, 205, 80, 206, 213, 249, 1306, 162, 162, 93, + 159, 162, 268, 1275, 93, 125, 149, 162, 93, 93, + 209, 97, 81, 15, 16, 17, 76, 18, 132, 112, + + 162, 1363, 77, 78, 79, 150, 93, 154, 110, 155, + 83, 156, 125, 83, 214, 155, 80, 156, 211, 83, + 163, 125, 214, 243, 162, 94, 215, 113, 114, 156, + 156, 115, 83, 250, 266, 116, 81, 95, 117, 96, + 96, 96, 96, 96, 96, 96, 96, 97, 250, 87, + 156, 98, 98, 98, 98, 98, 83, 293, 169, 170, + 171, 169, 169, 169, 169, 169, 216, 83, 83, 267, + 98, 98, 98, 98, 98, 98, 82, 361, 83, 294, + 82, 176, 82, 250, 83, 82, 82, 83, 82, 82, + 82, 103, 103, 103, 103, 103, 103, 103, 103, 97, + + 430, 304, 82, 103, 103, 103, 103, 103, 104, 104, + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, + 83, 104, 98, 98, 98, 98, 98, 98, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 82, 104, 104, + 104, 104, 104, 104, 104, 104, 1428, 217, 83, 305, + 104, 104, 104, 104, 104, 175, 175, 175, 175, 175, + 175, 175, 175, 201, 201, 201, 201, 201, 201, 82, + 82, 82, 82, 82, 82, 109, 110, 82, 83, 82, + 176, 82, 82, 126, 1306, 82, 126, 126, 126, 126, + 126, 126, 126, 126, 286, 286, 286, 82, 82, 82, + + 133, 253, 134, 134, 134, 134, 134, 134, 134, 134, + 97, 176, 176, 1237, 135, 135, 135, 135, 135, 159, + 235, 235, 93, 159, 83, 293, 93, 93, 293, 159, + 300, 125, 125, 135, 135, 135, 135, 135, 135, 124, + 125, 1345, 159, 124, 93, 124, 315, 294, 124, 124, + 294, 124, 124, 124, 139, 139, 139, 139, 139, 139, + 139, 139, 97, 132, 87, 124, 139, 139, 139, 139, + 139, 140, 140, 140, 140, 140, 140, 140, 140, 140, + 140, 140, 140, 125, 140, 135, 135, 135, 135, 135, + 135, 124, 124, 124, 124, 124, 124, 124, 124, 124, + + 124, 140, 140, 140, 140, 140, 140, 140, 140, 1428, + 1340, 428, 83, 140, 140, 140, 140, 140, 316, 213, + 97, 197, 198, 199, 197, 197, 197, 197, 197, 87, + 157, 110, 124, 124, 124, 124, 124, 124, 145, 110, + 124, 83, 124, 176, 124, 124, 317, 90, 124, 90, + 125, 90, 277, 90, 90, 553, 553, 90, 306, 214, + 124, 124, 124, 280, 280, 280, 280, 280, 281, 90, + 90, 90, 92, 160, 82, 83, 92, 83, 82, 82, + 356, 125, 92, 124, 1215, 124, 372, 124, 359, 124, + 124, 1208, 83, 124, 92, 92, 82, 172, 172, 172, + + 172, 172, 172, 172, 172, 124, 124, 124, 494, 172, + 172, 172, 172, 172, 201, 201, 201, 201, 201, 201, + 201, 201, 149, 417, 1201, 362, 149, 149, 172, 172, + 172, 172, 172, 172, 178, 178, 178, 178, 178, 178, + 178, 178, 275, 176, 149, 418, 178, 178, 178, 178, + 178, 127, 277, 127, 83, 127, 125, 127, 127, 373, + 438, 127, 421, 150, 500, 172, 172, 172, 172, 172, + 172, 1428, 176, 127, 127, 127, 129, 125, 129, 176, + 129, 277, 129, 129, 422, 131, 129, 124, 235, 131, + 83, 124, 124, 507, 125, 131, 423, 417, 129, 129, + + 129, 349, 349, 349, 349, 349, 350, 131, 131, 124, + 200, 200, 200, 200, 200, 200, 200, 200, 424, 418, + 1198, 87, 200, 200, 200, 200, 200, 201, 201, 201, + 201, 201, 201, 201, 201, 384, 384, 384, 384, 384, + 385, 200, 200, 200, 200, 200, 200, 202, 202, 202, + 202, 202, 202, 202, 202, 275, 176, 344, 176, 202, + 202, 202, 202, 202, 148, 277, 82, 346, 148, 497, + 82, 82, 582, 87, 148, 1428, 176, 1275, 200, 200, + 200, 200, 200, 200, 1312, 346, 148, 148, 82, 162, + 162, 93, 212, 162, 149, 93, 421, 83, 149, 162, + + 423, 93, 83, 176, 149, 162, 162, 429, 212, 162, + 125, 425, 162, 93, 93, 162, 149, 149, 422, 436, + 162, 162, 424, 215, 162, 83, 652, 652, 162, 83, + 162, 83, 163, 217, 437, 218, 218, 218, 218, 218, + 218, 218, 218, 162, 499, 734, 734, 508, 163, 269, + 270, 271, 269, 269, 269, 269, 269, 397, 397, 397, + 397, 397, 398, 163, 83, 217, 176, 219, 219, 219, + 219, 219, 219, 219, 219, 277, 417, 217, 83, 218, + 218, 218, 218, 218, 218, 279, 279, 279, 279, 279, + 279, 279, 279, 83, 1158, 583, 83, 217, 418, 220, + + 220, 220, 220, 220, 221, 218, 218, 1428, 83, 278, + 278, 278, 278, 278, 278, 278, 278, 284, 284, 285, + 286, 286, 286, 286, 286, 283, 83, 1237, 83, 82, + 176, 222, 222, 222, 222, 222, 222, 222, 222, 346, + 1215, 672, 1208, 222, 222, 222, 222, 222, 307, 308, + 309, 307, 307, 307, 307, 307, 473, 473, 473, 473, + 473, 474, 222, 222, 222, 222, 222, 222, 176, 225, + 226, 227, 225, 225, 225, 225, 225, 125, 83, 746, + 746, 228, 228, 228, 228, 228, 253, 498, 254, 254, + 254, 254, 254, 254, 490, 490, 490, 490, 490, 491, + + 228, 228, 228, 228, 228, 228, 229, 230, 231, 231, + 231, 231, 231, 231, 232, 855, 855, 125, 233, 233, + 233, 233, 233, 329, 330, 331, 329, 329, 329, 329, + 329, 421, 423, 940, 940, 955, 955, 233, 233, 233, + 233, 233, 233, 236, 236, 236, 236, 236, 236, 236, + 236, 578, 1201, 422, 424, 236, 236, 236, 236, 236, + 275, 176, 337, 337, 337, 337, 337, 337, 1063, 1063, + 277, 275, 176, 579, 222, 222, 222, 222, 222, 222, + 253, 381, 254, 254, 254, 254, 254, 254, 254, 254, + 341, 341, 341, 341, 341, 341, 341, 341, 283, 348, + + 348, 348, 348, 348, 348, 348, 348, 1087, 1087, 590, + 677, 125, 253, 468, 255, 255, 255, 255, 255, 255, + 255, 255, 1428, 470, 347, 347, 347, 347, 347, 347, + 347, 347, 374, 375, 376, 374, 374, 374, 374, 374, + 83, 125, 781, 125, 253, 176, 256, 256, 256, 256, + 256, 257, 254, 254, 517, 1428, 176, 872, 688, 688, + 688, 83, 392, 176, 317, 381, 318, 318, 318, 318, + 318, 318, 394, 83, 982, 125, 124, 176, 258, 258, + 258, 258, 258, 258, 258, 258, 381, 83, 125, 1198, + 258, 258, 258, 258, 258, 83, 383, 383, 383, 383, + + 383, 383, 383, 383, 578, 83, 1125, 1125, 1325, 258, + 258, 258, 258, 258, 258, 259, 259, 259, 259, 259, + 259, 259, 259, 1428, 176, 1118, 579, 259, 259, 259, + 259, 259, 1428, 394, 382, 382, 382, 382, 382, 382, + 382, 382, 176, 344, 176, 1266, 258, 258, 258, 258, + 258, 258, 217, 346, 218, 218, 218, 218, 218, 218, + 218, 218, 386, 176, 387, 387, 387, 387, 387, 387, + 387, 387, 386, 176, 388, 388, 388, 388, 388, 388, + 388, 388, 394, 83, 217, 1428, 218, 218, 218, 218, + 218, 218, 218, 218, 386, 470, 389, 389, 389, 389, + + 389, 390, 387, 387, 396, 396, 396, 396, 396, 396, + 396, 396, 1131, 1131, 1076, 83, 275, 176, 276, 276, + 276, 276, 276, 276, 276, 276, 277, 176, 1146, 1146, + 278, 278, 278, 278, 278, 1428, 346, 395, 395, 395, + 395, 395, 395, 395, 395, 125, 1242, 1242, 176, 278, + 278, 278, 278, 278, 278, 289, 290, 291, 289, 289, + 289, 289, 289, 176, 780, 780, 780, 292, 292, 292, + 292, 292, 408, 409, 410, 408, 408, 408, 408, 408, + 523, 523, 523, 523, 523, 524, 292, 292, 292, 292, + 292, 292, 253, 125, 254, 254, 254, 254, 254, 254, + + 254, 254, 344, 176, 416, 416, 416, 416, 416, 416, + 176, 468, 346, 431, 432, 433, 431, 431, 431, 431, + 431, 470, 176, 125, 253, 176, 254, 254, 254, 254, + 254, 254, 254, 254, 517, 576, 176, 582, 87, 275, + 176, 362, 125, 363, 363, 363, 363, 363, 363, 381, + 671, 1283, 1283, 1286, 1286, 125, 317, 577, 318, 318, + 318, 318, 318, 318, 318, 318, 541, 541, 541, 541, + 541, 542, 125, 275, 176, 452, 452, 452, 452, 452, + 452, 1289, 1289, 381, 1301, 1301, 176, 83, 317, 125, + 319, 319, 319, 319, 319, 319, 319, 319, 453, 454, + + 455, 453, 453, 453, 453, 453, 386, 176, 387, 387, + 387, 387, 387, 387, 387, 387, 381, 1323, 1323, 83, + 317, 560, 320, 320, 320, 320, 320, 321, 318, 318, + 386, 562, 387, 387, 387, 387, 387, 387, 387, 387, + 386, 176, 387, 387, 387, 387, 387, 387, 1352, 1352, + 394, 83, 176, 325, 326, 327, 325, 325, 325, 325, + 325, 176, 1158, 1055, 1229, 328, 328, 328, 328, 328, + 456, 457, 458, 456, 456, 456, 456, 456, 565, 565, + 565, 565, 565, 566, 328, 328, 328, 328, 328, 328, + 333, 334, 335, 333, 333, 333, 333, 333, 578, 1224, + + 1033, 1026, 336, 336, 336, 336, 336, 392, 176, 464, + 464, 464, 464, 464, 464, 1023, 1198, 394, 1118, 176, + 579, 336, 336, 336, 336, 336, 336, 275, 176, 337, + 337, 337, 337, 337, 337, 337, 337, 277, 344, 176, + 345, 345, 345, 345, 345, 345, 345, 345, 346, 176, + 176, 176, 347, 347, 347, 347, 347, 472, 472, 472, + 472, 472, 472, 472, 472, 176, 176, 176, 392, 176, + 990, 347, 347, 347, 347, 347, 347, 362, 394, 363, + 363, 363, 363, 363, 363, 363, 363, 1428, 1428, 471, + 471, 471, 471, 471, 471, 471, 471, 480, 562, 481, + + 481, 481, 481, 481, 481, 481, 481, 1172, 125, 362, + 468, 364, 364, 364, 364, 364, 364, 364, 364, 480, + 631, 482, 482, 482, 482, 482, 482, 482, 482, 480, + 176, 483, 483, 483, 483, 483, 484, 481, 481, 487, + 125, 362, 83, 365, 365, 365, 365, 365, 366, 363, + 363, 489, 489, 489, 489, 489, 489, 489, 489, 1428, + 176, 488, 488, 488, 488, 488, 488, 488, 488, 693, + 176, 968, 125, 317, 176, 318, 318, 318, 318, 318, + 318, 318, 318, 517, 1055, 1033, 509, 510, 511, 512, + 509, 509, 509, 509, 438, 439, 439, 439, 439, 439, + + 439, 1026, 1023, 1198, 83, 317, 1118, 318, 318, 318, + 318, 318, 318, 318, 318, 83, 522, 522, 522, 522, + 522, 522, 522, 522, 83, 1428, 176, 521, 521, 521, + 521, 521, 521, 521, 521, 520, 83, 275, 176, 380, + 380, 380, 380, 380, 380, 380, 380, 381, 176, 933, + 176, 382, 382, 382, 382, 382, 525, 538, 526, 526, + 526, 526, 526, 526, 526, 526, 1109, 1104, 176, 176, + 382, 382, 382, 382, 382, 382, 392, 176, 393, 393, + 393, 393, 393, 393, 393, 393, 394, 176, 176, 176, + 395, 395, 395, 395, 395, 525, 1428, 527, 527, 527, + + 527, 527, 527, 527, 527, 176, 631, 176, 176, 395, + 395, 395, 395, 395, 395, 402, 403, 404, 402, 402, + 402, 402, 402, 344, 176, 990, 968, 405, 405, 405, + 405, 405, 525, 487, 528, 528, 528, 528, 528, 529, + 526, 526, 847, 1047, 1042, 829, 405, 405, 405, 405, + 405, 405, 412, 413, 414, 412, 412, 412, 412, 412, + 1428, 176, 826, 1023, 415, 415, 415, 415, 415, 530, + 487, 531, 531, 531, 531, 531, 531, 531, 531, 1118, + 933, 176, 176, 415, 415, 415, 415, 415, 415, 344, + 176, 416, 416, 416, 416, 416, 416, 416, 416, 346, + + 362, 642, 363, 363, 363, 363, 363, 363, 363, 363, + 530, 644, 532, 532, 532, 532, 532, 532, 532, 532, + 530, 176, 533, 533, 533, 533, 533, 534, 531, 531, + 487, 125, 362, 176, 363, 363, 363, 363, 363, 363, + 363, 363, 540, 540, 540, 540, 540, 540, 540, 540, + 1428, 1428, 539, 539, 539, 539, 539, 539, 539, 539, + 176, 644, 176, 125, 438, 439, 439, 439, 439, 439, + 439, 439, 439, 550, 551, 552, 550, 550, 550, 550, + 550, 564, 564, 564, 564, 564, 564, 564, 564, 176, + 1089, 788, 759, 961, 83, 438, 440, 440, 440, 440, + + 440, 440, 440, 440, 1428, 847, 563, 563, 563, 563, + 563, 563, 563, 563, 567, 568, 569, 567, 567, 567, + 567, 567, 829, 826, 1023, 83, 438, 441, 441, 441, + 441, 441, 442, 439, 439, 480, 560, 481, 481, 481, + 481, 481, 481, 481, 481, 480, 562, 481, 481, 481, + 481, 481, 481, 481, 481, 1021, 83, 448, 449, 450, + 448, 448, 448, 448, 448, 392, 176, 933, 732, 451, + 451, 451, 451, 451, 480, 520, 481, 481, 481, 481, + 481, 481, 634, 634, 634, 634, 634, 635, 451, 451, + 451, 451, 451, 451, 275, 176, 452, 452, 452, 452, + + 452, 452, 452, 452, 381, 460, 461, 462, 460, 460, + 460, 460, 460, 918, 913, 176, 176, 463, 463, 463, + 463, 463, 344, 176, 575, 575, 575, 575, 575, 575, + 788, 176, 487, 759, 644, 839, 463, 463, 463, 463, + 463, 463, 392, 176, 464, 464, 464, 464, 464, 464, + 464, 464, 394, 468, 468, 469, 469, 469, 469, 469, + 469, 469, 469, 470, 631, 834, 631, 471, 471, 471, + 471, 471, 586, 587, 588, 589, 586, 586, 586, 586, + 584, 826, 933, 732, 788, 599, 471, 471, 471, 471, + 471, 471, 476, 477, 478, 476, 476, 476, 476, 476, + + 584, 125, 584, 585, 479, 479, 479, 479, 479, 176, + 500, 501, 501, 501, 501, 501, 501, 775, 693, 562, + 752, 83, 644, 479, 479, 479, 479, 479, 479, 344, + 176, 486, 486, 486, 486, 486, 486, 486, 486, 487, + 125, 1428, 176, 488, 488, 488, 488, 488, 631, 826, + 642, 520, 612, 613, 614, 612, 612, 612, 612, 612, + 644, 824, 488, 488, 488, 488, 488, 488, 500, 501, + 501, 501, 501, 501, 501, 501, 501, 392, 176, 611, + 611, 611, 611, 611, 611, 732, 525, 520, 526, 526, + 526, 526, 526, 526, 526, 526, 545, 717, 125, 500, + + 502, 502, 502, 502, 502, 502, 502, 502, 525, 712, + 526, 526, 526, 526, 526, 526, 526, 526, 525, 176, + 526, 526, 526, 526, 526, 526, 176, 176, 517, 125, + 500, 503, 503, 503, 503, 503, 504, 501, 501, 615, + 616, 617, 615, 615, 615, 615, 615, 530, 176, 531, + 531, 531, 531, 531, 531, 531, 531, 520, 788, 599, + 125, 438, 439, 439, 439, 439, 439, 439, 439, 439, + 530, 676, 531, 531, 531, 531, 531, 531, 531, 531, + 530, 176, 531, 531, 531, 531, 531, 531, 674, 83, + 538, 83, 438, 439, 439, 439, 439, 439, 439, 439, + + 439, 618, 619, 620, 618, 618, 618, 618, 618, 536, + 176, 1428, 176, 647, 647, 647, 647, 647, 648, 538, + 775, 538, 83, 392, 176, 519, 519, 519, 519, 519, + 519, 519, 519, 520, 773, 658, 562, 521, 521, 521, + 521, 521, 536, 176, 626, 626, 626, 626, 626, 626, + 470, 636, 538, 732, 545, 691, 521, 521, 521, 521, + 521, 521, 536, 176, 537, 537, 537, 537, 537, 537, + 537, 537, 538, 599, 445, 676, 539, 539, 539, 539, + 539, 633, 633, 633, 633, 633, 633, 633, 633, 668, + 668, 668, 668, 668, 669, 539, 539, 539, 539, 539, + + 539, 546, 547, 548, 546, 546, 546, 546, 546, 344, + 176, 674, 670, 549, 549, 549, 549, 549, 1428, 487, + 632, 632, 632, 632, 632, 632, 632, 632, 407, 470, + 629, 545, 549, 549, 549, 549, 549, 549, 554, 555, + 556, 554, 554, 554, 554, 554, 392, 176, 401, 530, + 557, 557, 557, 557, 557, 636, 520, 637, 637, 637, + 637, 637, 637, 637, 637, 525, 536, 176, 176, 557, + 557, 557, 557, 557, 557, 468, 538, 558, 558, 558, + 558, 558, 558, 558, 558, 470, 560, 560, 561, 561, + 561, 561, 561, 561, 561, 561, 562, 759, 599, 445, + + 563, 563, 563, 563, 563, 636, 1428, 638, 638, 638, + 638, 638, 638, 638, 638, 83, 759, 125, 581, 563, + 563, 563, 563, 563, 563, 571, 572, 573, 571, 571, + 571, 571, 571, 344, 176, 580, 83, 574, 574, 574, + 574, 574, 636, 665, 639, 639, 639, 639, 639, 640, + 637, 637, 480, 407, 545, 401, 574, 574, 574, 574, + 574, 574, 344, 176, 575, 575, 575, 575, 575, 575, + 575, 575, 487, 82, 576, 176, 515, 82, 445, 82, + 324, 506, 82, 82, 665, 82, 82, 82, 104, 104, + 104, 104, 104, 104, 104, 104, 577, 505, 496, 82, + + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, + 104, 104, 104, 104, 104, 104, 104, 83, 104, 82, + 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 500, 501, 501, 501, 501, + 501, 501, 501, 501, 646, 646, 646, 646, 646, 646, + 646, 646, 1428, 176, 645, 645, 645, 645, 645, 645, + 645, 645, 887, 495, 493, 125, 500, 501, 501, 501, + 501, 501, 501, 501, 501, 649, 650, 651, 649, 649, + 649, 649, 649, 658, 176, 659, 659, 659, 659, 659, + 659, 659, 659, 693, 1428, 176, 125, 124, 576, 176, + + 492, 124, 407, 124, 665, 467, 124, 124, 696, 124, + 124, 124, 140, 140, 140, 140, 140, 140, 140, 140, + 577, 401, 283, 124, 140, 140, 140, 140, 140, 140, + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, + 140, 125, 140, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 590, + 642, 591, 591, 591, 591, 591, 591, 591, 591, 658, + 829, 660, 660, 660, 660, 660, 660, 660, 660, 658, + 176, 661, 661, 661, 661, 661, 662, 659, 659, 703, + 83, 590, 386, 592, 592, 592, 592, 592, 592, 592, + + 592, 667, 667, 667, 667, 667, 667, 667, 667, 1428, + 1428, 666, 666, 666, 666, 666, 666, 666, 666, 584, + 829, 176, 83, 590, 176, 593, 593, 593, 593, 593, + 594, 595, 595, 725, 590, 445, 688, 688, 688, 584, + 324, 584, 584, 684, 685, 686, 684, 684, 684, 684, + 684, 435, 434, 427, 83, 590, 426, 596, 596, 596, + 591, 591, 591, 591, 591, 83, 699, 699, 699, 699, + 699, 700, 83, 698, 698, 698, 698, 698, 698, 698, + 698, 420, 419, 407, 283, 401, 83, 602, 603, 604, + 602, 602, 602, 602, 602, 392, 176, 283, 379, 605, + + 605, 605, 605, 605, 1428, 696, 697, 697, 697, 697, + 697, 697, 697, 697, 324, 224, 371, 370, 605, 605, + 605, 605, 605, 605, 607, 608, 609, 607, 607, 607, + 607, 607, 369, 368, 367, 301, 610, 610, 610, 610, + 610, 705, 705, 705, 705, 705, 705, 705, 705, 706, + 706, 706, 706, 706, 707, 610, 610, 610, 610, 610, + 610, 392, 176, 611, 611, 611, 611, 611, 611, 611, + 611, 520, 622, 623, 624, 622, 622, 622, 622, 622, + 1428, 176, 358, 357, 625, 625, 625, 625, 625, 1428, + 696, 704, 704, 704, 704, 704, 704, 704, 704, 355, + + 354, 353, 352, 625, 625, 625, 625, 625, 625, 536, + 176, 626, 626, 626, 626, 626, 626, 626, 626, 538, + 468, 845, 630, 630, 630, 630, 630, 630, 630, 630, + 631, 847, 351, 283, 632, 632, 632, 632, 632, 176, + 708, 708, 708, 708, 708, 708, 708, 708, 338, 340, + 536, 176, 283, 632, 632, 632, 632, 632, 632, 642, + 703, 643, 643, 643, 643, 643, 643, 643, 643, 644, + 324, 224, 314, 645, 645, 645, 645, 645, 176, 709, + 709, 709, 709, 709, 709, 709, 709, 313, 312, 311, + 310, 97, 645, 645, 645, 645, 645, 645, 653, 654, + + 655, 653, 653, 653, 653, 653, 301, 303, 301, 302, + 656, 656, 656, 656, 656, 176, 710, 710, 710, 710, + 710, 711, 708, 708, 301, 299, 1428, 176, 298, 656, + 656, 656, 656, 656, 656, 560, 703, 657, 657, 657, + 657, 657, 657, 657, 657, 562, 344, 176, 664, 664, + 664, 664, 664, 664, 664, 664, 665, 176, 297, 296, + 666, 666, 666, 666, 666, 712, 665, 713, 713, 713, + 713, 713, 713, 713, 713, 295, 723, 176, 97, 666, + 666, 666, 666, 666, 666, 677, 725, 678, 678, 678, + 678, 678, 678, 678, 678, 712, 1428, 714, 714, 714, + + 714, 714, 714, 714, 714, 712, 847, 715, 715, 715, + 715, 715, 716, 713, 713, 283, 125, 677, 560, 679, + 679, 679, 679, 679, 679, 679, 679, 717, 759, 718, + 718, 718, 718, 718, 718, 718, 718, 717, 176, 719, + 719, 719, 719, 719, 719, 719, 719, 887, 125, 677, + 642, 680, 680, 680, 680, 680, 681, 682, 682, 717, + 829, 720, 720, 720, 720, 720, 721, 718, 718, 727, + 727, 727, 727, 727, 727, 727, 727, 287, 283, 274, + 125, 677, 224, 683, 683, 683, 678, 678, 678, 678, + 678, 728, 728, 728, 728, 728, 729, 1428, 176, 726, + + 726, 726, 726, 726, 726, 726, 726, 693, 160, 265, + 264, 263, 125, 590, 262, 595, 595, 595, 595, 595, + 595, 595, 595, 740, 741, 742, 740, 740, 740, 740, + 740, 636, 176, 637, 637, 637, 637, 637, 637, 637, + 637, 696, 261, 260, 83, 590, 845, 595, 595, 595, + 595, 595, 595, 595, 595, 636, 847, 637, 637, 637, + 637, 637, 637, 637, 637, 636, 176, 637, 637, 637, + 637, 637, 637, 133, 251, 703, 83, 590, 248, 595, + 595, 595, 595, 595, 595, 687, 687, 743, 744, 745, + 743, 743, 743, 743, 743, 752, 176, 753, 753, 753, + + 753, 753, 753, 753, 753, 725, 247, 246, 83, 590, + 560, 687, 687, 687, 687, 687, 687, 687, 687, 752, + 968, 754, 754, 754, 754, 754, 754, 754, 754, 752, + 176, 755, 755, 755, 755, 755, 756, 753, 753, 867, + 83, 392, 176, 695, 695, 695, 695, 695, 695, 695, + 695, 696, 245, 244, 242, 697, 697, 697, 697, 697, + 761, 761, 761, 761, 761, 761, 761, 761, 762, 762, + 762, 762, 762, 763, 697, 697, 697, 697, 697, 697, + 536, 176, 702, 702, 702, 702, 702, 702, 702, 702, + 703, 241, 240, 239, 704, 704, 704, 704, 704, 1428, + + 1428, 760, 760, 760, 760, 760, 760, 760, 760, 238, + 968, 237, 95, 704, 704, 704, 704, 704, 704, 723, + 176, 724, 724, 724, 724, 724, 724, 724, 724, 725, + 224, 160, 160, 726, 726, 726, 726, 726, 764, 765, + 766, 764, 764, 764, 764, 764, 832, 832, 832, 832, + 832, 833, 726, 726, 726, 726, 726, 726, 735, 736, + 737, 735, 735, 735, 735, 735, 1428, 176, 153, 210, + 738, 738, 738, 738, 738, 658, 725, 659, 659, 659, + 659, 659, 659, 659, 659, 147, 344, 176, 208, 738, + 738, 738, 738, 738, 738, 468, 665, 739, 739, 739, + + 739, 739, 739, 739, 739, 631, 747, 748, 749, 747, + 747, 747, 747, 747, 392, 176, 207, 203, 750, 750, + 750, 750, 750, 658, 696, 659, 659, 659, 659, 659, + 659, 659, 659, 124, 536, 176, 130, 750, 750, 750, + 750, 750, 750, 642, 703, 751, 751, 751, 751, 751, + 751, 751, 751, 644, 560, 988, 758, 758, 758, 758, + 758, 758, 758, 758, 759, 990, 128, 125, 760, 760, + 760, 760, 760, 658, 190, 659, 659, 659, 659, 659, + 659, 850, 850, 850, 850, 850, 851, 760, 760, 760, + 760, 760, 760, 768, 769, 770, 768, 768, 768, 768, + + 768, 189, 188, 187, 186, 771, 771, 771, 771, 771, + 344, 176, 772, 772, 772, 772, 772, 772, 184, 183, + 665, 179, 176, 82, 771, 771, 771, 771, 771, 771, + 344, 176, 772, 772, 772, 772, 772, 772, 772, 772, + 665, 673, 174, 673, 176, 673, 176, 673, 673, 1428, + 675, 673, 675, 887, 675, 890, 675, 675, 176, 990, + 675, 723, 176, 673, 673, 673, 677, 897, 780, 780, + 780, 725, 675, 675, 675, 776, 777, 778, 776, 776, + 776, 776, 776, 168, 344, 176, 687, 687, 687, 687, + 687, 687, 687, 687, 867, 91, 712, 125, 713, 713, + + 713, 713, 713, 713, 125, 677, 89, 682, 682, 682, + 682, 682, 682, 682, 682, 83, 392, 176, 800, 800, + 800, 800, 800, 800, 87, 85, 696, 84, 536, 176, + 806, 806, 806, 806, 806, 806, 125, 677, 703, 682, + 682, 682, 682, 682, 682, 682, 682, 176, 708, 708, + 708, 708, 708, 708, 708, 708, 176, 708, 708, 708, + 708, 708, 708, 708, 708, 83, 160, 153, 125, 677, + 147, 682, 682, 682, 682, 682, 682, 779, 779, 176, + 708, 708, 708, 708, 708, 708, 807, 808, 809, 807, + 807, 807, 807, 807, 870, 870, 870, 870, 870, 871, + + 125, 677, 642, 779, 779, 779, 779, 779, 779, 779, + 779, 712, 1026, 713, 713, 713, 713, 713, 713, 713, + 713, 712, 176, 713, 713, 713, 713, 713, 713, 713, + 713, 904, 125, 781, 144, 782, 782, 782, 782, 782, + 782, 782, 782, 810, 811, 812, 810, 810, 810, 810, + 810, 717, 176, 718, 718, 718, 718, 718, 718, 718, + 718, 926, 143, 142, 83, 781, 1428, 783, 783, 783, + 783, 783, 783, 783, 783, 717, 1026, 718, 718, 718, + 718, 718, 718, 718, 718, 717, 176, 718, 718, 718, + 718, 718, 718, 141, 130, 867, 83, 781, 128, 784, + + 784, 784, 784, 784, 785, 782, 782, 813, 814, 815, + 813, 813, 813, 813, 813, 723, 176, 821, 821, 821, + 821, 821, 821, 125, 123, 725, 122, 845, 83, 791, + 792, 793, 791, 791, 791, 791, 791, 1033, 121, 120, + 119, 794, 794, 794, 794, 794, 831, 831, 831, 831, + 831, 831, 831, 831, 893, 893, 893, 893, 893, 894, + 794, 794, 794, 794, 794, 794, 796, 797, 798, 796, + 796, 796, 796, 796, 1428, 176, 108, 107, 799, 799, + 799, 799, 799, 1428, 867, 830, 830, 830, 830, 830, + 830, 830, 830, 106, 105, 102, 91, 799, 799, 799, + + 799, 799, 799, 392, 176, 800, 800, 800, 800, 800, + 800, 800, 800, 696, 802, 803, 804, 802, 802, 802, + 802, 802, 392, 176, 89, 87, 805, 805, 805, 805, + 805, 834, 890, 835, 835, 835, 835, 835, 835, 835, + 835, 85, 84, 83, 1428, 805, 805, 805, 805, 805, + 805, 536, 176, 806, 806, 806, 806, 806, 806, 806, + 806, 703, 817, 818, 819, 817, 817, 817, 817, 817, + 1428, 176, 1428, 1428, 820, 820, 820, 820, 820, 834, + 890, 836, 836, 836, 836, 836, 836, 836, 836, 1428, + 1428, 1428, 1428, 820, 820, 820, 820, 820, 820, 723, + + 176, 821, 821, 821, 821, 821, 821, 821, 821, 725, + 642, 1428, 828, 828, 828, 828, 828, 828, 828, 828, + 829, 1033, 1428, 1428, 830, 830, 830, 830, 830, 834, + 176, 837, 837, 837, 837, 837, 838, 835, 835, 887, + 536, 176, 1428, 830, 830, 830, 830, 830, 830, 839, + 897, 840, 840, 840, 840, 840, 840, 840, 840, 839, + 1053, 841, 841, 841, 841, 841, 841, 841, 841, 839, + 1055, 842, 842, 842, 842, 842, 843, 840, 840, 845, + 1428, 846, 846, 846, 846, 846, 846, 846, 846, 847, + 1055, 1428, 1428, 848, 848, 848, 848, 848, 849, 849, + + 849, 849, 849, 849, 849, 849, 900, 900, 900, 900, + 900, 901, 848, 848, 848, 848, 848, 848, 1428, 1428, + 848, 848, 848, 848, 848, 848, 848, 848, 852, 853, + 854, 852, 852, 852, 852, 852, 752, 560, 753, 753, + 753, 753, 753, 753, 753, 753, 752, 968, 753, 753, + 753, 753, 753, 753, 753, 753, 752, 1428, 753, 753, + 753, 753, 753, 753, 856, 857, 858, 856, 856, 856, + 856, 856, 1428, 1428, 1428, 1428, 859, 859, 859, 859, + 859, 176, 861, 861, 861, 861, 861, 861, 861, 861, + 1428, 1428, 1428, 176, 1428, 859, 859, 859, 859, 859, + + 859, 560, 897, 860, 860, 860, 860, 860, 860, 860, + 860, 759, 176, 862, 862, 862, 862, 862, 862, 862, + 862, 176, 863, 863, 863, 863, 863, 864, 861, 861, + 344, 176, 866, 866, 866, 866, 866, 866, 866, 866, + 867, 1428, 1428, 1428, 868, 868, 868, 868, 868, 869, + 869, 869, 869, 869, 869, 869, 869, 907, 907, 907, + 907, 907, 908, 868, 868, 868, 868, 868, 868, 1428, + 988, 868, 868, 868, 868, 868, 868, 868, 868, 872, + 990, 873, 873, 873, 873, 873, 873, 873, 873, 1428, + 1428, 1428, 779, 779, 779, 779, 779, 779, 779, 779, + + 877, 878, 879, 877, 877, 877, 877, 877, 1428, 1428, + 125, 872, 1428, 874, 874, 874, 874, 874, 874, 874, + 874, 125, 929, 929, 929, 929, 929, 930, 781, 83, + 782, 782, 782, 782, 782, 782, 971, 971, 971, 971, + 971, 972, 125, 872, 1428, 875, 875, 875, 875, 875, + 876, 873, 873, 993, 993, 993, 993, 993, 994, 83, + 892, 892, 892, 892, 892, 892, 892, 892, 1029, 1029, + 1029, 1029, 1029, 1030, 125, 781, 642, 782, 782, 782, + 782, 782, 782, 782, 782, 1428, 1026, 891, 891, 891, + 891, 891, 891, 891, 891, 899, 899, 899, 899, 899, + + 899, 899, 899, 1428, 1428, 1428, 83, 781, 845, 782, + 782, 782, 782, 782, 782, 782, 782, 1428, 1033, 898, + 898, 898, 898, 898, 898, 898, 898, 906, 906, 906, + 906, 906, 906, 906, 906, 1428, 1428, 1428, 83, 881, + 882, 883, 881, 881, 881, 881, 881, 884, 176, 1428, + 1428, 885, 885, 885, 885, 885, 1428, 890, 905, 905, + 905, 905, 905, 905, 905, 905, 1428, 1428, 1428, 1428, + 885, 885, 885, 885, 885, 885, 392, 176, 889, 889, + 889, 889, 889, 889, 889, 889, 890, 1428, 1428, 1428, + 891, 891, 891, 891, 891, 176, 909, 909, 909, 909, + + 909, 909, 909, 909, 1428, 1428, 1428, 1428, 1428, 891, + 891, 891, 891, 891, 891, 536, 176, 896, 896, 896, + 896, 896, 896, 896, 896, 897, 1428, 1428, 1428, 898, + 898, 898, 898, 898, 176, 910, 910, 910, 910, 910, + 910, 910, 910, 1428, 1428, 1428, 1428, 1428, 898, 898, + 898, 898, 898, 898, 723, 176, 903, 903, 903, 903, + 903, 903, 903, 903, 904, 1428, 1428, 1428, 905, 905, + 905, 905, 905, 176, 911, 911, 911, 911, 911, 912, + 909, 909, 1428, 1428, 723, 176, 1428, 905, 905, 905, + 905, 905, 905, 913, 904, 914, 914, 914, 914, 914, + + 914, 914, 914, 913, 1053, 915, 915, 915, 915, 915, + 915, 915, 915, 913, 1055, 916, 916, 916, 916, 916, + 917, 914, 914, 918, 560, 919, 919, 919, 919, 919, + 919, 919, 919, 918, 1158, 920, 920, 920, 920, 920, + 920, 920, 920, 918, 1428, 921, 921, 921, 921, 921, + 922, 919, 919, 924, 176, 925, 925, 925, 925, 925, + 925, 925, 925, 926, 1428, 1428, 1428, 927, 927, 927, + 927, 927, 928, 928, 928, 928, 928, 928, 928, 928, + 1428, 1428, 1428, 1428, 176, 1428, 927, 927, 927, 927, + 927, 927, 1428, 904, 927, 927, 927, 927, 927, 927, + + 927, 927, 936, 937, 938, 936, 936, 936, 936, 936, + 1428, 1428, 1428, 1428, 939, 939, 939, 939, 939, 946, + 947, 948, 946, 946, 946, 946, 946, 1036, 1036, 1036, + 1036, 1036, 1037, 939, 939, 939, 939, 939, 939, 941, + 942, 943, 941, 941, 941, 941, 941, 924, 176, 1428, + 1428, 944, 944, 944, 944, 944, 834, 926, 835, 835, + 835, 835, 835, 835, 835, 835, 1428, 1428, 176, 1428, + 944, 944, 944, 944, 944, 944, 642, 926, 945, 945, + 945, 945, 945, 945, 945, 945, 829, 834, 1428, 835, + 835, 835, 835, 835, 835, 835, 835, 834, 1158, 835, + + 835, 835, 835, 835, 835, 949, 950, 951, 949, 949, + 949, 949, 949, 839, 642, 840, 840, 840, 840, 840, + 840, 840, 840, 839, 1201, 840, 840, 840, 840, 840, + 840, 840, 840, 839, 1428, 840, 840, 840, 840, 840, + 840, 952, 953, 954, 952, 952, 952, 952, 952, 956, + 957, 958, 956, 956, 956, 956, 956, 344, 176, 1428, + 1428, 959, 959, 959, 959, 959, 961, 867, 962, 962, + 962, 962, 962, 962, 962, 962, 1428, 392, 176, 1428, + 959, 959, 959, 959, 959, 959, 845, 890, 960, 960, + 960, 960, 960, 960, 960, 960, 847, 961, 1428, 963, + + 963, 963, 963, 963, 963, 963, 963, 961, 1201, 964, + 964, 964, 964, 964, 965, 962, 962, 560, 845, 967, + 967, 967, 967, 967, 967, 967, 967, 968, 1208, 1428, + 1428, 969, 969, 969, 969, 969, 970, 970, 970, 970, + 970, 970, 970, 970, 1058, 1058, 1058, 1058, 1058, 1059, + 969, 969, 969, 969, 969, 969, 1428, 1428, 969, 969, + 969, 969, 969, 969, 969, 969, 176, 861, 861, 861, + 861, 861, 861, 861, 861, 176, 861, 861, 861, 861, + 861, 861, 861, 861, 176, 861, 861, 861, 861, 861, + 861, 974, 975, 976, 974, 974, 974, 974, 974, 1428, + + 1428, 1428, 1428, 977, 977, 977, 977, 977, 344, 176, + 978, 978, 978, 978, 978, 978, 1428, 1428, 867, 1428, + 1428, 1428, 977, 977, 977, 977, 977, 977, 344, 176, + 978, 978, 978, 978, 978, 978, 978, 978, 867, 979, + 980, 981, 979, 979, 979, 979, 979, 1428, 872, 1428, + 873, 873, 873, 873, 873, 873, 992, 992, 992, 992, + 992, 992, 992, 992, 1428, 1428, 1428, 1428, 125, 872, + 1428, 873, 873, 873, 873, 873, 873, 873, 873, 125, + 1428, 176, 991, 991, 991, 991, 991, 991, 991, 991, + 897, 1428, 392, 176, 1000, 1000, 1000, 1000, 1000, 1000, + + 125, 872, 890, 873, 873, 873, 873, 873, 873, 873, + 873, 536, 176, 1003, 1003, 1003, 1003, 1003, 1003, 1428, + 1428, 897, 1428, 1428, 723, 176, 1006, 1006, 1006, 1006, + 1006, 1006, 125, 982, 904, 983, 983, 983, 983, 983, + 983, 983, 983, 176, 909, 909, 909, 909, 909, 909, + 909, 909, 176, 909, 909, 909, 909, 909, 909, 909, + 909, 1428, 1428, 1428, 83, 982, 1428, 984, 984, 984, + 984, 984, 984, 984, 984, 176, 909, 909, 909, 909, + 909, 909, 1007, 1008, 1009, 1007, 1007, 1007, 1007, 1007, + 1074, 1074, 1074, 1074, 1074, 1075, 83, 982, 1428, 985, + + 985, 985, 985, 985, 986, 983, 983, 913, 1208, 914, + 914, 914, 914, 914, 914, 914, 914, 913, 176, 914, + 914, 914, 914, 914, 914, 914, 914, 904, 83, 988, + 1428, 989, 989, 989, 989, 989, 989, 989, 989, 990, + 176, 1428, 1428, 991, 991, 991, 991, 991, 913, 926, + 914, 914, 914, 914, 914, 914, 1038, 1038, 1038, 1038, + 1038, 1038, 991, 991, 991, 991, 991, 991, 392, 176, + 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 890, 536, + 176, 1003, 1003, 1003, 1003, 1003, 1003, 1003, 1003, 897, + 723, 176, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, + + 904, 1010, 1011, 1012, 1010, 1010, 1010, 1010, 1010, 918, + 1053, 919, 919, 919, 919, 919, 919, 919, 919, 918, + 1215, 919, 919, 919, 919, 919, 919, 919, 919, 918, + 1428, 919, 919, 919, 919, 919, 919, 1013, 1014, 1015, + 1013, 1013, 1013, 1013, 1013, 924, 176, 1018, 1018, 1018, + 1018, 1018, 1018, 1018, 1018, 926, 924, 176, 1018, 1018, + 1018, 1018, 1018, 1018, 1428, 1428, 926, 642, 1428, 1025, + 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1026, 1215, 1428, + 1428, 1027, 1027, 1027, 1027, 1027, 1028, 1028, 1028, 1028, + 1028, 1028, 1028, 1028, 1428, 1428, 1428, 536, 176, 1428, + + 1027, 1027, 1027, 1027, 1027, 1027, 1428, 897, 1027, 1027, + 1027, 1027, 1027, 1027, 1027, 1027, 845, 1235, 1032, 1032, + 1032, 1032, 1032, 1032, 1032, 1032, 1033, 1237, 1428, 1428, + 1034, 1034, 1034, 1034, 1034, 1035, 1035, 1035, 1035, 1035, + 1035, 1035, 1035, 1428, 1428, 1428, 723, 176, 1428, 1034, + 1034, 1034, 1034, 1034, 1034, 1428, 904, 1034, 1034, 1034, + 1034, 1034, 1034, 1034, 1034, 1038, 1038, 1038, 1038, 1038, + 1038, 1038, 1038, 1039, 1039, 1039, 1039, 1039, 1039, 1039, + 1039, 1040, 1040, 1040, 1040, 1040, 1041, 1038, 1038, 1042, + 1428, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 1042, + + 1237, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1042, + 560, 1045, 1045, 1045, 1045, 1045, 1046, 1043, 1043, 1047, + 1158, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1047, + 1273, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1047, + 1275, 1050, 1050, 1050, 1050, 1050, 1051, 1048, 1048, 1053, + 1428, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1055, + 1275, 1428, 1428, 1056, 1056, 1056, 1056, 1056, 1057, 1057, + 1057, 1057, 1057, 1057, 1057, 1057, 1428, 1428, 1428, 924, + 176, 1428, 1056, 1056, 1056, 1056, 1056, 1056, 1428, 926, + 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1060, 1061, + + 1062, 1060, 1060, 1060, 1060, 1060, 961, 642, 962, 962, + 962, 962, 962, 962, 962, 962, 961, 1201, 962, 962, + 962, 962, 962, 962, 962, 962, 961, 1428, 962, 962, + 962, 962, 962, 962, 1064, 1065, 1066, 1064, 1064, 1064, + 1064, 1064, 1428, 1428, 1428, 1428, 1067, 1067, 1067, 1067, + 1067, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1161, + 1161, 1161, 1161, 1161, 1162, 1067, 1067, 1067, 1067, 1067, + 1067, 560, 1428, 1068, 1068, 1068, 1068, 1068, 1068, 1068, + 1068, 968, 344, 176, 1070, 1070, 1070, 1070, 1070, 1070, + 1070, 1070, 1071, 176, 1428, 1428, 1072, 1072, 1072, 1072, + + 1072, 1428, 1071, 1072, 1072, 1072, 1072, 1072, 1072, 1072, + 1072, 1428, 344, 176, 1428, 1072, 1072, 1072, 1072, 1072, + 1072, 1076, 1071, 1077, 1077, 1077, 1077, 1077, 1077, 1077, + 1077, 1428, 1428, 845, 1081, 1082, 1083, 1081, 1081, 1081, + 1081, 1081, 982, 1208, 983, 983, 983, 983, 983, 983, + 1428, 1428, 125, 1076, 1428, 1078, 1078, 1078, 1078, 1078, + 1078, 1078, 1078, 83, 1084, 1085, 1086, 1084, 1084, 1084, + 1084, 1084, 1428, 83, 176, 1100, 1100, 1100, 1100, 1100, + 1100, 1100, 1100, 1428, 125, 1076, 1428, 1079, 1079, 1079, + 1079, 1079, 1080, 1077, 1077, 176, 1101, 1101, 1101, 1101, + + 1101, 1101, 1101, 1101, 176, 1102, 1102, 1102, 1102, 1102, + 1103, 1100, 1100, 1428, 1428, 1428, 125, 982, 1053, 983, + 983, 983, 983, 983, 983, 983, 983, 1104, 1215, 1105, + 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1104, 176, 1106, + 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1071, 83, 982, + 1235, 983, 983, 983, 983, 983, 983, 983, 983, 1104, + 1237, 1107, 1107, 1107, 1107, 1107, 1108, 1105, 1105, 1109, + 1428, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1428, + 83, 988, 1428, 1090, 1090, 1090, 1090, 1090, 1090, 1090, + 1090, 990, 1109, 560, 1111, 1111, 1111, 1111, 1111, 1111, + + 1111, 1111, 1109, 1306, 1112, 1112, 1112, 1112, 1112, 1113, + 1110, 1110, 1121, 1122, 1123, 1121, 1121, 1121, 1121, 1121, + 1428, 1428, 1428, 1428, 1124, 1124, 1124, 1124, 1124, 1038, + 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1204, 1204, 1204, + 1204, 1204, 1205, 1124, 1124, 1124, 1124, 1124, 1124, 1126, + 1127, 1128, 1126, 1126, 1126, 1126, 1126, 1428, 1428, 1428, + 1428, 1129, 1129, 1129, 1129, 1129, 1038, 1038, 1038, 1038, + 1038, 1038, 1038, 1038, 1428, 1428, 1428, 1428, 176, 1428, + 1129, 1129, 1129, 1129, 1129, 1129, 642, 1071, 1130, 1130, + 1130, 1130, 1130, 1130, 1130, 1130, 1026, 1132, 1133, 1134, + + 1132, 1132, 1132, 1132, 1132, 1428, 1428, 1428, 1428, 1135, + 1135, 1135, 1135, 1135, 1137, 1138, 1139, 1137, 1137, 1137, + 1137, 1137, 1211, 1211, 1211, 1211, 1211, 1212, 1135, 1135, + 1135, 1135, 1135, 1135, 845, 1428, 1136, 1136, 1136, 1136, + 1136, 1136, 1136, 1136, 1033, 1042, 1428, 1043, 1043, 1043, + 1043, 1043, 1043, 1043, 1043, 1042, 1306, 1043, 1043, 1043, + 1043, 1043, 1043, 1043, 1043, 1042, 1428, 1043, 1043, 1043, + 1043, 1043, 1043, 1140, 1141, 1142, 1140, 1140, 1140, 1140, + 1140, 1047, 1273, 1048, 1048, 1048, 1048, 1048, 1048, 1048, + 1048, 1047, 1275, 1048, 1048, 1048, 1048, 1048, 1048, 1048, + + 1048, 1047, 1428, 1048, 1048, 1048, 1048, 1048, 1048, 1143, + 1144, 1145, 1143, 1143, 1143, 1143, 1143, 1147, 1148, 1149, + 1147, 1147, 1147, 1147, 1147, 1428, 1428, 1428, 1428, 1150, + 1150, 1150, 1150, 1150, 1152, 1152, 1152, 1152, 1152, 1152, + 1152, 1152, 1218, 1218, 1218, 1218, 1218, 1219, 1150, 1150, + 1150, 1150, 1150, 1150, 1053, 1428, 1151, 1151, 1151, 1151, + 1151, 1151, 1151, 1151, 1055, 1153, 1153, 1153, 1153, 1153, + 1153, 1153, 1153, 1154, 1154, 1154, 1154, 1154, 1155, 1152, + 1152, 560, 560, 1157, 1157, 1157, 1157, 1157, 1157, 1157, + 1157, 1158, 1306, 1428, 1428, 1159, 1159, 1159, 1159, 1159, + + 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1240, 1240, + 1240, 1240, 1240, 1241, 1159, 1159, 1159, 1159, 1159, 1159, + 1428, 1428, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, + 344, 176, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, + 1071, 344, 176, 1165, 1165, 1165, 1165, 1165, 1165, 1428, + 1428, 1071, 1166, 1167, 1168, 1166, 1166, 1166, 1166, 1166, + 1428, 1076, 1428, 1077, 1077, 1077, 1077, 1077, 1077, 1169, + 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1428, 1428, 1428, + 1428, 125, 1076, 1428, 1077, 1077, 1077, 1077, 1077, 1077, + 1077, 1077, 125, 1428, 1428, 1428, 1428, 1428, 83, 1081, + + 1081, 1081, 1081, 1081, 1081, 1081, 1081, 1152, 1152, 1152, + 1152, 1152, 1152, 125, 1076, 1428, 1077, 1077, 1077, 1077, + 1077, 1077, 1077, 1077, 1428, 1428, 1428, 1428, 83, 1170, + 1170, 1170, 1170, 1170, 1171, 1169, 1169, 176, 1100, 1100, + 1100, 1100, 1100, 1100, 1172, 125, 1173, 1173, 1173, 1173, + 1173, 1173, 1173, 1173, 1428, 1428, 1428, 1172, 83, 1174, + 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1172, 1428, 1175, + 1175, 1175, 1175, 1175, 1176, 1173, 1173, 176, 1100, 1100, + 1100, 1100, 1100, 1100, 1100, 1100, 176, 1100, 1100, 1100, + 1100, 1100, 1100, 1100, 1100, 1184, 1185, 1186, 1184, 1184, + + 1184, 1184, 1184, 1104, 1428, 1105, 1105, 1105, 1105, 1105, + 1105, 1105, 1105, 1104, 1428, 1105, 1105, 1105, 1105, 1105, + 1105, 1105, 1105, 1104, 1428, 1105, 1105, 1105, 1105, 1105, + 1105, 1187, 1188, 1189, 1187, 1187, 1187, 1187, 1187, 1109, + 1428, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1109, + 1428, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1109, + 1428, 1110, 1110, 1110, 1110, 1110, 1110, 1192, 1193, 1194, + 1192, 1192, 1192, 1192, 1192, 1195, 1428, 1428, 1428, 1196, + 1196, 1196, 1196, 1196, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1428, 1428, 1428, 344, 176, 1428, 1196, 1196, + + 1196, 1196, 1196, 1196, 642, 1071, 1200, 1200, 1200, 1200, + 1200, 1200, 1200, 1200, 1201, 1428, 1428, 1428, 1202, 1202, + 1202, 1202, 1202, 1428, 1428, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1428, 1428, 1428, 1428, 1202, 1202, 1202, + 1202, 1202, 1202, 845, 1428, 1207, 1207, 1207, 1207, 1207, + 1207, 1207, 1207, 1208, 1428, 1428, 1428, 1209, 1209, 1209, + 1209, 1209, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, + 1278, 1278, 1278, 1278, 1278, 1279, 1209, 1209, 1209, 1209, + 1209, 1209, 1428, 1428, 1209, 1209, 1209, 1209, 1209, 1209, + 1209, 1209, 1053, 1428, 1214, 1214, 1214, 1214, 1214, 1214, + + 1214, 1214, 1215, 1428, 1428, 1428, 1216, 1216, 1216, 1216, + 1216, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1220, + 1220, 1220, 1220, 1220, 1220, 1216, 1216, 1216, 1216, 1216, + 1216, 1428, 1428, 1216, 1216, 1216, 1216, 1216, 1216, 1216, + 1216, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1221, + 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1222, 1222, 1222, + 1222, 1222, 1223, 1220, 1220, 1224, 1428, 1225, 1225, 1225, + 1225, 1225, 1225, 1225, 1225, 1224, 1428, 1226, 1226, 1226, + 1226, 1226, 1226, 1226, 1226, 1224, 1428, 1227, 1227, 1227, + 1227, 1227, 1228, 1225, 1225, 1229, 1428, 1230, 1230, 1230, + + 1230, 1230, 1230, 1230, 1230, 1229, 1428, 1231, 1231, 1231, + 1231, 1231, 1231, 1231, 1231, 1229, 1428, 1232, 1232, 1232, + 1232, 1232, 1233, 1230, 1230, 1235, 1428, 1236, 1236, 1236, + 1236, 1236, 1236, 1236, 1236, 1237, 1428, 1428, 1428, 1238, + 1238, 1238, 1238, 1238, 1239, 1239, 1239, 1239, 1239, 1239, + 1239, 1239, 1309, 1309, 1309, 1309, 1309, 1310, 1238, 1238, + 1238, 1238, 1238, 1238, 1428, 1428, 1238, 1238, 1238, 1238, + 1238, 1238, 1238, 1238, 1152, 1152, 1152, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, + 1243, 1244, 1245, 1243, 1243, 1243, 1243, 1243, 1428, 1428, + + 1428, 1428, 1246, 1246, 1246, 1246, 1246, 1428, 1428, 1250, + 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1428, 1428, 1428, + 1428, 1246, 1246, 1246, 1246, 1246, 1246, 560, 1428, 1247, + 1247, 1247, 1247, 1247, 1247, 1247, 1247, 1158, 125, 1166, + 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1251, 1251, 1251, + 1251, 1251, 1252, 1250, 1250, 1169, 1169, 1169, 1169, 1169, + 1169, 1169, 1169, 1428, 1428, 1428, 1428, 1428, 125, 1169, + 1169, 1169, 1169, 1169, 1169, 1172, 125, 1173, 1173, 1173, + 1173, 1173, 1173, 1428, 83, 1253, 1254, 1255, 1253, 1253, + 1253, 1253, 1253, 1428, 1428, 1428, 1428, 1172, 83, 1173, + + 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1172, 1428, 1173, + 1173, 1173, 1173, 1173, 1173, 1173, 1173, 176, 1262, 1262, + 1262, 1262, 1262, 1262, 1262, 1262, 176, 1263, 1263, 1263, + 1263, 1263, 1263, 1263, 1263, 176, 1264, 1264, 1264, 1264, + 1264, 1265, 1262, 1262, 1266, 1428, 1267, 1267, 1267, 1267, + 1267, 1267, 1267, 1267, 1266, 1428, 1268, 1268, 1268, 1268, + 1268, 1268, 1268, 1268, 1266, 1428, 1269, 1269, 1269, 1269, + 1269, 1270, 1267, 1267, 1273, 1428, 1274, 1274, 1274, 1274, + 1274, 1274, 1274, 1274, 1275, 1428, 1428, 1428, 1276, 1276, + 1276, 1276, 1276, 1277, 1277, 1277, 1277, 1277, 1277, 1277, + + 1277, 1336, 1336, 1336, 1336, 1336, 1336, 1276, 1276, 1276, + 1276, 1276, 1276, 1428, 1428, 1276, 1276, 1276, 1276, 1276, + 1276, 1276, 1276, 642, 1428, 1285, 1285, 1285, 1285, 1285, + 1285, 1285, 1285, 1201, 845, 1428, 1288, 1288, 1288, 1288, + 1288, 1288, 1288, 1288, 1208, 1053, 1428, 1291, 1291, 1291, + 1291, 1291, 1291, 1291, 1291, 1215, 1220, 1220, 1220, 1220, + 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, + 1220, 1220, 1292, 1293, 1294, 1292, 1292, 1292, 1292, 1292, + 1224, 1428, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + 1224, 1428, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, + + 1224, 1428, 1225, 1225, 1225, 1225, 1225, 1225, 1295, 1296, + 1297, 1295, 1295, 1295, 1295, 1295, 1229, 1428, 1230, 1230, + 1230, 1230, 1230, 1230, 1230, 1230, 1229, 1428, 1230, 1230, + 1230, 1230, 1230, 1230, 1230, 1230, 1229, 1428, 1230, 1230, + 1230, 1230, 1230, 1230, 1298, 1299, 1300, 1298, 1298, 1298, + 1298, 1298, 1235, 1428, 1303, 1303, 1303, 1303, 1303, 1303, + 1303, 1303, 1237, 560, 1428, 1305, 1305, 1305, 1305, 1305, + 1305, 1305, 1305, 1306, 1428, 1428, 1428, 1307, 1307, 1307, + 1307, 1307, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, + 1397, 1397, 1397, 1397, 1397, 1397, 1307, 1307, 1307, 1307, + + 1307, 1307, 1428, 1428, 1307, 1307, 1307, 1307, 1307, 1307, + 1307, 1307, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, + 1250, 1250, 1250, 1250, 1250, 1250, 1312, 1428, 1313, 1313, + 1313, 1313, 1313, 1313, 1313, 1313, 1428, 1428, 1428, 1428, + 1266, 125, 1267, 1267, 1267, 1267, 1267, 1267, 1312, 125, + 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1312, 1428, + 1315, 1315, 1315, 1315, 1315, 1316, 1313, 1313, 176, 1262, + 1262, 1262, 1262, 1262, 1262, 1262, 1262, 176, 1262, 1262, + 1262, 1262, 1262, 1262, 1262, 1262, 176, 1262, 1262, 1262, + 1262, 1262, 1262, 1317, 1318, 1319, 1317, 1317, 1317, 1317, + + 1317, 1266, 1428, 1267, 1267, 1267, 1267, 1267, 1267, 1267, + 1267, 1266, 1428, 1267, 1267, 1267, 1267, 1267, 1267, 1267, + 1267, 1320, 1321, 1322, 1320, 1320, 1320, 1320, 1320, 1273, + 1428, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1326, 1275, + 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1337, 1337, + 1337, 1337, 1337, 1337, 1337, 1337, 1338, 1338, 1338, 1338, + 1338, 1339, 1336, 1336, 1340, 1428, 1341, 1341, 1341, 1341, + 1341, 1341, 1341, 1341, 1340, 1428, 1342, 1342, 1342, 1342, + 1342, 1342, 1342, 1342, 1340, 1428, 1343, 1343, 1343, 1343, + 1343, 1344, 1341, 1341, 1345, 1428, 1346, 1346, 1346, 1346, + + 1346, 1346, 1346, 1346, 1345, 1428, 1347, 1347, 1347, 1347, + 1347, 1347, 1347, 1347, 1345, 1428, 1348, 1348, 1348, 1348, + 1348, 1349, 1346, 1346, 560, 1428, 1354, 1354, 1354, 1354, + 1354, 1354, 1354, 1354, 1306, 1356, 1357, 1358, 1356, 1356, + 1356, 1356, 1356, 1312, 1428, 1313, 1313, 1313, 1313, 1313, + 1313, 1313, 1313, 1312, 1428, 1313, 1313, 1313, 1313, 1313, + 1313, 1313, 1313, 1312, 1428, 1313, 1313, 1313, 1313, 1313, + 1313, 176, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, + 176, 1360, 1360, 1360, 1360, 1360, 1360, 1360, 1360, 176, + 1361, 1361, 1361, 1361, 1361, 1362, 1359, 1359, 1363, 1428, + + 1364, 1364, 1364, 1364, 1364, 1364, 1364, 1364, 1363, 1428, + 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1363, 1428, + 1366, 1366, 1366, 1366, 1366, 1367, 1364, 1364, 1336, 1336, + 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, + 1336, 1336, 1336, 1336, 1375, 1376, 1377, 1375, 1375, 1375, + 1375, 1375, 1340, 1428, 1341, 1341, 1341, 1341, 1341, 1341, + 1341, 1341, 1340, 1428, 1341, 1341, 1341, 1341, 1341, 1341, + 1341, 1341, 1340, 1428, 1341, 1341, 1341, 1341, 1341, 1341, + 1378, 1379, 1380, 1378, 1378, 1378, 1378, 1378, 1345, 1428, + 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1345, 1428, + + 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1345, 1428, + 1346, 1346, 1346, 1346, 1346, 1346, 176, 1384, 1384, 1384, + 1384, 1384, 1384, 1384, 1384, 176, 1385, 1385, 1385, 1385, + 1385, 1385, 1385, 1385, 176, 1386, 1386, 1386, 1386, 1386, + 1387, 1384, 1384, 176, 1359, 1359, 1359, 1359, 1359, 1359, + 1359, 1359, 176, 1359, 1359, 1359, 1359, 1359, 1359, 1359, + 1359, 176, 1359, 1359, 1359, 1359, 1359, 1359, 1388, 1389, + 1390, 1388, 1388, 1388, 1388, 1388, 1363, 1428, 1364, 1364, + 1364, 1364, 1364, 1364, 1364, 1364, 1363, 1428, 1364, 1364, + 1364, 1364, 1364, 1364, 1364, 1364, 1363, 1428, 1364, 1364, + + 1364, 1364, 1364, 1364, 1397, 1397, 1397, 1397, 1397, 1397, + 1397, 1397, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, + 1399, 1399, 1399, 1399, 1399, 1400, 1397, 1397, 1401, 1428, + 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1401, 1428, + 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1401, 1428, + 1404, 1404, 1404, 1404, 1404, 1405, 1402, 1402, 176, 1384, + 1384, 1384, 1384, 1384, 1384, 1384, 1384, 176, 1384, 1384, + 1384, 1384, 1384, 1384, 1384, 1384, 176, 1384, 1384, 1384, + 1384, 1384, 1384, 1408, 1428, 1409, 1409, 1409, 1409, 1409, + 1409, 1409, 1409, 1408, 1428, 1410, 1410, 1410, 1410, 1410, + + 1410, 1410, 1410, 1408, 1428, 1411, 1411, 1411, 1411, 1411, + 1412, 1409, 1409, 1397, 1397, 1397, 1397, 1397, 1397, 1397, + 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1413, + 1414, 1415, 1413, 1413, 1413, 1413, 1413, 1401, 1428, 1402, + 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1401, 1428, 1402, + 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1401, 1428, 1402, + 1402, 1402, 1402, 1402, 1402, 1417, 1418, 1419, 1417, 1417, + 1417, 1417, 1417, 1408, 1428, 1409, 1409, 1409, 1409, 1409, + 1409, 1409, 1409, 1408, 1428, 1409, 1409, 1409, 1409, 1409, + 1409, 1409, 1409, 1408, 1428, 1409, 1409, 1409, 1409, 1409, + + 1409, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1421, + 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1422, 1422, 1422, + 1422, 1422, 1423, 1420, 1420, 1424, 1424, 1424, 1424, 1424, + 1424, 1424, 1424, 1425, 1425, 1425, 1425, 1425, 1425, 1425, + 1425, 1426, 1426, 1426, 1426, 1426, 1427, 1424, 1424, 1420, + 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, + 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, + 1420, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, + 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, 1424, + 1424, 1424, 1424, 67, 67, 67, 67, 67, 67, 67, + + 67, 67, 67, 67, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 75, 75, 75, 75, 75, + 75, 75, 75, 75, 75, 75, 82, 1428, 1428, 1428, + 82, 82, 82, 1428, 82, 82, 82, 86, 86, 86, + 86, 86, 86, 86, 86, 86, 86, 86, 88, 1428, + 1428, 1428, 88, 88, 88, 1428, 88, 88, 88, 90, + 1428, 1428, 1428, 90, 90, 90, 1428, 90, 90, 90, + 92, 1428, 92, 1428, 92, 92, 92, 1428, 92, 92, + 92, 124, 1428, 1428, 1428, 124, 124, 124, 1428, 124, + 124, 124, 127, 1428, 1428, 1428, 127, 127, 127, 1428, + + 127, 127, 127, 129, 1428, 1428, 1428, 129, 129, 129, + 1428, 129, 129, 129, 131, 1428, 131, 1428, 131, 131, + 131, 1428, 131, 131, 131, 148, 1428, 148, 1428, 148, + 148, 148, 1428, 148, 148, 148, 152, 1428, 152, 152, + 152, 152, 152, 1428, 1428, 152, 152, 158, 158, 159, + 1428, 159, 1428, 159, 159, 159, 159, 159, 159, 159, + 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, + 161, 166, 166, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 93, 1428, 93, 1428, 93, 93, 93, 1428, + 93, 93, 93, 173, 173, 1428, 1428, 173, 177, 177, + + 1428, 1428, 1428, 177, 149, 1428, 149, 1428, 149, 149, + 149, 1428, 149, 149, 149, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 223, 223, 1428, 1428, + 223, 234, 234, 234, 1428, 1428, 234, 272, 272, 1428, + 1428, 272, 273, 273, 1428, 1428, 273, 282, 282, 1428, + 1428, 282, 288, 288, 288, 1428, 1428, 288, 322, 322, + 1428, 1428, 322, 323, 323, 1428, 1428, 323, 332, 332, + 332, 332, 1428, 1428, 332, 338, 338, 1428, 1428, 338, + 339, 339, 1428, 1428, 339, 342, 1428, 1428, 1428, 342, + 343, 343, 343, 1428, 1428, 343, 377, 377, 1428, 1428, + + 377, 378, 378, 1428, 1428, 378, 391, 391, 391, 1428, + 1428, 391, 399, 399, 1428, 1428, 399, 400, 400, 1428, + 1428, 400, 406, 406, 1428, 1428, 406, 411, 411, 411, + 411, 1428, 1428, 411, 443, 443, 1428, 1428, 443, 444, + 444, 1428, 1428, 444, 446, 446, 1428, 1428, 1428, 446, + 447, 447, 447, 447, 1428, 1428, 447, 459, 459, 459, + 459, 1428, 1428, 459, 465, 465, 1428, 1428, 465, 466, + 466, 1428, 1428, 466, 475, 475, 1428, 1428, 475, 485, + 485, 485, 1428, 1428, 485, 513, 513, 1428, 1428, 513, + 514, 514, 1428, 1428, 514, 516, 516, 516, 1428, 1428, + + 516, 518, 518, 518, 1428, 1428, 518, 535, 535, 535, + 1428, 1428, 535, 543, 543, 1428, 1428, 543, 544, 544, + 1428, 1428, 544, 553, 1428, 553, 553, 1428, 1428, 553, + 559, 559, 1428, 1428, 559, 570, 570, 570, 570, 1428, + 1428, 570, 86, 86, 86, 86, 86, 86, 86, 86, + 86, 86, 86, 597, 597, 1428, 1428, 597, 598, 598, + 1428, 1428, 598, 600, 600, 1428, 1428, 1428, 600, 601, + 601, 601, 1428, 1428, 601, 606, 606, 606, 606, 1428, + 1428, 606, 621, 621, 621, 621, 1428, 1428, 621, 627, + 627, 1428, 1428, 627, 628, 628, 1428, 1428, 628, 641, + + 641, 1428, 1428, 641, 652, 1428, 652, 652, 1428, 1428, + 652, 663, 663, 663, 1428, 1428, 663, 86, 86, 86, + 86, 86, 86, 86, 86, 86, 86, 86, 82, 1428, + 1428, 1428, 82, 82, 82, 1428, 82, 82, 82, 673, + 1428, 1428, 1428, 673, 673, 673, 1428, 673, 673, 673, + 675, 1428, 1428, 1428, 675, 675, 675, 1428, 675, 675, + 675, 124, 1428, 1428, 1428, 124, 124, 124, 1428, 124, + 124, 124, 689, 689, 1428, 1428, 689, 690, 690, 1428, + 1428, 690, 692, 692, 692, 1428, 1428, 692, 694, 694, + 694, 1428, 1428, 694, 701, 701, 701, 1428, 1428, 701, + + 722, 722, 722, 1428, 1428, 722, 730, 730, 1428, 1428, + 730, 731, 731, 1428, 1428, 731, 733, 1428, 1428, 1428, + 733, 734, 1428, 734, 734, 1428, 1428, 734, 746, 1428, + 746, 746, 1428, 1428, 746, 757, 757, 1428, 1428, 757, + 767, 767, 767, 767, 1428, 1428, 767, 774, 774, 774, + 774, 774, 774, 774, 774, 774, 774, 774, 82, 1428, + 1428, 1428, 82, 82, 82, 1428, 82, 82, 82, 673, + 1428, 1428, 1428, 673, 673, 673, 1428, 673, 673, 673, + 675, 1428, 1428, 1428, 675, 675, 675, 1428, 675, 675, + 675, 124, 1428, 1428, 1428, 124, 124, 124, 1428, 124, + + 124, 124, 786, 786, 1428, 1428, 786, 787, 787, 1428, + 1428, 787, 789, 789, 1428, 1428, 1428, 789, 790, 790, + 790, 1428, 1428, 790, 795, 795, 795, 795, 1428, 1428, + 795, 801, 801, 801, 801, 1428, 1428, 801, 816, 816, + 816, 816, 1428, 1428, 816, 822, 822, 1428, 1428, 822, + 823, 823, 1428, 1428, 823, 825, 825, 1428, 1428, 825, + 827, 827, 1428, 1428, 827, 844, 844, 1428, 1428, 844, + 855, 1428, 855, 855, 1428, 1428, 855, 865, 865, 865, + 1428, 1428, 865, 774, 774, 774, 774, 774, 774, 774, + 774, 774, 774, 774, 124, 1428, 1428, 1428, 124, 124, + + 124, 1428, 124, 124, 124, 82, 1428, 1428, 1428, 82, + 82, 82, 1428, 82, 82, 82, 880, 880, 1428, 1428, + 880, 886, 886, 886, 1428, 1428, 886, 888, 888, 888, + 1428, 1428, 888, 895, 895, 895, 1428, 1428, 895, 902, + 902, 902, 1428, 1428, 902, 923, 923, 923, 1428, 1428, + 923, 931, 931, 1428, 1428, 931, 932, 932, 1428, 1428, + 932, 934, 1428, 1428, 1428, 934, 935, 935, 1428, 1428, + 935, 940, 1428, 940, 940, 1428, 1428, 940, 955, 1428, + 955, 955, 1428, 1428, 955, 966, 966, 1428, 1428, 966, + 973, 973, 973, 973, 1428, 1428, 973, 124, 1428, 1428, + + 1428, 124, 124, 124, 1428, 124, 124, 124, 82, 1428, + 1428, 1428, 82, 82, 82, 1428, 82, 82, 82, 987, + 987, 1428, 1428, 987, 995, 995, 1428, 1428, 1428, 995, + 996, 996, 996, 1428, 1428, 996, 997, 1428, 1428, 1428, + 997, 998, 998, 998, 998, 1428, 1428, 998, 999, 1428, + 1428, 1428, 999, 1001, 1001, 1001, 1001, 1428, 1428, 1001, + 1002, 1428, 1428, 1428, 1002, 1004, 1004, 1004, 1004, 1428, + 1428, 1004, 1005, 1428, 1428, 1428, 1005, 1016, 1016, 1016, + 1016, 1428, 1428, 1016, 1017, 1428, 1428, 1428, 1017, 1019, + 1019, 1428, 1428, 1019, 1020, 1020, 1428, 1428, 1020, 1022, + + 1022, 1428, 1428, 1022, 1024, 1024, 1428, 1428, 1024, 1031, + 1031, 1428, 1428, 1031, 1052, 1052, 1428, 1428, 1052, 1063, + 1428, 1063, 1063, 1428, 1428, 1063, 1069, 1069, 1069, 1428, + 1428, 1069, 124, 1428, 1428, 1428, 124, 124, 124, 1428, + 124, 124, 124, 82, 1428, 1428, 1428, 82, 82, 82, + 1428, 82, 82, 82, 1087, 1428, 1087, 1087, 1428, 1428, + 1087, 1088, 1088, 1428, 1428, 1088, 1091, 1091, 1428, 1428, + 1428, 1091, 1092, 1092, 1092, 1428, 1428, 1092, 1093, 1093, + 1428, 1428, 1428, 1093, 1094, 1094, 1094, 1428, 1428, 1094, + 1095, 1095, 1428, 1428, 1428, 1095, 1096, 1096, 1096, 1428, + + 1428, 1096, 1097, 1097, 1428, 1428, 1428, 1097, 1098, 1098, + 1098, 1428, 1428, 1098, 1099, 1099, 1428, 1428, 1428, 1099, + 1114, 1114, 1114, 1428, 1428, 1114, 1115, 1115, 1428, 1428, + 1428, 1115, 1116, 1116, 1428, 1428, 1116, 1117, 1117, 1428, + 1428, 1117, 1119, 1428, 1428, 1428, 1119, 1120, 1120, 1428, + 1428, 1120, 1125, 1428, 1125, 1125, 1428, 1428, 1125, 1131, + 1428, 1131, 1131, 1428, 1428, 1131, 1146, 1428, 1146, 1146, + 1428, 1428, 1146, 1156, 1156, 1428, 1428, 1156, 1163, 1163, + 1163, 1163, 1428, 1428, 1163, 1164, 1428, 1428, 1428, 1164, + 124, 1428, 1428, 1428, 124, 124, 124, 1428, 124, 124, + + 124, 82, 1428, 1428, 1428, 82, 82, 82, 1428, 82, + 82, 82, 1177, 1177, 1428, 1428, 1177, 1178, 1178, 1428, + 1428, 1428, 1178, 1179, 1179, 1428, 1428, 1428, 1179, 1180, + 1180, 1428, 1428, 1428, 1180, 1181, 1181, 1428, 1428, 1428, + 1181, 1182, 1182, 1428, 1428, 1428, 1182, 1183, 1183, 1428, + 1428, 1428, 1183, 1190, 1190, 1428, 1428, 1428, 1190, 1191, + 1191, 1428, 1428, 1191, 1197, 1197, 1428, 1428, 1197, 1199, + 1199, 1428, 1428, 1199, 1206, 1206, 1428, 1428, 1206, 1213, + 1213, 1428, 1428, 1213, 1234, 1234, 1428, 1428, 1234, 1242, + 1428, 1242, 1242, 1428, 1428, 1242, 1248, 1248, 1248, 1428, + + 1428, 1248, 1249, 1249, 1428, 1428, 1428, 1249, 124, 1428, + 1428, 1428, 124, 124, 124, 1428, 124, 124, 124, 82, + 1428, 1428, 1428, 82, 82, 82, 1428, 82, 82, 82, + 1256, 1256, 1428, 1428, 1428, 1256, 1257, 1257, 1428, 1428, + 1428, 1257, 1258, 1258, 1428, 1428, 1428, 1258, 1259, 1259, + 1428, 1428, 1428, 1259, 1260, 1260, 1428, 1428, 1428, 1260, + 1261, 1261, 1428, 1428, 1428, 1261, 1271, 1271, 1428, 1428, + 1428, 1271, 1272, 1272, 1428, 1428, 1272, 1280, 1428, 1428, + 1428, 1280, 1281, 1281, 1428, 1428, 1281, 1282, 1428, 1428, + 1428, 1282, 1283, 1428, 1283, 1283, 1428, 1428, 1283, 1284, + + 1428, 1428, 1428, 1284, 1286, 1428, 1286, 1286, 1428, 1428, + 1286, 1287, 1428, 1428, 1428, 1287, 1289, 1428, 1289, 1289, + 1428, 1428, 1289, 1290, 1428, 1428, 1428, 1290, 1301, 1428, + 1301, 1301, 1428, 1428, 1301, 1302, 1428, 1428, 1428, 1302, + 1304, 1304, 1428, 1428, 1304, 1311, 1311, 1428, 1428, 1428, + 1311, 124, 1428, 1428, 1428, 124, 124, 124, 1428, 124, + 124, 124, 1089, 1089, 1428, 1428, 1428, 1089, 1323, 1428, + 1323, 1323, 1428, 1428, 1323, 1324, 1324, 1428, 1428, 1324, + 1327, 1428, 1428, 1428, 1327, 1328, 1328, 1428, 1428, 1328, + 1329, 1428, 1428, 1428, 1329, 1330, 1330, 1428, 1428, 1330, + + 1331, 1428, 1428, 1428, 1331, 1332, 1332, 1428, 1428, 1332, + 1333, 1428, 1428, 1428, 1333, 1334, 1334, 1428, 1428, 1334, + 1335, 1428, 1428, 1428, 1335, 1350, 1350, 1428, 1428, 1350, + 1351, 1428, 1428, 1428, 1351, 1352, 1428, 1352, 1352, 1428, + 1428, 1352, 1353, 1428, 1428, 1428, 1353, 1355, 1355, 1428, + 1428, 1428, 1355, 1368, 1368, 1428, 1428, 1368, 1369, 1428, + 1428, 1428, 1369, 1370, 1428, 1428, 1428, 1370, 1371, 1428, + 1428, 1428, 1371, 1372, 1428, 1428, 1428, 1372, 1373, 1428, + 1428, 1428, 1373, 1374, 1428, 1428, 1428, 1374, 1381, 1428, + 1428, 1428, 1381, 1382, 1382, 1428, 1428, 1382, 1383, 1428, + + 1428, 1428, 1383, 1391, 1428, 1428, 1428, 1391, 1392, 1428, + 1428, 1428, 1392, 1393, 1428, 1428, 1428, 1393, 1394, 1428, + 1428, 1428, 1394, 1395, 1428, 1428, 1428, 1395, 1396, 1428, + 1428, 1428, 1396, 1406, 1428, 1428, 1428, 1406, 1407, 1428, + 1428, 1428, 1407, 1325, 1428, 1428, 1428, 1325, 1416, 1428, + 1428, 1428, 1416, 13, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428 } ; -static yyconst short int yy_chk[10433] = +static yyconst short int yy_chk[10317] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -2043,1148 +2019,1135 @@ static yyconst short int yy_chk[10433] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 2, 201, 39, 201, 2, 26, - 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, - 27, 27, 27, 39, 54, 54, 54, 54, 54, 54, - 54, 54, 2, 2, 75, 75, 2, 83, 83, 114, + 1, 1, 2, 195, 38, 195, 2, 26, 26, 26, + 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, + 27, 38, 53, 53, 53, 53, 53, 53, 53, 53, + 2, 2, 73, 73, 2, 81, 81, 1409, 2, 154, - 158, 158, 2, 1441, 114, 2, 3, 3, 3, 3, + 154, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 5, 6, 41, 79, 5, 6, 5, 6, 7, 7, - 7, 24, 7, 5, 6, 24, 24, 124, 7, 8, - 8, 8, 121, 8, 122, 79, 112, 112, 123, 8, - - 7, 7, 124, 24, 52, 1434, 122, 81, 52, 52, - 65, 8, 8, 38, 40, 38, 38, 38, 38, 38, - 38, 38, 38, 7, 24, 41, 52, 65, 67, 81, - 5, 6, 67, 67, 8, 9, 9, 9, 123, 9, - 202, 112, 40, 40, 150, 126, 40, 52, 121, 150, - 67, 126, 40, 48, 202, 40, 48, 48, 48, 48, - 48, 48, 48, 48, 55, 55, 55, 55, 55, 55, - 64, 67, 64, 64, 64, 64, 64, 64, 64, 64, + 3, 3, 3, 3, 5, 6, 77, 40, 5, 6, + 5, 6, 7, 7, 7, 24, 7, 5, 6, 24, + 24, 39, 7, 8, 8, 8, 77, 8, 118, 121, + 63, 66, 79, 8, 7, 7, 252, 24, 54, 54, + + 54, 54, 54, 54, 121, 8, 8, 63, 66, 39, + 39, 252, 79, 39, 106, 7, 24, 39, 40, 106, + 39, 106, 5, 6, 157, 157, 8, 9, 9, 9, + 37, 9, 37, 37, 37, 37, 37, 37, 37, 37, + 47, 1402, 118, 47, 47, 47, 47, 47, 47, 47, + 47, 62, 305, 62, 62, 62, 62, 62, 62, 62, + 62, 99, 99, 99, 99, 99, 99, 99, 99, 305, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, - - 10, 68, 10, 85, 125, 85, 155, 85, 109, 85, - 85, 155, 109, 85, 1416, 109, 125, 109, 68, 103, - 103, 103, 103, 103, 103, 85, 85, 85, 141, 141, - 141, 141, 141, 141, 1414, 97, 97, 97, 97, 97, - 97, 97, 97, 10, 10, 10, 10, 10, 10, 10, - 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, - 10, 11, 11, 11, 11, 11, 97, 197, 149, 149, - 11, 11, 11, 161, 161, 74, 74, 74, 164, 74, - 166, 226, 164, 74, 11, 74, 181, 146, 164, 78, - 78, 146, 78, 78, 146, 181, 146, 74, 74, 78, - - 198, 164, 167, 1400, 167, 198, 11, 12, 12, 12, - 12, 12, 78, 149, 226, 197, 12, 12, 12, 91, - 74, 91, 166, 91, 191, 91, 91, 171, 171, 91, - 12, 200, 217, 253, 78, 262, 222, 191, 219, 253, - 318, 91, 91, 91, 94, 217, 167, 200, 94, 94, - 262, 219, 12, 25, 1396, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 259, 242, 94, 25, 25, 25, - 25, 25, 171, 93, 242, 93, 230, 93, 222, 93, - 93, 260, 260, 93, 498, 498, 25, 94, 25, 25, - 25, 25, 25, 25, 30, 93, 93, 93, 30, 230, - - 30, 318, 1391, 30, 30, 1387, 30, 30, 30, 30, - 30, 30, 30, 30, 30, 30, 30, 30, 259, 1384, + 10, 83, 10, 83, 111, 83, 119, 83, 83, 111, + + 89, 83, 89, 123, 89, 222, 89, 89, 119, 123, + 89, 109, 109, 83, 83, 83, 101, 101, 101, 101, + 101, 101, 89, 89, 89, 120, 222, 145, 145, 191, + 1384, 10, 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, + 11, 11, 11, 11, 109, 122, 177, 51, 11, 11, + 11, 51, 51, 120, 65, 177, 142, 122, 65, 65, + 145, 142, 11, 142, 162, 191, 1382, 76, 76, 51, + 76, 76, 214, 1368, 92, 146, 65, 76, 92, 92, + 146, 258, 11, 12, 12, 12, 12, 12, 51, 112, + + 76, 1364, 12, 12, 12, 65, 92, 72, 72, 72, + 185, 72, 258, 151, 162, 72, 12, 72, 151, 196, + 76, 209, 214, 185, 163, 92, 163, 112, 112, 72, + 72, 112, 194, 196, 209, 112, 12, 25, 112, 25, + 25, 25, 25, 25, 25, 25, 25, 25, 194, 249, + 72, 25, 25, 25, 25, 25, 211, 237, 95, 95, + 95, 95, 95, 95, 95, 95, 163, 306, 25, 211, + 25, 25, 25, 25, 25, 25, 30, 306, 192, 237, + 30, 1359, 30, 192, 361, 30, 30, 95, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, + + 361, 249, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 239, 239, 239, - 32, 32, 32, 32, 32, 101, 101, 101, 101, 101, - 101, 101, 101, 102, 102, 102, 102, 102, 102, 102, - 102, 32, 32, 32, 32, 32, 32, 37, 37, 37, - - 264, 37, 377, 37, 37, 129, 1382, 37, 129, 129, - 129, 129, 129, 129, 129, 129, 319, 334, 268, 37, - 37, 37, 53, 245, 53, 53, 53, 53, 53, 53, - 53, 53, 53, 264, 270, 319, 53, 53, 53, 53, - 53, 268, 96, 320, 96, 245, 96, 261, 96, 96, - 334, 377, 96, 320, 1378, 53, 270, 53, 53, 53, - 53, 53, 53, 56, 96, 96, 96, 56, 278, 56, - 261, 1373, 56, 56, 278, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 56, 56, 261, 1366, 56, - 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, - - 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, - 56, 56, 56, 56, 56, 56, 56, 58, 58, 58, - 58, 58, 58, 58, 58, 58, 300, 305, 279, 58, - 58, 58, 58, 58, 279, 300, 115, 348, 136, 136, - 136, 136, 136, 136, 136, 136, 348, 1364, 280, 305, - 58, 58, 58, 58, 58, 58, 63, 63, 63, 450, - 63, 1362, 63, 63, 115, 115, 63, 134, 115, 136, - 314, 134, 134, 1360, 115, 314, 379, 115, 63, 63, - 63, 98, 98, 98, 98, 98, 98, 98, 98, 134, - - 280, 1355, 379, 98, 98, 98, 98, 98, 139, 139, - 139, 139, 139, 139, 139, 139, 368, 152, 331, 450, - 134, 152, 152, 331, 98, 98, 98, 98, 98, 98, - 105, 105, 105, 105, 105, 105, 105, 105, 368, 152, - 288, 288, 105, 105, 105, 105, 105, 128, 1345, 128, - 288, 128, 378, 128, 128, 372, 332, 128, 373, 381, - 152, 332, 378, 105, 105, 105, 105, 105, 105, 128, - 128, 128, 131, 1343, 131, 359, 131, 372, 131, 131, - 373, 133, 131, 133, 359, 133, 1336, 133, 133, 386, - 1333, 133, 381, 390, 131, 131, 131, 235, 235, 235, - - 235, 235, 235, 133, 133, 133, 135, 463, 135, 447, - 135, 386, 135, 135, 1321, 390, 135, 140, 140, 140, - 140, 140, 140, 140, 140, 447, 452, 1318, 135, 135, - 135, 137, 137, 137, 137, 137, 137, 137, 137, 463, - 525, 452, 525, 137, 137, 137, 137, 137, 225, 225, - 225, 225, 225, 225, 225, 225, 234, 234, 234, 234, - 234, 234, 234, 234, 137, 137, 137, 137, 137, 137, - 142, 142, 142, 142, 142, 142, 142, 142, 391, 225, - 290, 290, 142, 142, 142, 142, 142, 154, 1315, 154, - 290, 154, 374, 154, 154, 524, 524, 154, 437, 1313, - - 391, 374, 1307, 142, 142, 142, 142, 142, 142, 154, - 154, 154, 165, 165, 172, 165, 165, 218, 172, 1304, - 437, 218, 165, 1303, 172, 1299, 460, 218, 223, 223, - 438, 223, 223, 353, 353, 165, 172, 172, 223, 218, - 218, 392, 460, 353, 393, 224, 224, 411, 224, 224, - 392, 223, 438, 393, 461, 224, 411, 165, 173, 443, - 173, 173, 173, 173, 173, 173, 173, 173, 224, 1294, - 461, 528, 229, 223, 229, 229, 229, 229, 229, 229, - 236, 443, 236, 236, 236, 236, 236, 236, 236, 236, - 224, 173, 174, 431, 174, 174, 174, 174, 174, 174, - - 174, 174, 431, 528, 1293, 229, 238, 238, 238, 238, - 238, 238, 238, 238, 238, 263, 263, 263, 263, 263, - 263, 263, 263, 445, 621, 174, 175, 451, 175, 175, - 175, 175, 175, 175, 175, 175, 451, 267, 1292, 267, - 267, 267, 267, 267, 267, 445, 263, 287, 287, 287, - 287, 287, 287, 287, 287, 594, 594, 621, 612, 175, - 176, 1291, 176, 176, 176, 176, 176, 176, 176, 176, - 267, 456, 516, 612, 176, 176, 176, 176, 176, 293, - 293, 293, 293, 293, 293, 293, 293, 1290, 605, 293, - 1289, 607, 1288, 456, 516, 176, 176, 176, 176, 176, - - 176, 178, 178, 178, 178, 178, 178, 178, 178, 178, - 605, 1282, 519, 607, 178, 178, 178, 178, 178, 296, - 296, 296, 296, 296, 296, 296, 296, 296, 303, 303, - 303, 303, 303, 303, 519, 178, 178, 178, 178, 178, - 178, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 519, 665, 665, 180, 180, 180, 180, 180, 302, 302, - 302, 302, 302, 302, 302, 302, 342, 342, 342, 342, - 342, 342, 342, 342, 180, 180, 180, 180, 180, 180, - 182, 182, 182, 182, 182, 182, 182, 182, 361, 361, - 678, 678, 182, 182, 182, 182, 182, 304, 361, 304, - - 304, 304, 304, 304, 304, 304, 304, 343, 343, 343, - 343, 343, 343, 182, 182, 182, 182, 182, 182, 203, - 470, 203, 203, 203, 203, 203, 203, 203, 203, 470, - 795, 795, 333, 333, 333, 333, 333, 333, 333, 333, - 337, 471, 337, 337, 337, 337, 337, 337, 1281, 710, - 471, 814, 203, 204, 1274, 204, 204, 204, 204, 204, - 204, 204, 204, 333, 350, 350, 350, 350, 350, 350, - 350, 350, 344, 337, 344, 344, 344, 344, 344, 344, - 344, 344, 710, 1266, 814, 1262, 204, 205, 493, 205, - 205, 205, 205, 205, 205, 205, 205, 345, 493, 345, - - 345, 345, 345, 345, 345, 345, 345, 346, 483, 346, - 346, 346, 346, 346, 346, 346, 346, 483, 865, 865, - 205, 206, 1257, 206, 206, 206, 206, 206, 206, 206, - 206, 363, 363, 883, 883, 206, 206, 206, 206, 206, - 347, 363, 347, 347, 347, 347, 347, 347, 347, 347, - 351, 351, 351, 351, 351, 351, 206, 206, 206, 206, - 206, 206, 208, 208, 208, 208, 208, 208, 208, 208, - 400, 400, 700, 1245, 208, 208, 208, 208, 208, 352, - 400, 352, 352, 352, 352, 352, 352, 352, 352, 1004, - 1004, 1238, 402, 402, 700, 208, 208, 208, 208, 208, - - 208, 227, 402, 227, 227, 227, 227, 227, 227, 227, - 227, 360, 360, 360, 360, 360, 360, 360, 360, 366, - 366, 366, 366, 366, 366, 366, 366, 1026, 1026, 366, - 1062, 1062, 611, 611, 227, 228, 495, 228, 228, 228, - 228, 228, 228, 228, 228, 611, 495, 1069, 1069, 380, - 380, 380, 380, 380, 380, 380, 380, 384, 509, 384, - 384, 384, 384, 384, 384, 1091, 1091, 509, 228, 233, - 233, 233, 233, 233, 233, 233, 233, 233, 233, 233, - 380, 520, 1231, 233, 233, 233, 233, 233, 905, 586, - 384, 405, 405, 405, 405, 405, 405, 405, 405, 586, - - 1229, 405, 1223, 520, 233, 233, 233, 233, 233, 233, - 243, 243, 243, 243, 243, 243, 243, 243, 1222, 520, - 1215, 905, 243, 243, 243, 243, 243, 406, 406, 406, - 406, 406, 406, 406, 406, 410, 1214, 410, 410, 410, - 410, 410, 410, 243, 243, 243, 243, 243, 243, 265, - 589, 265, 265, 265, 265, 265, 265, 265, 265, 408, - 589, 408, 408, 408, 408, 408, 408, 408, 408, 409, - 544, 409, 409, 409, 409, 409, 409, 409, 409, 544, - 1194, 1194, 265, 266, 1213, 266, 266, 266, 266, 266, - 266, 266, 266, 412, 412, 412, 412, 412, 412, 412, - - 412, 413, 413, 415, 415, 424, 424, 424, 424, 424, - 424, 413, 1212, 415, 533, 1015, 266, 281, 1211, 281, - 281, 281, 281, 281, 281, 281, 281, 418, 418, 418, - 418, 418, 418, 418, 418, 1210, 533, 418, 423, 423, - 423, 423, 423, 423, 423, 423, 1237, 1237, 1015, 1109, - 281, 282, 533, 282, 282, 282, 282, 282, 282, 282, - 282, 425, 1209, 425, 425, 425, 425, 425, 425, 425, - 425, 428, 546, 428, 428, 428, 428, 428, 428, 428, - 428, 546, 1109, 1205, 282, 283, 591, 283, 283, 283, - 283, 283, 283, 283, 283, 429, 591, 429, 429, 429, - - 429, 429, 429, 429, 429, 430, 563, 430, 430, 430, - 430, 430, 430, 430, 430, 563, 1244, 1244, 283, 286, - 286, 286, 286, 286, 286, 286, 286, 286, 1251, 1251, - 1273, 1273, 286, 286, 286, 286, 286, 433, 433, 433, - 433, 433, 433, 433, 433, 434, 434, 434, 434, 434, - 434, 1311, 1311, 286, 286, 286, 286, 286, 286, 289, - 289, 289, 289, 289, 289, 289, 289, 436, 436, 1342, - 1342, 289, 289, 289, 289, 289, 435, 436, 435, 435, - 435, 435, 435, 435, 435, 435, 474, 474, 474, 474, - 474, 474, 289, 289, 289, 289, 289, 289, 291, 291, - - 291, 291, 291, 291, 291, 291, 291, 291, 291, 301, - 301, 301, 301, 301, 301, 301, 301, 301, 301, 301, - 720, 720, 720, 301, 301, 301, 301, 301, 1201, 462, - 462, 462, 462, 462, 462, 462, 462, 466, 466, 466, - 466, 466, 466, 466, 301, 301, 301, 301, 301, 301, - 321, 720, 321, 321, 321, 321, 321, 321, 321, 321, - 462, 473, 473, 473, 473, 473, 473, 473, 473, 466, - 475, 598, 475, 475, 475, 475, 475, 475, 475, 475, - 598, 1196, 1188, 321, 322, 1178, 322, 322, 322, 322, - 322, 322, 322, 322, 476, 476, 486, 486, 486, 486, - - 486, 486, 1163, 477, 476, 477, 477, 477, 477, 477, - 477, 477, 477, 1157, 1152, 1151, 1149, 322, 323, 660, - 323, 323, 323, 323, 323, 323, 323, 323, 478, 660, - 478, 478, 478, 478, 478, 478, 478, 478, 479, 630, - 479, 479, 479, 479, 479, 479, 479, 479, 630, 1148, - 1147, 323, 335, 662, 335, 335, 335, 335, 335, 335, - 335, 335, 480, 662, 480, 480, 480, 480, 480, 480, - 480, 480, 481, 631, 481, 481, 481, 481, 481, 481, - 481, 481, 631, 1142, 1137, 335, 336, 673, 336, 336, - 336, 336, 336, 336, 336, 336, 482, 673, 482, 482, - - 482, 482, 482, 482, 482, 482, 485, 485, 485, 485, - 485, 485, 485, 485, 1132, 1131, 1129, 1127, 1125, 336, - 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, - 341, 636, 1123, 1121, 341, 341, 341, 341, 341, 487, - 636, 487, 487, 487, 487, 487, 487, 487, 487, 502, - 502, 502, 502, 502, 502, 341, 341, 341, 341, 341, - 341, 349, 349, 349, 349, 349, 349, 349, 349, 349, - 349, 349, 488, 488, 1120, 349, 349, 349, 349, 349, - 1119, 675, 488, 492, 492, 492, 492, 492, 492, 492, - 492, 675, 1095, 1084, 1080, 1075, 349, 349, 349, 349, - - 349, 349, 356, 356, 356, 356, 356, 356, 356, 356, - 1063, 1056, 1054, 1052, 356, 356, 356, 356, 356, 501, - 501, 501, 501, 501, 501, 501, 501, 504, 504, 504, - 504, 504, 504, 504, 504, 356, 356, 356, 356, 356, - 356, 362, 362, 362, 362, 362, 362, 362, 362, 510, - 510, 1051, 1049, 362, 362, 362, 362, 362, 503, 510, - 503, 503, 503, 503, 503, 503, 503, 503, 576, 576, - 576, 576, 576, 576, 362, 362, 362, 362, 362, 362, - 364, 364, 364, 364, 364, 364, 364, 364, 364, 364, - 364, 382, 687, 382, 382, 382, 382, 382, 382, 382, - - 382, 506, 687, 506, 506, 506, 506, 506, 506, 506, - 506, 507, 651, 507, 507, 507, 507, 507, 507, 507, - 507, 651, 1037, 1034, 382, 383, 771, 383, 383, 383, - 383, 383, 383, 383, 383, 508, 771, 508, 508, 508, - 508, 508, 508, 512, 512, 515, 515, 515, 515, 515, - 515, 515, 515, 512, 1031, 515, 1029, 1027, 383, 394, - 394, 394, 394, 394, 394, 394, 394, 394, 534, 1022, - 527, 527, 527, 527, 527, 527, 527, 527, 531, 531, - 531, 531, 531, 531, 531, 1019, 998, 994, 987, 972, - 534, 394, 395, 395, 395, 395, 395, 395, 395, 395, - - 395, 527, 547, 547, 549, 549, 534, 967, 966, 965, - 531, 964, 547, 963, 549, 553, 553, 553, 553, 553, - 553, 553, 553, 526, 395, 396, 396, 396, 396, 396, - 396, 396, 396, 396, 552, 552, 552, 552, 552, 552, - 552, 552, 951, 526, 552, 526, 526, 555, 946, 555, - 555, 555, 555, 555, 555, 555, 555, 396, 401, 401, - 401, 401, 401, 401, 401, 401, 526, 693, 941, 916, - 401, 401, 401, 401, 401, 556, 693, 556, 556, 556, - 556, 556, 556, 556, 556, 584, 584, 584, 584, 584, - 584, 401, 401, 401, 401, 401, 401, 403, 403, 403, - - 403, 403, 403, 403, 403, 403, 403, 403, 414, 414, - 414, 414, 414, 414, 414, 414, 565, 565, 912, 893, - 414, 414, 414, 414, 414, 557, 565, 557, 557, 557, - 557, 557, 557, 558, 558, 558, 558, 558, 558, 558, - 558, 414, 414, 414, 414, 414, 414, 416, 416, 416, - 416, 416, 416, 416, 416, 416, 416, 416, 422, 887, - 422, 422, 422, 422, 422, 422, 422, 422, 422, 724, - 876, 872, 422, 422, 422, 422, 422, 560, 724, 560, - 560, 560, 560, 560, 560, 560, 560, 601, 601, 601, - 601, 601, 601, 422, 422, 422, 422, 422, 422, 427, - - 427, 427, 427, 427, 427, 427, 427, 567, 567, 867, - 859, 427, 427, 427, 427, 427, 561, 567, 561, 561, - 561, 561, 561, 561, 561, 561, 634, 634, 634, 634, - 634, 634, 427, 427, 427, 427, 427, 427, 432, 432, - 432, 432, 432, 432, 432, 432, 432, 432, 432, 726, - 857, 855, 432, 432, 432, 432, 432, 562, 726, 562, - 562, 562, 562, 562, 562, 564, 564, 564, 564, 564, - 564, 564, 564, 432, 432, 432, 432, 432, 432, 453, - 453, 453, 453, 453, 453, 453, 453, 453, 570, 570, - 570, 570, 570, 570, 570, 570, 854, 783, 570, 575, - - 575, 575, 575, 575, 575, 575, 575, 783, 819, 818, - 806, 453, 454, 454, 454, 454, 454, 454, 454, 454, - 454, 577, 789, 577, 577, 577, 577, 577, 577, 577, - 577, 578, 733, 578, 578, 578, 578, 578, 578, 578, - 578, 733, 785, 778, 454, 455, 455, 455, 455, 455, - 455, 455, 455, 455, 579, 766, 579, 579, 579, 579, - 579, 579, 579, 579, 580, 754, 580, 580, 580, 580, - 580, 580, 580, 580, 754, 765, 764, 455, 464, 464, - 464, 464, 464, 464, 464, 464, 464, 583, 583, 583, - 583, 583, 583, 583, 583, 585, 790, 585, 585, 585, - - 585, 585, 585, 585, 585, 626, 790, 626, 626, 626, - 464, 465, 465, 465, 465, 465, 465, 465, 465, 465, - 588, 588, 588, 588, 588, 588, 588, 588, 595, 792, - 595, 595, 595, 595, 595, 595, 595, 595, 626, 792, - 763, 762, 750, 465, 472, 472, 472, 472, 472, 472, - 472, 472, 472, 472, 472, 610, 745, 740, 472, 472, - 472, 472, 472, 596, 799, 596, 596, 596, 596, 596, - 596, 596, 596, 799, 723, 610, 722, 610, 610, 472, - 472, 472, 472, 472, 472, 484, 484, 484, 484, 484, - 484, 484, 484, 484, 484, 484, 821, 721, 707, 484, - - 484, 484, 484, 484, 597, 821, 597, 597, 597, 597, - 597, 597, 597, 597, 639, 639, 639, 639, 639, 639, - 484, 484, 484, 484, 484, 484, 491, 491, 491, 491, - 491, 491, 491, 491, 705, 704, 703, 702, 491, 491, - 491, 491, 491, 600, 600, 600, 600, 600, 600, 600, - 600, 633, 633, 633, 633, 633, 633, 633, 633, 491, - 491, 491, 491, 491, 491, 494, 494, 494, 494, 494, - 494, 494, 494, 603, 603, 689, 682, 494, 494, 494, - 494, 494, 602, 603, 602, 602, 602, 602, 602, 602, - 602, 602, 671, 667, 658, 641, 641, 657, 494, 494, - - 494, 494, 494, 494, 496, 641, 496, 496, 496, 496, - 496, 496, 496, 496, 496, 500, 860, 500, 500, 500, - 500, 500, 500, 500, 500, 500, 860, 629, 628, 500, - 500, 500, 500, 500, 620, 620, 620, 620, 620, 620, - 620, 620, 638, 638, 638, 638, 638, 638, 638, 638, - 500, 500, 500, 500, 500, 500, 511, 511, 511, 511, - 511, 511, 511, 511, 862, 620, 627, 614, 511, 511, - 511, 511, 511, 635, 862, 635, 635, 635, 635, 635, - 635, 635, 635, 654, 654, 654, 654, 654, 654, 511, - 511, 511, 511, 511, 511, 513, 513, 513, 513, 513, - - 513, 513, 513, 513, 513, 513, 518, 656, 656, 613, - 518, 609, 518, 587, 581, 518, 518, 656, 518, 518, - 518, 518, 518, 518, 518, 518, 518, 518, 518, 573, - 572, 571, 518, 518, 518, 518, 518, 518, 518, 518, - 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, - 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, - 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, - 529, 529, 529, 529, 529, 529, 529, 529, 529, 640, - 559, 640, 640, 640, 640, 640, 640, 640, 640, 642, - 642, 642, 642, 642, 642, 642, 642, 642, 554, 812, - - 812, 812, 529, 530, 530, 530, 530, 530, 530, 530, - 530, 530, 643, 643, 643, 643, 643, 643, 643, 643, - 643, 644, 644, 644, 644, 644, 644, 644, 644, 644, - 812, 694, 694, 696, 696, 530, 532, 727, 727, 543, - 532, 694, 532, 696, 542, 532, 532, 727, 532, 532, - 532, 532, 532, 532, 532, 532, 532, 532, 532, 541, - 536, 535, 532, 532, 532, 532, 532, 532, 532, 532, - 532, 532, 532, 532, 532, 532, 532, 532, 532, 532, - 532, 532, 532, 532, 532, 532, 532, 532, 532, 532, - 532, 532, 532, 532, 532, 532, 532, 532, 532, 532, - - 537, 878, 537, 537, 537, 537, 537, 537, 537, 537, - 645, 878, 645, 645, 645, 645, 645, 645, 645, 645, - 646, 822, 646, 646, 646, 646, 646, 646, 646, 646, - 822, 523, 522, 537, 538, 880, 538, 538, 538, 538, - 538, 538, 538, 538, 647, 880, 647, 647, 647, 647, - 647, 647, 647, 647, 648, 827, 648, 648, 648, 648, - 648, 648, 648, 648, 827, 521, 505, 538, 539, 892, - 539, 539, 539, 539, 539, 539, 539, 539, 649, 892, - 649, 649, 649, 649, 649, 649, 649, 649, 650, 833, - 650, 650, 650, 650, 650, 650, 650, 650, 833, 499, - - 490, 539, 540, 489, 540, 540, 540, 540, 540, 540, - 540, 540, 653, 653, 653, 653, 653, 653, 653, 653, - 655, 848, 655, 655, 655, 655, 655, 655, 655, 655, - 848, 469, 468, 467, 977, 540, 545, 545, 545, 545, - 545, 545, 545, 545, 977, 459, 458, 457, 545, 545, - 545, 545, 545, 666, 666, 666, 666, 666, 666, 666, - 666, 670, 449, 670, 670, 670, 670, 670, 670, 545, - 545, 545, 545, 545, 545, 548, 548, 548, 548, 548, - 548, 548, 548, 729, 729, 448, 442, 548, 548, 548, - 548, 548, 668, 729, 668, 668, 668, 668, 668, 668, - - 668, 668, 685, 685, 685, 685, 685, 685, 548, 548, - 548, 548, 548, 548, 550, 550, 550, 550, 550, 550, - 550, 550, 550, 550, 550, 566, 566, 566, 566, 566, - 566, 566, 566, 734, 734, 441, 440, 566, 566, 566, - 566, 566, 669, 734, 669, 669, 669, 669, 669, 669, - 669, 669, 426, 715, 421, 715, 715, 715, 566, 566, - 566, 566, 566, 566, 568, 568, 568, 568, 568, 568, - 568, 568, 568, 568, 568, 574, 420, 574, 574, 574, - 574, 574, 574, 574, 574, 574, 715, 419, 407, 574, - 574, 574, 574, 574, 672, 672, 672, 672, 672, 672, - - 672, 672, 684, 684, 684, 684, 684, 684, 684, 684, - 574, 574, 574, 574, 574, 574, 582, 399, 582, 582, - 582, 582, 582, 582, 582, 582, 582, 897, 398, 397, - 582, 582, 582, 582, 582, 679, 897, 679, 679, 679, - 679, 679, 679, 679, 679, 769, 769, 769, 769, 769, - 769, 582, 582, 582, 582, 582, 582, 590, 590, 590, - 590, 590, 590, 590, 590, 736, 736, 389, 388, 590, - 590, 590, 590, 590, 680, 736, 680, 680, 680, 680, - 680, 680, 680, 680, 387, 385, 376, 756, 756, 375, - 590, 590, 590, 590, 590, 590, 592, 756, 592, 592, - - 592, 592, 592, 592, 592, 592, 592, 599, 599, 599, - 599, 599, 599, 599, 599, 599, 599, 599, 918, 371, - 370, 599, 599, 599, 599, 599, 681, 918, 681, 681, - 681, 681, 681, 681, 681, 681, 369, 367, 358, 357, - 758, 758, 599, 599, 599, 599, 599, 599, 604, 604, - 758, 355, 604, 354, 604, 340, 339, 604, 604, 338, - 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, - 604, 604, 330, 329, 604, 604, 604, 604, 604, 604, - 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, - 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, - - 604, 604, 604, 604, 604, 604, 604, 604, 604, 604, - 604, 604, 615, 992, 615, 615, 615, 615, 615, 615, - 615, 615, 686, 992, 686, 686, 686, 686, 686, 686, - 686, 686, 688, 688, 688, 688, 688, 688, 688, 688, - 328, 327, 326, 325, 324, 615, 616, 999, 616, 616, - 616, 616, 616, 616, 616, 616, 690, 999, 690, 690, - 690, 690, 690, 690, 690, 690, 691, 920, 691, 691, - 691, 691, 691, 691, 691, 691, 920, 317, 316, 616, - 617, 1001, 617, 617, 617, 617, 617, 617, 617, 617, - 692, 1001, 692, 692, 692, 692, 692, 692, 699, 699, - - 699, 699, 699, 699, 699, 699, 927, 315, 699, 313, - 312, 311, 310, 617, 618, 927, 618, 618, 618, 618, - 618, 618, 618, 618, 709, 709, 709, 709, 709, 709, - 709, 709, 732, 732, 732, 732, 732, 732, 732, 732, - 804, 804, 732, 832, 832, 309, 1021, 618, 619, 619, - 804, 308, 619, 832, 619, 709, 1021, 619, 619, 307, - 619, 619, 619, 619, 619, 619, 619, 619, 619, 619, - 619, 619, 298, 297, 619, 619, 619, 619, 619, 619, - 619, 619, 619, 619, 619, 619, 619, 619, 619, 619, - 619, 619, 619, 619, 619, 619, 619, 619, 619, 619, - - 619, 619, 619, 619, 619, 619, 619, 619, 619, 619, - 619, 619, 622, 295, 622, 622, 622, 622, 622, 622, - 622, 622, 739, 739, 739, 739, 739, 739, 739, 739, - 934, 294, 739, 955, 706, 285, 706, 1023, 706, 934, - 706, 706, 955, 284, 706, 622, 623, 1023, 623, 623, - 623, 623, 623, 623, 623, 623, 706, 706, 706, 741, - 741, 741, 741, 741, 741, 741, 741, 741, 708, 277, - 708, 1057, 708, 276, 708, 708, 275, 274, 708, 623, - 624, 1057, 624, 624, 624, 624, 624, 624, 624, 624, - 708, 708, 708, 719, 719, 719, 719, 719, 719, 719, - - 719, 742, 742, 742, 742, 742, 742, 742, 742, 742, - 273, 272, 271, 624, 625, 269, 625, 625, 625, 625, - 625, 625, 625, 625, 719, 743, 743, 743, 743, 743, - 743, 743, 744, 744, 744, 744, 744, 744, 744, 744, - 781, 781, 781, 781, 781, 781, 258, 625, 632, 632, - 632, 632, 632, 632, 632, 632, 632, 632, 632, 1005, - 257, 256, 632, 632, 632, 632, 632, 746, 1005, 746, - 746, 746, 746, 746, 746, 746, 746, 802, 802, 802, - 802, 802, 802, 632, 632, 632, 632, 632, 632, 637, - 637, 637, 637, 637, 637, 637, 637, 637, 637, 637, - - 1028, 255, 254, 637, 637, 637, 637, 637, 747, 1028, - 747, 747, 747, 747, 747, 747, 747, 747, 825, 825, - 825, 825, 825, 825, 637, 637, 637, 637, 637, 637, - 652, 652, 652, 652, 652, 652, 652, 652, 652, 652, - 652, 1030, 252, 251, 652, 652, 652, 652, 652, 748, - 1030, 748, 748, 748, 748, 748, 748, 749, 749, 749, - 749, 749, 749, 749, 749, 652, 652, 652, 652, 652, - 652, 661, 661, 661, 661, 661, 661, 661, 661, 838, - 838, 250, 249, 661, 661, 661, 661, 661, 751, 838, - 751, 751, 751, 751, 751, 751, 751, 751, 830, 830, - - 830, 830, 830, 830, 661, 661, 661, 661, 661, 661, - 663, 248, 663, 663, 663, 663, 663, 663, 663, 663, - 663, 674, 674, 674, 674, 674, 674, 674, 674, 853, - 853, 247, 246, 674, 674, 674, 674, 674, 752, 853, - 752, 752, 752, 752, 752, 752, 752, 752, 836, 836, - 836, 836, 836, 836, 674, 674, 674, 674, 674, 674, - 676, 244, 676, 676, 676, 676, 676, 676, 676, 676, - 676, 683, 241, 683, 683, 683, 683, 683, 683, 683, - 683, 683, 1033, 240, 237, 683, 683, 683, 683, 683, - 753, 1033, 753, 753, 753, 753, 753, 753, 755, 755, - - 755, 755, 755, 755, 755, 755, 683, 683, 683, 683, - 683, 683, 695, 695, 695, 695, 695, 695, 695, 695, - 232, 231, 220, 216, 695, 695, 695, 695, 695, 761, - 761, 761, 761, 761, 761, 761, 761, 215, 214, 761, - 213, 212, 211, 210, 209, 695, 695, 695, 695, 695, - 695, 697, 697, 697, 697, 697, 697, 697, 697, 697, - 697, 697, 711, 207, 711, 711, 711, 711, 711, 711, - 711, 711, 768, 768, 768, 768, 768, 768, 768, 768, - 770, 1036, 770, 770, 770, 770, 770, 770, 770, 770, - 1036, 199, 196, 195, 194, 711, 712, 1059, 712, 712, - - 712, 712, 712, 712, 712, 712, 772, 1059, 772, 772, - 772, 772, 772, 772, 772, 772, 773, 1048, 773, 773, - 773, 773, 773, 773, 773, 773, 1048, 193, 192, 712, - 713, 1064, 713, 713, 713, 713, 713, 713, 713, 713, - 774, 1064, 774, 774, 774, 774, 774, 774, 774, 774, - 775, 1066, 775, 775, 775, 775, 775, 775, 775, 775, - 190, 1066, 189, 713, 714, 1086, 714, 714, 714, 714, - 714, 714, 714, 714, 776, 1086, 776, 776, 776, 776, - 776, 776, 776, 776, 777, 1088, 777, 777, 777, 777, - 777, 777, 777, 777, 188, 1088, 187, 714, 716, 186, - - 716, 716, 716, 716, 716, 716, 716, 716, 780, 780, - 780, 780, 780, 780, 780, 780, 782, 1100, 782, 782, - 782, 782, 782, 782, 782, 782, 185, 1100, 184, 183, - 179, 716, 717, 177, 717, 717, 717, 717, 717, 717, - 717, 717, 784, 784, 784, 784, 784, 784, 784, 784, - 786, 1101, 786, 786, 786, 786, 786, 786, 786, 786, - 1101, 170, 163, 157, 153, 717, 718, 1122, 718, 718, - 718, 718, 718, 718, 718, 718, 787, 1122, 787, 787, - 787, 787, 787, 787, 787, 787, 788, 1124, 788, 788, - 788, 788, 788, 788, 151, 148, 1124, 147, 1162, 718, - - 725, 725, 725, 725, 725, 725, 725, 725, 1162, 145, - 144, 138, 725, 725, 725, 725, 725, 796, 796, 796, - 796, 796, 796, 796, 796, 796, 851, 851, 851, 851, - 851, 851, 132, 725, 725, 725, 725, 725, 725, 728, - 728, 728, 728, 728, 728, 728, 728, 130, 127, 120, - 119, 728, 728, 728, 728, 728, 797, 797, 797, 797, - 797, 797, 797, 797, 797, 890, 890, 890, 890, 890, - 890, 118, 728, 728, 728, 728, 728, 728, 730, 730, - 730, 730, 730, 730, 730, 730, 730, 730, 730, 735, - 735, 735, 735, 735, 735, 735, 735, 117, 116, 111, - - 110, 735, 735, 735, 735, 735, 798, 798, 798, 798, - 798, 798, 798, 798, 798, 896, 896, 896, 896, 896, - 896, 896, 735, 735, 735, 735, 735, 735, 737, 737, - 737, 737, 737, 737, 737, 737, 737, 737, 737, 757, - 757, 757, 757, 757, 757, 757, 757, 108, 107, 104, - 100, 757, 757, 757, 757, 757, 801, 801, 801, 801, - 801, 801, 801, 801, 824, 824, 824, 824, 824, 824, - 824, 824, 757, 757, 757, 757, 757, 757, 759, 759, - 759, 759, 759, 759, 759, 759, 759, 759, 759, 767, - 99, 767, 767, 767, 767, 767, 767, 767, 767, 767, - - 1126, 95, 92, 767, 767, 767, 767, 767, 803, 1126, - 803, 803, 803, 803, 803, 803, 803, 803, 90, 88, - 87, 898, 898, 86, 767, 767, 767, 767, 767, 767, - 779, 898, 779, 779, 779, 779, 779, 779, 779, 779, - 779, 84, 77, 71, 779, 779, 779, 779, 779, 811, - 811, 811, 811, 811, 811, 811, 811, 813, 813, 813, - 813, 813, 813, 813, 813, 779, 779, 779, 779, 779, - 779, 791, 791, 791, 791, 791, 791, 791, 791, 66, - 811, 1128, 62, 791, 791, 791, 791, 791, 813, 826, - 1128, 826, 826, 826, 826, 826, 826, 826, 826, 61, - - 60, 900, 900, 59, 791, 791, 791, 791, 791, 791, - 793, 900, 793, 793, 793, 793, 793, 793, 793, 793, - 793, 800, 800, 800, 800, 800, 800, 800, 800, 800, - 800, 800, 1130, 57, 51, 800, 800, 800, 800, 800, - 817, 1130, 817, 817, 817, 817, 817, 817, 829, 829, - 829, 829, 829, 829, 829, 829, 800, 800, 800, 800, - 800, 800, 808, 49, 808, 808, 808, 808, 808, 808, - 808, 808, 831, 817, 831, 831, 831, 831, 831, 831, - 831, 831, 835, 835, 835, 835, 835, 835, 835, 835, - 47, 46, 45, 44, 43, 808, 809, 1168, 809, 809, - - 809, 809, 809, 809, 809, 809, 837, 1168, 837, 837, - 837, 837, 837, 837, 837, 837, 839, 839, 839, 839, - 839, 839, 839, 839, 839, 42, 36, 35, 34, 809, - 810, 33, 810, 810, 810, 810, 810, 810, 810, 810, - 840, 840, 840, 840, 840, 840, 840, 840, 840, 841, - 841, 841, 841, 841, 841, 841, 841, 841, 31, 28, - 22, 19, 18, 810, 815, 1183, 815, 815, 815, 815, - 815, 815, 815, 815, 842, 1183, 842, 842, 842, 842, - 842, 842, 842, 842, 843, 1146, 843, 843, 843, 843, - 843, 843, 843, 843, 1146, 17, 15, 815, 816, 1189, - - 816, 816, 816, 816, 816, 816, 816, 816, 844, 1189, - 844, 844, 844, 844, 844, 844, 844, 844, 845, 1191, - 845, 845, 845, 845, 845, 845, 845, 845, 14, 1191, - 13, 816, 820, 820, 820, 820, 820, 820, 820, 820, - 820, 1195, 0, 0, 820, 820, 820, 820, 820, 846, - 1195, 846, 846, 846, 846, 846, 846, 846, 846, 915, - 915, 915, 915, 915, 915, 820, 820, 820, 820, 820, - 820, 823, 823, 823, 823, 823, 823, 823, 823, 823, - 823, 823, 1280, 0, 0, 823, 823, 823, 823, 823, - 847, 1280, 847, 847, 847, 847, 847, 847, 847, 847, - - 970, 970, 970, 970, 970, 970, 823, 823, 823, 823, - 823, 823, 828, 828, 828, 828, 828, 828, 828, 828, - 828, 828, 828, 0, 0, 0, 828, 828, 828, 828, - 828, 850, 850, 850, 850, 850, 850, 850, 850, 866, - 866, 866, 866, 866, 866, 866, 866, 828, 828, 828, - 828, 828, 828, 834, 834, 834, 834, 834, 834, 834, - 834, 834, 834, 834, 0, 0, 0, 834, 834, 834, - 834, 834, 852, 0, 852, 852, 852, 852, 852, 852, - 852, 852, 975, 975, 975, 975, 975, 975, 834, 834, - 834, 834, 834, 834, 849, 849, 849, 849, 849, 849, - - 849, 849, 849, 849, 849, 0, 0, 0, 849, 849, - 849, 849, 849, 868, 0, 868, 868, 868, 868, 868, - 868, 868, 868, 990, 990, 990, 990, 990, 990, 849, - 849, 849, 849, 849, 849, 858, 858, 858, 858, 858, - 858, 858, 858, 921, 921, 0, 0, 858, 858, 858, - 858, 858, 869, 921, 869, 869, 869, 869, 869, 869, - 869, 869, 1008, 1008, 1008, 1008, 1008, 1008, 858, 858, - 858, 858, 858, 858, 861, 861, 861, 861, 861, 861, - 861, 861, 923, 923, 0, 0, 861, 861, 861, 861, - 861, 870, 923, 870, 870, 870, 870, 870, 870, 871, - - 871, 871, 871, 871, 871, 871, 871, 861, 861, 861, - 861, 861, 861, 863, 0, 863, 863, 863, 863, 863, - 863, 863, 863, 863, 873, 1232, 873, 873, 873, 873, - 873, 873, 873, 873, 874, 1232, 874, 874, 874, 874, - 874, 874, 874, 874, 875, 0, 875, 875, 875, 875, - 875, 875, 877, 877, 877, 877, 877, 877, 877, 877, - 879, 879, 879, 879, 879, 879, 879, 879, 928, 928, - 0, 0, 879, 879, 879, 879, 879, 884, 928, 884, - 884, 884, 884, 884, 884, 884, 884, 0, 0, 0, - 930, 930, 0, 879, 879, 879, 879, 879, 879, 881, - - 930, 881, 881, 881, 881, 881, 881, 881, 881, 881, - 885, 1234, 885, 885, 885, 885, 885, 885, 885, 885, - 886, 1234, 886, 886, 886, 886, 886, 886, 886, 886, - 888, 1239, 888, 888, 888, 888, 888, 888, 888, 888, - 888, 1239, 0, 0, 888, 888, 888, 888, 888, 889, - 889, 889, 889, 889, 889, 889, 889, 914, 914, 914, - 914, 914, 914, 914, 914, 888, 888, 888, 888, 888, - 888, 891, 0, 891, 891, 891, 891, 891, 891, 891, - 891, 894, 894, 894, 894, 894, 894, 894, 894, 894, - 895, 895, 895, 895, 895, 895, 895, 895, 895, 899, - - 899, 899, 899, 899, 899, 899, 899, 0, 0, 0, - 0, 899, 899, 899, 899, 899, 903, 903, 903, 903, - 903, 903, 903, 903, 0, 0, 903, 0, 0, 0, - 0, 0, 899, 899, 899, 899, 899, 899, 901, 901, - 901, 901, 901, 901, 901, 901, 901, 901, 901, 904, - 904, 904, 904, 904, 904, 904, 904, 1241, 908, 0, - 908, 908, 908, 908, 908, 908, 917, 1241, 917, 917, - 917, 917, 917, 917, 917, 917, 0, 0, 0, 0, - 904, 906, 0, 906, 906, 906, 906, 906, 906, 906, - 906, 908, 926, 926, 926, 926, 926, 926, 926, 926, - - 0, 1246, 926, 933, 933, 933, 933, 933, 933, 933, - 933, 1246, 0, 933, 906, 907, 0, 907, 907, 907, - 907, 907, 907, 907, 907, 935, 935, 937, 937, 957, - 957, 0, 0, 0, 0, 935, 0, 937, 0, 957, - 940, 940, 940, 940, 940, 940, 940, 940, 907, 909, - 940, 909, 909, 909, 909, 909, 909, 909, 909, 942, - 942, 942, 942, 942, 942, 942, 942, 942, 943, 943, - 943, 943, 943, 943, 943, 943, 943, 0, 0, 0, - 0, 0, 909, 910, 0, 910, 910, 910, 910, 910, - 910, 910, 910, 944, 944, 944, 944, 944, 944, 944, - - 945, 945, 945, 945, 945, 945, 945, 945, 949, 0, - 949, 949, 949, 949, 949, 949, 910, 911, 1248, 911, - 911, 911, 911, 911, 911, 911, 911, 947, 1248, 947, - 947, 947, 947, 947, 947, 947, 947, 948, 1268, 948, - 948, 948, 948, 948, 948, 948, 948, 0, 1268, 0, - 911, 913, 1270, 913, 913, 913, 913, 913, 913, 913, - 913, 913, 1270, 0, 0, 913, 913, 913, 913, 913, - 950, 950, 950, 950, 950, 950, 950, 950, 954, 0, - 954, 954, 954, 954, 954, 954, 913, 913, 913, 913, - 913, 913, 924, 924, 924, 924, 924, 924, 924, 924, - - 924, 924, 924, 931, 931, 931, 931, 931, 931, 931, - 931, 931, 931, 931, 938, 938, 938, 938, 938, 938, - 938, 938, 938, 938, 938, 952, 1279, 952, 952, 952, - 952, 952, 952, 952, 952, 953, 1279, 953, 953, 953, - 953, 953, 953, 953, 953, 956, 956, 956, 956, 956, - 956, 956, 956, 959, 959, 969, 969, 969, 969, 969, - 969, 969, 969, 959, 960, 960, 960, 960, 960, 960, - 960, 960, 960, 960, 960, 962, 962, 962, 962, 962, - 962, 962, 962, 0, 0, 962, 968, 1306, 968, 968, - 968, 968, 968, 968, 968, 968, 968, 1306, 0, 0, - - 968, 968, 968, 968, 968, 971, 1308, 971, 971, 971, - 971, 971, 971, 971, 971, 0, 1308, 0, 1010, 1010, - 0, 968, 968, 968, 968, 968, 968, 973, 1010, 973, - 973, 973, 973, 973, 973, 973, 973, 973, 0, 0, - 0, 973, 973, 973, 973, 973, 974, 974, 974, 974, - 974, 974, 974, 974, 978, 978, 978, 978, 978, 978, - 978, 978, 973, 973, 973, 973, 973, 973, 976, 0, - 976, 976, 976, 976, 976, 976, 976, 976, 979, 979, - 979, 979, 979, 979, 979, 979, 980, 980, 980, 980, - 980, 980, 980, 980, 981, 1317, 981, 981, 981, 981, - - 981, 981, 981, 981, 982, 1317, 982, 982, 982, 982, - 982, 982, 982, 982, 983, 1320, 983, 983, 983, 983, - 983, 983, 983, 983, 984, 1320, 984, 984, 984, 984, - 984, 984, 984, 984, 985, 1323, 985, 985, 985, 985, - 985, 985, 985, 985, 986, 1323, 986, 986, 986, 986, - 986, 986, 986, 986, 988, 1335, 988, 988, 988, 988, - 988, 988, 988, 988, 988, 1335, 0, 0, 988, 988, - 988, 988, 988, 989, 989, 989, 989, 989, 989, 989, - 989, 993, 993, 993, 993, 993, 993, 993, 993, 988, - 988, 988, 988, 988, 988, 991, 1337, 991, 991, 991, - - 991, 991, 991, 991, 991, 995, 1337, 995, 995, 995, - 995, 995, 995, 995, 995, 996, 1339, 996, 996, 996, - 996, 996, 996, 996, 996, 997, 1339, 997, 997, 997, - 997, 997, 997, 1000, 1000, 1000, 1000, 1000, 1000, 1000, - 1000, 0, 0, 0, 0, 1000, 1000, 1000, 1000, 1000, - 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1020, 1020, - 1020, 1020, 1020, 1020, 1020, 1020, 1000, 1000, 1000, 1000, - 1000, 1000, 1002, 0, 1002, 1002, 1002, 1002, 1002, 1002, - 1002, 1002, 1002, 1006, 1006, 1006, 1006, 1006, 1006, 1006, - 1006, 1006, 1006, 1006, 0, 0, 0, 1006, 1006, 1006, - - 1006, 1006, 1009, 1358, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 0, 1358, 0, 1032, 1032, 0, 1006, 1006, - 1006, 1006, 1006, 1006, 1011, 1032, 1011, 1011, 1011, 1011, - 1011, 1011, 1011, 1011, 0, 0, 1386, 1014, 1014, 1014, - 1014, 1014, 1014, 1014, 1014, 1018, 1386, 1018, 1018, 1018, - 1018, 1018, 1018, 0, 0, 0, 0, 1011, 1012, 0, - 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1014, 1035, - 1035, 1038, 1038, 0, 0, 0, 0, 0, 1018, 1035, - 0, 1038, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, - 1039, 1012, 1013, 0, 1013, 1013, 1013, 1013, 1013, 1013, - - 1013, 1013, 1040, 1040, 1040, 1040, 1040, 1040, 1040, 1040, - 1040, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 0, 0, 0, 0, 0, 1013, 1016, 0, 1016, 1016, - 1016, 1016, 1016, 1016, 1016, 1016, 1042, 0, 1042, 1042, - 1042, 1042, 1042, 1042, 1042, 1042, 1043, 0, 1043, 1043, - 1043, 1043, 1043, 1043, 1043, 1043, 0, 0, 0, 1016, - 1017, 0, 1017, 1017, 1017, 1017, 1017, 1017, 1017, 1017, - 1044, 0, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044, - 1045, 0, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, - 0, 0, 0, 1017, 1024, 0, 1024, 1024, 1024, 1024, - - 1024, 1024, 1024, 1024, 1024, 1046, 0, 1046, 1046, 1046, - 1046, 1046, 1046, 1046, 1046, 1047, 0, 1047, 1047, 1047, - 1047, 1047, 1047, 1047, 1047, 1050, 1050, 1071, 1071, 1071, - 1071, 1071, 1071, 1071, 1071, 1050, 1055, 1055, 1055, 1055, - 1055, 1055, 1055, 1055, 0, 0, 0, 0, 1055, 1055, - 1055, 1055, 1055, 1072, 1072, 1072, 1072, 1072, 1072, 1072, - 1072, 1073, 1073, 1073, 1073, 1073, 1073, 0, 0, 1055, - 1055, 1055, 1055, 1055, 1055, 1058, 1058, 1058, 1058, 1058, - 1058, 1058, 1058, 0, 0, 0, 0, 1058, 1058, 1058, - 1058, 1058, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, - - 1078, 0, 1078, 1078, 1078, 1078, 1078, 1078, 1058, 1058, - 1058, 1058, 1058, 1058, 1060, 0, 1060, 1060, 1060, 1060, - 1060, 1060, 1060, 1060, 1060, 1065, 1065, 1065, 1065, 1065, - 1065, 1065, 1065, 1102, 1102, 0, 0, 1065, 1065, 1065, - 1065, 1065, 1076, 1102, 1076, 1076, 1076, 1076, 1076, 1076, - 1076, 1076, 1098, 1098, 1098, 1098, 1098, 1098, 1065, 1065, - 1065, 1065, 1065, 1065, 1067, 0, 1067, 1067, 1067, 1067, - 1067, 1067, 1067, 1067, 1067, 1077, 0, 1077, 1077, 1077, - 1077, 1077, 1077, 1077, 1077, 1079, 1079, 1079, 1079, 1079, - 1079, 1079, 1079, 1081, 0, 1081, 1081, 1081, 1081, 1081, - - 1081, 1081, 1081, 1082, 0, 1082, 1082, 1082, 1082, 1082, - 1082, 1082, 1082, 1083, 0, 1083, 1083, 1083, 1083, 1083, - 1083, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1087, - 1087, 1087, 1087, 1087, 1087, 1087, 1087, 0, 0, 0, - 0, 1087, 1087, 1087, 1087, 1087, 1092, 1092, 1092, 1092, - 1092, 1092, 1092, 1092, 1093, 1093, 1093, 1093, 1093, 1093, - 1093, 1093, 1087, 1087, 1087, 1087, 1087, 1087, 1089, 0, - 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1094, - 1094, 1094, 1094, 1094, 1094, 1094, 1094, 1096, 0, 1096, - 1096, 1096, 1096, 1096, 1096, 1096, 1096, 1096, 0, 0, - - 0, 1096, 1096, 1096, 1096, 1096, 1097, 1097, 1097, 1097, - 1097, 1097, 1097, 1097, 0, 0, 0, 0, 0, 1104, - 1104, 0, 1096, 1096, 1096, 1096, 1096, 1096, 1099, 1104, - 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1105, 1105, - 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1105, 1107, - 1107, 1107, 1107, 1107, 1107, 1107, 1107, 0, 0, 1107, - 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 0, 1112, - 0, 1112, 1112, 1112, 1112, 1112, 1112, 1113, 1113, 1113, - 1113, 1113, 1113, 1113, 1113, 1155, 1155, 1155, 1155, 1155, - 1155, 1108, 1110, 0, 1110, 1110, 1110, 1110, 1110, 1110, - - 1110, 1110, 1112, 0, 0, 0, 0, 0, 1113, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1115, 1115, 1115, - 1115, 1115, 1115, 1115, 1115, 1110, 1111, 0, 1111, 1111, - 1111, 1111, 1111, 1111, 1111, 1111, 0, 0, 0, 1140, - 1114, 1140, 1140, 1140, 1140, 1140, 1140, 1116, 1115, 1116, - 1116, 1116, 1116, 1116, 1116, 1116, 1116, 0, 1117, 1111, - 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1118, 0, - 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1133, 1133, - 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1134, 1134, 1134, - 1134, 1134, 1134, 1134, 1134, 1134, 1135, 1135, 1135, 1135, - - 1135, 1135, 1135, 1136, 1136, 1136, 1136, 1136, 1136, 1136, - 1136, 1138, 0, 1138, 1138, 1138, 1138, 1138, 1138, 1138, - 1138, 1139, 0, 1139, 1139, 1139, 1139, 1139, 1139, 1139, - 1139, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1143, - 0, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1144, - 0, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1145, - 0, 1145, 1145, 1145, 1145, 1145, 1145, 1150, 1150, 1150, - 1150, 1150, 1150, 1150, 1150, 1150, 0, 0, 0, 1150, - 1150, 1150, 1150, 1150, 1154, 1154, 1154, 1154, 1154, 1154, - 1154, 1154, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, - - 1150, 1150, 1150, 1150, 1150, 1150, 1153, 0, 1153, 1153, - 1153, 1153, 1153, 1153, 1153, 1153, 1153, 0, 0, 0, - 1153, 1153, 1153, 1153, 1153, 1156, 0, 1156, 1156, 1156, - 1156, 1156, 1156, 1156, 1156, 1160, 1160, 1160, 1160, 1160, - 1160, 1153, 1153, 1153, 1153, 1153, 1153, 1158, 0, 1158, + 32, 32, 32, 32, 32, 32, 32, 218, 250, 250, + 32, 32, 32, 32, 32, 100, 100, 100, 100, 100, + 100, 100, 100, 138, 138, 138, 138, 138, 138, 32, + 32, 32, 32, 32, 32, 36, 36, 36, 218, 36, + 1355, 36, 36, 126, 1352, 36, 126, 126, 126, 126, + 126, 126, 126, 126, 231, 231, 231, 36, 36, 36, + + 52, 254, 52, 52, 52, 52, 52, 52, 52, 52, + 52, 234, 288, 1350, 52, 52, 52, 52, 52, 160, + 234, 288, 131, 160, 243, 260, 131, 131, 293, 160, + 243, 52, 254, 52, 52, 52, 52, 52, 52, 55, + 266, 1346, 160, 55, 131, 55, 266, 260, 55, 55, + 293, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 131, 359, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + + 55, 57, 57, 57, 57, 57, 57, 57, 57, 57, + 1341, 359, 267, 57, 57, 57, 57, 57, 267, 268, + 251, 133, 133, 133, 133, 133, 133, 133, 133, 304, + 167, 167, 57, 57, 57, 57, 57, 57, 61, 61, + 61, 251, 61, 332, 61, 61, 318, 91, 61, 91, + 133, 91, 332, 91, 91, 474, 474, 91, 251, 268, + 61, 61, 61, 227, 227, 227, 227, 227, 227, 91, + 91, 91, 94, 167, 94, 300, 94, 318, 94, 94, + 300, 315, 94, 125, 1334, 125, 315, 125, 304, 125, + 125, 1332, 425, 125, 94, 94, 94, 96, 96, 96, + + 96, 96, 96, 96, 96, 125, 125, 125, 425, 96, + 96, 96, 96, 96, 136, 136, 136, 136, 136, 136, + 136, 136, 148, 351, 1330, 363, 148, 148, 96, 96, + 96, 96, 96, 96, 103, 103, 103, 103, 103, 103, + 103, 103, 276, 276, 148, 351, 103, 103, 103, 103, + 103, 128, 276, 128, 316, 128, 363, 128, 128, 316, + 439, 128, 354, 148, 501, 103, 103, 103, 103, 103, + 103, 278, 278, 128, 128, 128, 130, 436, 130, 343, + 130, 278, 130, 130, 354, 132, 130, 132, 343, 132, + 439, 132, 132, 436, 501, 132, 355, 367, 130, 130, + + 130, 291, 291, 291, 291, 291, 291, 132, 132, 132, + 134, 134, 134, 134, 134, 134, 134, 134, 355, 367, + 1328, 428, 134, 134, 134, 134, 134, 137, 137, 137, + 137, 137, 137, 137, 137, 327, 327, 327, 327, 327, + 327, 134, 134, 134, 134, 134, 134, 139, 139, 139, + 139, 139, 139, 139, 139, 337, 337, 345, 345, 139, + 139, 139, 139, 139, 150, 337, 150, 345, 150, 428, + 150, 150, 497, 497, 150, 347, 347, 1323, 139, 139, + 139, 139, 139, 139, 1313, 347, 150, 150, 150, 161, + 161, 168, 161, 161, 210, 168, 370, 360, 210, 161, + + 371, 168, 356, 1311, 210, 215, 215, 360, 215, 215, + 372, 356, 161, 168, 168, 215, 210, 210, 370, 372, + 216, 216, 371, 216, 216, 373, 566, 566, 215, 430, + 216, 437, 161, 169, 373, 169, 169, 169, 169, 169, + 169, 169, 169, 216, 430, 635, 635, 437, 215, 217, + 217, 217, 217, 217, 217, 217, 217, 335, 335, 335, + 335, 335, 335, 216, 169, 170, 391, 170, 170, 170, + 170, 170, 170, 170, 170, 391, 417, 221, 217, 221, + 221, 221, 221, 221, 221, 226, 226, 226, 226, 226, + 226, 226, 226, 498, 1304, 498, 170, 171, 417, 171, + + 171, 171, 171, 171, 171, 171, 171, 228, 221, 228, + 228, 228, 228, 228, 228, 228, 228, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 583, 1301, 171, 172, + 411, 172, 172, 172, 172, 172, 172, 172, 172, 411, + 1289, 583, 1286, 172, 172, 172, 172, 172, 253, 253, + 253, 253, 253, 253, 253, 253, 404, 404, 404, 404, + 404, 404, 172, 172, 172, 172, 172, 172, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 253, 429, 648, + 648, 174, 174, 174, 174, 174, 257, 429, 257, 257, + 257, 257, 257, 257, 414, 414, 414, 414, 414, 414, + + 174, 174, 174, 174, 174, 174, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 763, 763, 257, 176, 176, + 176, 176, 176, 275, 275, 275, 275, 275, 275, 275, + 275, 421, 423, 833, 833, 851, 851, 176, 176, 176, + 176, 176, 176, 178, 178, 178, 178, 178, 178, 178, + 178, 493, 1283, 421, 423, 178, 178, 178, 178, 178, + 281, 281, 281, 281, 281, 281, 281, 281, 972, 972, + 281, 380, 380, 493, 178, 178, 178, 178, 178, 178, + 197, 380, 197, 197, 197, 197, 197, 197, 197, 197, + 284, 284, 284, 284, 284, 284, 284, 284, 284, 290, + + 290, 290, 290, 290, 290, 290, 290, 994, 994, 591, + 678, 197, 198, 469, 198, 198, 198, 198, 198, 198, + 198, 198, 292, 469, 292, 292, 292, 292, 292, 292, + 292, 292, 317, 317, 317, 317, 317, 317, 317, 317, + 591, 678, 782, 198, 199, 446, 199, 199, 199, 199, + 199, 199, 199, 199, 446, 382, 382, 873, 688, 688, + 688, 317, 393, 393, 321, 382, 321, 321, 321, 321, + 321, 321, 393, 782, 983, 199, 200, 447, 200, 200, + 200, 200, 200, 200, 200, 200, 447, 688, 873, 1281, + 200, 200, 200, 200, 200, 321, 326, 326, 326, 326, + + 326, 326, 326, 326, 506, 983, 1030, 1030, 1275, 200, + 200, 200, 200, 200, 200, 202, 202, 202, 202, 202, + 202, 202, 202, 395, 395, 1272, 506, 202, 202, 202, + 202, 202, 328, 395, 328, 328, 328, 328, 328, 328, + 328, 328, 1271, 416, 416, 1267, 202, 202, 202, 202, + 202, 202, 219, 416, 219, 219, 219, 219, 219, 219, + 219, 219, 329, 1262, 329, 329, 329, 329, 329, 329, + 329, 329, 330, 459, 330, 330, 330, 330, 330, 330, + 330, 330, 459, 219, 220, 471, 220, 220, 220, 220, + 220, 220, 220, 220, 331, 471, 331, 331, 331, 331, + + 331, 331, 331, 331, 334, 334, 334, 334, 334, 334, + 334, 334, 1037, 1037, 1077, 220, 225, 225, 225, 225, + 225, 225, 225, 225, 225, 225, 225, 485, 1059, 1059, + 225, 225, 225, 225, 225, 336, 485, 336, 336, 336, + 336, 336, 336, 336, 336, 1077, 1162, 1162, 1261, 225, + 225, 225, 225, 225, 225, 235, 235, 235, 235, 235, + 235, 235, 235, 1260, 780, 780, 780, 235, 235, 235, + 235, 235, 344, 344, 344, 344, 344, 344, 344, 344, + 450, 450, 450, 450, 450, 450, 235, 235, 235, 235, + 235, 235, 255, 780, 255, 255, 255, 255, 255, 255, + + 255, 255, 350, 350, 350, 350, 350, 350, 350, 350, + 1259, 558, 350, 362, 362, 362, 362, 362, 362, 362, + 362, 558, 1258, 255, 256, 516, 256, 256, 256, 256, + 256, 256, 256, 256, 516, 576, 1257, 582, 582, 452, + 452, 366, 362, 366, 366, 366, 366, 366, 366, 452, + 582, 1205, 1205, 1212, 1212, 256, 269, 576, 269, 269, + 269, 269, 269, 269, 269, 269, 462, 462, 462, 462, + 462, 462, 366, 385, 385, 385, 385, 385, 385, 385, + 385, 1219, 1219, 385, 1241, 1241, 1256, 269, 270, 1250, + 270, 270, 270, 270, 270, 270, 270, 270, 386, 386, + + 386, 386, 386, 386, 386, 386, 388, 518, 388, 388, + 388, 388, 388, 388, 388, 388, 518, 1279, 1279, 270, + 271, 561, 271, 271, 271, 271, 271, 271, 271, 271, + 389, 561, 389, 389, 389, 389, 389, 389, 389, 389, + 390, 535, 390, 390, 390, 390, 390, 390, 1310, 1310, + 535, 271, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 1249, 1242, 1234, 1230, 274, 274, 274, 274, 274, + 392, 392, 392, 392, 392, 392, 392, 392, 478, 478, + 478, 478, 478, 478, 274, 274, 274, 274, 274, 274, + 277, 277, 277, 277, 277, 277, 277, 277, 578, 1225, + + 1213, 1206, 277, 277, 277, 277, 277, 398, 398, 398, + 398, 398, 398, 398, 398, 1199, 1197, 398, 1191, 1190, + 578, 277, 277, 277, 277, 277, 277, 279, 279, 279, + 279, 279, 279, 279, 279, 279, 279, 279, 289, 289, + 289, 289, 289, 289, 289, 289, 289, 289, 289, 1183, + 1182, 1181, 289, 289, 289, 289, 289, 403, 403, 403, + 403, 403, 403, 403, 403, 1180, 1179, 1178, 464, 464, + 1177, 289, 289, 289, 289, 289, 289, 307, 464, 307, + 307, 307, 307, 307, 307, 307, 307, 405, 563, 405, + 405, 405, 405, 405, 405, 405, 405, 408, 563, 408, + + 408, 408, 408, 408, 408, 408, 408, 1173, 307, 308, + 630, 308, 308, 308, 308, 308, 308, 308, 308, 409, + 630, 409, 409, 409, 409, 409, 409, 409, 409, 410, + 570, 410, 410, 410, 410, 410, 410, 410, 410, 570, + 308, 309, 1169, 309, 309, 309, 309, 309, 309, 309, + 309, 413, 413, 413, 413, 413, 413, 413, 413, 415, + 600, 415, 415, 415, 415, 415, 415, 415, 415, 600, + 1164, 1156, 309, 319, 601, 319, 319, 319, 319, 319, + 319, 319, 319, 601, 1146, 1131, 438, 438, 438, 438, + 438, 438, 438, 438, 442, 442, 442, 442, 442, 442, + + 442, 1125, 1120, 1119, 319, 320, 1117, 320, 320, 320, + 320, 320, 320, 320, 320, 438, 449, 449, 449, 449, + 449, 449, 449, 449, 442, 451, 606, 451, 451, 451, + 451, 451, 451, 451, 451, 606, 320, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 621, 1116, + 1115, 325, 325, 325, 325, 325, 453, 621, 453, 453, + 453, 453, 453, 453, 453, 453, 1110, 1105, 1100, 1099, + 325, 325, 325, 325, 325, 325, 333, 333, 333, 333, + 333, 333, 333, 333, 333, 333, 333, 1097, 1095, 1093, + 333, 333, 333, 333, 333, 454, 632, 454, 454, 454, + + 454, 454, 454, 454, 454, 1091, 632, 1089, 1088, 333, + 333, 333, 333, 333, 333, 340, 340, 340, 340, 340, + 340, 340, 340, 486, 486, 1087, 1063, 340, 340, 340, + 340, 340, 455, 486, 455, 455, 455, 455, 455, 455, + 455, 455, 1052, 1048, 1043, 1031, 340, 340, 340, 340, + 340, 340, 346, 346, 346, 346, 346, 346, 346, 346, + 488, 488, 1024, 1022, 346, 346, 346, 346, 346, 456, + 488, 456, 456, 456, 456, 456, 456, 456, 456, 1020, + 1019, 1017, 1005, 346, 346, 346, 346, 346, 346, 348, + 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, + + 364, 643, 364, 364, 364, 364, 364, 364, 364, 364, + 457, 643, 457, 457, 457, 457, 457, 457, 457, 457, + 458, 663, 458, 458, 458, 458, 458, 458, 458, 458, + 663, 364, 365, 1002, 365, 365, 365, 365, 365, 365, + 365, 365, 461, 461, 461, 461, 461, 461, 461, 461, + 463, 645, 463, 463, 463, 463, 463, 463, 463, 463, + 999, 645, 997, 365, 374, 374, 374, 374, 374, 374, + 374, 374, 374, 468, 468, 468, 468, 468, 468, 468, + 468, 477, 477, 477, 477, 477, 477, 477, 477, 995, + 990, 987, 966, 962, 374, 375, 375, 375, 375, 375, + + 375, 375, 375, 375, 479, 955, 479, 479, 479, 479, + 479, 479, 479, 479, 480, 480, 480, 480, 480, 480, + 480, 480, 940, 935, 934, 375, 376, 376, 376, 376, + 376, 376, 376, 376, 376, 482, 657, 482, 482, 482, + 482, 482, 482, 482, 482, 483, 657, 483, 483, 483, + 483, 483, 483, 483, 483, 933, 376, 381, 381, 381, + 381, 381, 381, 381, 381, 519, 519, 932, 931, 381, + 381, 381, 381, 381, 484, 519, 484, 484, 484, 484, + 484, 484, 548, 548, 548, 548, 548, 548, 381, 381, + 381, 381, 381, 381, 383, 383, 383, 383, 383, 383, + + 383, 383, 383, 383, 383, 394, 394, 394, 394, 394, + 394, 394, 394, 919, 914, 909, 884, 394, 394, 394, + 394, 394, 491, 491, 491, 491, 491, 491, 491, 491, + 880, 861, 491, 855, 844, 840, 394, 394, 394, 394, + 394, 394, 396, 396, 396, 396, 396, 396, 396, 396, + 396, 396, 396, 402, 739, 402, 402, 402, 402, 402, + 402, 402, 402, 402, 739, 835, 827, 402, 402, 402, + 402, 402, 500, 500, 500, 500, 500, 500, 500, 500, + 499, 825, 823, 822, 787, 786, 402, 402, 402, 402, + 402, 402, 407, 407, 407, 407, 407, 407, 407, 407, + + 499, 500, 499, 499, 407, 407, 407, 407, 407, 692, + 504, 504, 504, 504, 504, 504, 504, 774, 692, 757, + 753, 499, 746, 407, 407, 407, 407, 407, 407, 412, + 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, + 504, 521, 521, 412, 412, 412, 412, 412, 734, 733, + 751, 521, 525, 525, 525, 525, 525, 525, 525, 525, + 751, 732, 412, 412, 412, 412, 412, 412, 431, 431, + 431, 431, 431, 431, 431, 431, 431, 524, 524, 524, + 524, 524, 524, 524, 524, 731, 527, 524, 527, 527, + 527, 527, 527, 527, 527, 527, 730, 718, 431, 432, + + 432, 432, 432, 432, 432, 432, 432, 432, 528, 713, + 528, 528, 528, 528, 528, 528, 528, 528, 529, 694, + 529, 529, 529, 529, 529, 529, 708, 691, 694, 432, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 530, + 530, 530, 530, 530, 530, 530, 530, 532, 701, 532, + 532, 532, 532, 532, 532, 532, 532, 701, 690, 689, + 433, 440, 440, 440, 440, 440, 440, 440, 440, 440, + 533, 675, 533, 533, 533, 533, 533, 533, 533, 533, + 534, 722, 534, 534, 534, 534, 534, 534, 673, 672, + 722, 440, 441, 441, 441, 441, 441, 441, 441, 441, + + 441, 536, 536, 536, 536, 536, 536, 536, 536, 537, + 537, 539, 539, 556, 556, 556, 556, 556, 556, 537, + 671, 539, 441, 448, 448, 448, 448, 448, 448, 448, + 448, 448, 448, 448, 670, 659, 652, 448, 448, 448, + 448, 448, 542, 542, 542, 542, 542, 542, 542, 542, + 641, 637, 542, 628, 627, 599, 448, 448, 448, 448, + 448, 448, 460, 460, 460, 460, 460, 460, 460, 460, + 460, 460, 460, 598, 597, 585, 460, 460, 460, 460, + 460, 547, 547, 547, 547, 547, 547, 547, 547, 573, + 573, 573, 573, 573, 573, 460, 460, 460, 460, 460, + + 460, 467, 467, 467, 467, 467, 467, 467, 467, 575, + 575, 584, 580, 467, 467, 467, 467, 467, 549, 575, + 549, 549, 549, 549, 549, 549, 549, 549, 559, 553, + 545, 544, 467, 467, 467, 467, 467, 467, 470, 470, + 470, 470, 470, 470, 470, 470, 611, 611, 543, 531, + 470, 470, 470, 470, 470, 550, 611, 550, 550, 550, + 550, 550, 550, 550, 550, 526, 626, 626, 515, 470, + 470, 470, 470, 470, 470, 472, 626, 472, 472, 472, + 472, 472, 472, 472, 472, 472, 476, 758, 476, 476, + 476, 476, 476, 476, 476, 476, 476, 758, 514, 513, + + 476, 476, 476, 476, 476, 551, 760, 551, 551, 551, + 551, 551, 551, 551, 551, 508, 760, 507, 496, 476, + 476, 476, 476, 476, 476, 487, 487, 487, 487, 487, + 487, 487, 487, 664, 664, 495, 494, 487, 487, 487, + 487, 487, 552, 664, 552, 552, 552, 552, 552, 552, + 552, 552, 481, 475, 466, 465, 487, 487, 487, 487, + 487, 487, 489, 489, 489, 489, 489, 489, 489, 489, + 489, 489, 489, 492, 492, 767, 445, 492, 444, 492, + 443, 435, 492, 492, 767, 492, 492, 492, 492, 492, + 492, 492, 492, 492, 492, 492, 492, 434, 427, 492, + + 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, + 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, + 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, + 492, 492, 492, 492, 492, 502, 502, 502, 502, 502, + 502, 502, 502, 502, 555, 555, 555, 555, 555, 555, + 555, 555, 557, 789, 557, 557, 557, 557, 557, 557, + 557, 557, 789, 426, 420, 502, 503, 503, 503, 503, + 503, 503, 503, 503, 503, 560, 560, 560, 560, 560, + 560, 560, 560, 567, 790, 567, 567, 567, 567, 567, + 567, 567, 567, 790, 666, 666, 503, 505, 505, 795, + + 419, 505, 406, 505, 666, 401, 505, 505, 795, 505, + 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, + 505, 400, 399, 505, 505, 505, 505, 505, 505, 505, + 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, + 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, + 505, 505, 505, 505, 505, 505, 505, 505, 505, 509, + 828, 509, 509, 509, 509, 509, 509, 509, 509, 568, + 828, 568, 568, 568, 568, 568, 568, 568, 568, 569, + 801, 569, 569, 569, 569, 569, 569, 569, 569, 801, + 509, 510, 387, 510, 510, 510, 510, 510, 510, 510, + + 510, 572, 572, 572, 572, 572, 572, 572, 572, 574, + 830, 574, 574, 574, 574, 574, 574, 574, 574, 581, + 830, 379, 510, 511, 816, 511, 511, 511, 511, 511, + 511, 511, 511, 816, 596, 378, 596, 596, 596, 581, + 377, 581, 581, 590, 590, 590, 590, 590, 590, 590, + 590, 369, 368, 358, 511, 512, 357, 512, 512, 512, + 512, 512, 512, 512, 512, 596, 604, 604, 604, 604, + 604, 604, 590, 603, 603, 603, 603, 603, 603, 603, + 603, 353, 352, 342, 341, 339, 512, 517, 517, 517, + 517, 517, 517, 517, 517, 695, 695, 338, 324, 517, + + 517, 517, 517, 517, 605, 695, 605, 605, 605, 605, + 605, 605, 605, 605, 323, 322, 314, 313, 517, 517, + 517, 517, 517, 517, 520, 520, 520, 520, 520, 520, + 520, 520, 312, 311, 310, 303, 520, 520, 520, 520, + 520, 608, 608, 608, 608, 608, 608, 608, 608, 609, + 609, 609, 609, 609, 609, 520, 520, 520, 520, 520, + 520, 522, 522, 522, 522, 522, 522, 522, 522, 522, + 522, 522, 538, 538, 538, 538, 538, 538, 538, 538, + 697, 697, 302, 301, 538, 538, 538, 538, 538, 610, + 697, 610, 610, 610, 610, 610, 610, 610, 610, 299, + + 298, 297, 296, 538, 538, 538, 538, 538, 538, 540, + 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, + 546, 846, 546, 546, 546, 546, 546, 546, 546, 546, + 546, 846, 295, 286, 546, 546, 546, 546, 546, 612, + 612, 612, 612, 612, 612, 612, 612, 612, 285, 283, + 702, 702, 282, 546, 546, 546, 546, 546, 546, 554, + 702, 554, 554, 554, 554, 554, 554, 554, 554, 554, + 273, 272, 265, 554, 554, 554, 554, 554, 613, 613, + 613, 613, 613, 613, 613, 613, 613, 264, 263, 262, + 261, 259, 554, 554, 554, 554, 554, 554, 562, 562, + + 562, 562, 562, 562, 562, 562, 248, 247, 246, 245, + 562, 562, 562, 562, 562, 614, 614, 614, 614, 614, + 614, 614, 614, 614, 244, 242, 704, 704, 241, 562, + 562, 562, 562, 562, 562, 564, 704, 564, 564, 564, + 564, 564, 564, 564, 564, 564, 571, 571, 571, 571, + 571, 571, 571, 571, 571, 571, 571, 865, 240, 239, + 571, 571, 571, 571, 571, 615, 865, 615, 615, 615, + 615, 615, 615, 615, 615, 238, 724, 724, 236, 571, + 571, 571, 571, 571, 571, 586, 724, 586, 586, 586, + 586, 586, 586, 586, 586, 616, 848, 616, 616, 616, + + 616, 616, 616, 616, 616, 617, 848, 617, 617, 617, + 617, 617, 617, 617, 617, 233, 586, 587, 860, 587, + 587, 587, 587, 587, 587, 587, 587, 618, 860, 618, + 618, 618, 618, 618, 618, 618, 618, 619, 886, 619, + 619, 619, 619, 619, 619, 619, 619, 886, 587, 588, + 945, 588, 588, 588, 588, 588, 588, 588, 588, 620, + 945, 620, 620, 620, 620, 620, 620, 620, 620, 623, + 623, 623, 623, 623, 623, 623, 623, 232, 229, 224, + 588, 589, 223, 589, 589, 589, 589, 589, 589, 589, + 589, 624, 624, 624, 624, 624, 624, 625, 888, 625, + + 625, 625, 625, 625, 625, 625, 625, 888, 212, 208, + 207, 206, 589, 592, 205, 592, 592, 592, 592, 592, + 592, 592, 592, 636, 636, 636, 636, 636, 636, 636, + 636, 638, 895, 638, 638, 638, 638, 638, 638, 638, + 638, 895, 204, 203, 592, 593, 960, 593, 593, 593, + 593, 593, 593, 593, 593, 639, 960, 639, 639, 639, + 639, 639, 639, 639, 639, 640, 902, 640, 640, 640, + 640, 640, 640, 201, 193, 902, 593, 594, 190, 594, + 594, 594, 594, 594, 594, 594, 594, 642, 642, 642, + 642, 642, 642, 642, 642, 649, 923, 649, 649, 649, + + 649, 649, 649, 649, 649, 923, 189, 188, 594, 595, + 967, 595, 595, 595, 595, 595, 595, 595, 595, 650, + 967, 650, 650, 650, 650, 650, 650, 650, 650, 651, + 973, 651, 651, 651, 651, 651, 651, 651, 651, 973, + 595, 602, 602, 602, 602, 602, 602, 602, 602, 602, + 602, 602, 187, 186, 184, 602, 602, 602, 602, 602, + 654, 654, 654, 654, 654, 654, 654, 654, 655, 655, + 655, 655, 655, 655, 602, 602, 602, 602, 602, 602, + 607, 607, 607, 607, 607, 607, 607, 607, 607, 607, + 607, 183, 182, 181, 607, 607, 607, 607, 607, 656, + + 969, 656, 656, 656, 656, 656, 656, 656, 656, 180, + 969, 179, 175, 607, 607, 607, 607, 607, 607, 622, + 622, 622, 622, 622, 622, 622, 622, 622, 622, 622, + 173, 166, 159, 622, 622, 622, 622, 622, 658, 658, + 658, 658, 658, 658, 658, 658, 737, 737, 737, 737, + 737, 737, 622, 622, 622, 622, 622, 622, 631, 631, + 631, 631, 631, 631, 631, 631, 726, 726, 153, 149, + 631, 631, 631, 631, 631, 660, 726, 660, 660, 660, + 660, 660, 660, 660, 660, 147, 772, 772, 144, 631, + 631, 631, 631, 631, 631, 633, 772, 633, 633, 633, + + 633, 633, 633, 633, 633, 633, 644, 644, 644, 644, + 644, 644, 644, 644, 800, 800, 143, 141, 644, 644, + 644, 644, 644, 661, 800, 661, 661, 661, 661, 661, + 661, 661, 661, 135, 806, 806, 129, 644, 644, 644, + 644, 644, 644, 646, 806, 646, 646, 646, 646, 646, + 646, 646, 646, 646, 653, 989, 653, 653, 653, 653, + 653, 653, 653, 653, 653, 989, 127, 124, 653, 653, + 653, 653, 653, 662, 117, 662, 662, 662, 662, 662, + 662, 749, 749, 749, 749, 749, 749, 653, 653, 653, + 653, 653, 653, 665, 665, 665, 665, 665, 665, 665, + + 665, 116, 115, 114, 113, 665, 665, 665, 665, 665, + 669, 669, 669, 669, 669, 669, 669, 669, 108, 107, + 669, 105, 102, 98, 665, 665, 665, 665, 665, 665, + 667, 667, 667, 667, 667, 667, 667, 667, 667, 667, + 667, 674, 97, 674, 996, 674, 998, 674, 674, 991, + 676, 674, 676, 996, 676, 998, 676, 676, 1001, 991, + 676, 821, 821, 674, 674, 674, 683, 1001, 683, 683, + 683, 821, 676, 676, 676, 677, 677, 677, 677, 677, + 677, 677, 677, 93, 866, 866, 687, 687, 687, 687, + 687, 687, 687, 687, 866, 90, 716, 683, 716, 716, + + 716, 716, 716, 716, 677, 679, 88, 679, 679, 679, + 679, 679, 679, 679, 679, 687, 700, 700, 700, 700, + 700, 700, 700, 700, 86, 85, 700, 84, 707, 707, + 707, 707, 707, 707, 707, 707, 679, 680, 707, 680, + 680, 680, 680, 680, 680, 680, 680, 709, 709, 709, + 709, 709, 709, 709, 709, 709, 710, 710, 710, 710, + 710, 710, 710, 710, 710, 82, 75, 69, 680, 681, + 64, 681, 681, 681, 681, 681, 681, 681, 681, 711, + 711, 711, 711, 711, 711, 711, 712, 712, 712, 712, + 712, 712, 712, 712, 770, 770, 770, 770, 770, 770, + + 681, 682, 1025, 682, 682, 682, 682, 682, 682, 682, + 682, 714, 1025, 714, 714, 714, 714, 714, 714, 714, + 714, 715, 1004, 715, 715, 715, 715, 715, 715, 715, + 715, 1004, 682, 684, 60, 684, 684, 684, 684, 684, + 684, 684, 684, 717, 717, 717, 717, 717, 717, 717, + 717, 719, 1016, 719, 719, 719, 719, 719, 719, 719, + 719, 1016, 59, 58, 684, 685, 1027, 685, 685, 685, + 685, 685, 685, 685, 685, 720, 1027, 720, 720, 720, + 720, 720, 720, 720, 720, 721, 1069, 721, 721, 721, + 721, 721, 721, 56, 50, 1069, 685, 686, 48, 686, + + 686, 686, 686, 686, 686, 686, 686, 723, 723, 723, + 723, 723, 723, 723, 723, 729, 729, 729, 729, 729, + 729, 729, 729, 46, 45, 729, 44, 1032, 686, 693, + 693, 693, 693, 693, 693, 693, 693, 1032, 43, 42, + 41, 693, 693, 693, 693, 693, 736, 736, 736, 736, + 736, 736, 736, 736, 793, 793, 793, 793, 793, 793, + 693, 693, 693, 693, 693, 693, 696, 696, 696, 696, + 696, 696, 696, 696, 868, 868, 35, 34, 696, 696, + 696, 696, 696, 738, 868, 738, 738, 738, 738, 738, + 738, 738, 738, 33, 31, 28, 22, 696, 696, 696, + + 696, 696, 696, 698, 698, 698, 698, 698, 698, 698, + 698, 698, 698, 698, 703, 703, 703, 703, 703, 703, + 703, 703, 889, 889, 19, 18, 703, 703, 703, 703, + 703, 740, 889, 740, 740, 740, 740, 740, 740, 740, + 740, 17, 15, 14, 13, 703, 703, 703, 703, 703, + 703, 705, 705, 705, 705, 705, 705, 705, 705, 705, + 705, 705, 725, 725, 725, 725, 725, 725, 725, 725, + 891, 891, 0, 0, 725, 725, 725, 725, 725, 741, + 891, 741, 741, 741, 741, 741, 741, 741, 741, 0, + 0, 0, 0, 725, 725, 725, 725, 725, 725, 727, + + 727, 727, 727, 727, 727, 727, 727, 727, 727, 727, + 735, 1034, 735, 735, 735, 735, 735, 735, 735, 735, + 735, 1034, 0, 0, 735, 735, 735, 735, 735, 742, + 1092, 742, 742, 742, 742, 742, 742, 742, 742, 1092, + 896, 896, 0, 735, 735, 735, 735, 735, 735, 743, + 896, 743, 743, 743, 743, 743, 743, 743, 743, 744, + 1054, 744, 744, 744, 744, 744, 744, 744, 744, 745, + 1054, 745, 745, 745, 745, 745, 745, 745, 745, 747, + 1056, 747, 747, 747, 747, 747, 747, 747, 747, 747, + 1056, 0, 0, 747, 747, 747, 747, 747, 748, 748, + + 748, 748, 748, 748, 748, 748, 798, 798, 798, 798, + 798, 798, 747, 747, 747, 747, 747, 747, 750, 0, + 750, 750, 750, 750, 750, 750, 750, 750, 752, 752, + 752, 752, 752, 752, 752, 752, 754, 1068, 754, 754, + 754, 754, 754, 754, 754, 754, 755, 1068, 755, 755, + 755, 755, 755, 755, 755, 755, 756, 0, 756, 756, + 756, 756, 756, 756, 759, 759, 759, 759, 759, 759, + 759, 759, 0, 0, 0, 0, 759, 759, 759, 759, + 759, 764, 764, 764, 764, 764, 764, 764, 764, 764, + 0, 0, 898, 898, 0, 759, 759, 759, 759, 759, + + 759, 761, 898, 761, 761, 761, 761, 761, 761, 761, + 761, 761, 765, 765, 765, 765, 765, 765, 765, 765, + 765, 766, 766, 766, 766, 766, 766, 766, 766, 766, + 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, + 768, 0, 0, 0, 768, 768, 768, 768, 768, 769, + 769, 769, 769, 769, 769, 769, 769, 804, 804, 804, + 804, 804, 804, 768, 768, 768, 768, 768, 768, 771, + 1090, 771, 771, 771, 771, 771, 771, 771, 771, 776, + 1090, 776, 776, 776, 776, 776, 776, 776, 776, 0, + 0, 0, 779, 779, 779, 779, 779, 779, 779, 779, + + 781, 781, 781, 781, 781, 781, 781, 781, 0, 0, + 776, 777, 0, 777, 777, 777, 777, 777, 777, 777, + 777, 779, 819, 819, 819, 819, 819, 819, 785, 781, + 785, 785, 785, 785, 785, 785, 858, 858, 858, 858, + 858, 858, 777, 778, 0, 778, 778, 778, 778, 778, + 778, 778, 778, 883, 883, 883, 883, 883, 883, 785, + 792, 792, 792, 792, 792, 792, 792, 792, 938, 938, + 938, 938, 938, 938, 778, 783, 1130, 783, 783, 783, + 783, 783, 783, 783, 783, 794, 1130, 794, 794, 794, + 794, 794, 794, 794, 794, 797, 797, 797, 797, 797, + + 797, 797, 797, 0, 0, 0, 783, 784, 1136, 784, + 784, 784, 784, 784, 784, 784, 784, 799, 1136, 799, + 799, 799, 799, 799, 799, 799, 799, 803, 803, 803, + 803, 803, 803, 803, 803, 0, 0, 0, 784, 788, + 788, 788, 788, 788, 788, 788, 788, 788, 1094, 0, + 0, 788, 788, 788, 788, 788, 805, 1094, 805, 805, + 805, 805, 805, 805, 805, 805, 0, 0, 0, 0, + 788, 788, 788, 788, 788, 788, 791, 791, 791, 791, + 791, 791, 791, 791, 791, 791, 791, 0, 0, 0, + 791, 791, 791, 791, 791, 807, 807, 807, 807, 807, + + 807, 807, 807, 807, 0, 0, 0, 0, 0, 791, + 791, 791, 791, 791, 791, 796, 796, 796, 796, 796, + 796, 796, 796, 796, 796, 796, 0, 0, 0, 796, + 796, 796, 796, 796, 808, 808, 808, 808, 808, 808, + 808, 808, 808, 0, 0, 0, 0, 0, 796, 796, + 796, 796, 796, 796, 802, 802, 802, 802, 802, 802, + 802, 802, 802, 802, 802, 0, 0, 0, 802, 802, + 802, 802, 802, 809, 809, 809, 809, 809, 809, 809, + 809, 809, 0, 0, 903, 903, 0, 802, 802, 802, + 802, 802, 802, 810, 903, 810, 810, 810, 810, 810, + + 810, 810, 810, 811, 1151, 811, 811, 811, 811, 811, + 811, 811, 811, 812, 1151, 812, 812, 812, 812, 812, + 812, 812, 812, 813, 1157, 813, 813, 813, 813, 813, + 813, 813, 813, 814, 1157, 814, 814, 814, 814, 814, + 814, 814, 814, 815, 0, 815, 815, 815, 815, 815, + 815, 815, 815, 817, 817, 817, 817, 817, 817, 817, + 817, 817, 817, 817, 0, 0, 0, 817, 817, 817, + 817, 817, 818, 818, 818, 818, 818, 818, 818, 818, + 0, 0, 0, 905, 905, 0, 817, 817, 817, 817, + 817, 817, 820, 905, 820, 820, 820, 820, 820, 820, + + 820, 820, 826, 826, 826, 826, 826, 826, 826, 826, + 0, 0, 0, 0, 826, 826, 826, 826, 826, 834, + 834, 834, 834, 834, 834, 834, 834, 943, 943, 943, + 943, 943, 943, 826, 826, 826, 826, 826, 826, 829, + 829, 829, 829, 829, 829, 829, 829, 925, 925, 0, + 0, 829, 829, 829, 829, 829, 836, 925, 836, 836, + 836, 836, 836, 836, 836, 836, 0, 927, 927, 0, + 829, 829, 829, 829, 829, 829, 831, 927, 831, 831, + 831, 831, 831, 831, 831, 831, 831, 837, 1159, 837, + 837, 837, 837, 837, 837, 837, 837, 838, 1159, 838, + + 838, 838, 838, 838, 838, 839, 839, 839, 839, 839, + 839, 839, 839, 841, 1200, 841, 841, 841, 841, 841, + 841, 841, 841, 842, 1200, 842, 842, 842, 842, 842, + 842, 842, 842, 843, 0, 843, 843, 843, 843, 843, + 843, 845, 845, 845, 845, 845, 845, 845, 845, 847, + 847, 847, 847, 847, 847, 847, 847, 978, 978, 0, + 0, 847, 847, 847, 847, 847, 852, 978, 852, 852, + 852, 852, 852, 852, 852, 852, 0, 1000, 1000, 0, + 847, 847, 847, 847, 847, 847, 849, 1000, 849, 849, + 849, 849, 849, 849, 849, 849, 849, 853, 1202, 853, + + 853, 853, 853, 853, 853, 853, 853, 854, 1202, 854, + 854, 854, 854, 854, 854, 854, 854, 856, 1207, 856, + 856, 856, 856, 856, 856, 856, 856, 856, 1207, 0, + 0, 856, 856, 856, 856, 856, 857, 857, 857, 857, + 857, 857, 857, 857, 958, 958, 958, 958, 958, 958, + 856, 856, 856, 856, 856, 856, 859, 0, 859, 859, + 859, 859, 859, 859, 859, 859, 862, 862, 862, 862, + 862, 862, 862, 862, 862, 863, 863, 863, 863, 863, + 863, 863, 863, 863, 864, 864, 864, 864, 864, 864, + 864, 867, 867, 867, 867, 867, 867, 867, 867, 0, + + 0, 0, 0, 867, 867, 867, 867, 867, 871, 871, + 871, 871, 871, 871, 871, 871, 0, 0, 871, 0, + 0, 0, 867, 867, 867, 867, 867, 867, 869, 869, + 869, 869, 869, 869, 869, 869, 869, 869, 869, 872, + 872, 872, 872, 872, 872, 872, 872, 0, 876, 0, + 876, 876, 876, 876, 876, 876, 882, 882, 882, 882, + 882, 882, 882, 882, 0, 0, 0, 0, 872, 874, + 0, 874, 874, 874, 874, 874, 874, 874, 874, 876, + 885, 1096, 885, 885, 885, 885, 885, 885, 885, 885, + 1096, 0, 894, 894, 894, 894, 894, 894, 894, 894, + + 874, 875, 894, 875, 875, 875, 875, 875, 875, 875, + 875, 901, 901, 901, 901, 901, 901, 901, 901, 0, + 0, 901, 0, 0, 908, 908, 908, 908, 908, 908, + 908, 908, 875, 877, 908, 877, 877, 877, 877, 877, + 877, 877, 877, 910, 910, 910, 910, 910, 910, 910, + 910, 910, 911, 911, 911, 911, 911, 911, 911, 911, + 911, 0, 0, 0, 877, 878, 0, 878, 878, 878, + 878, 878, 878, 878, 878, 912, 912, 912, 912, 912, + 912, 912, 913, 913, 913, 913, 913, 913, 913, 913, + 976, 976, 976, 976, 976, 976, 878, 879, 1209, 879, + + 879, 879, 879, 879, 879, 879, 879, 915, 1209, 915, + 915, 915, 915, 915, 915, 915, 915, 916, 1098, 916, + 916, 916, 916, 916, 916, 916, 916, 1098, 879, 881, + 0, 881, 881, 881, 881, 881, 881, 881, 881, 881, + 1114, 0, 0, 881, 881, 881, 881, 881, 917, 1114, + 917, 917, 917, 917, 917, 917, 1041, 1041, 1041, 1041, + 1041, 1041, 881, 881, 881, 881, 881, 881, 892, 892, + 892, 892, 892, 892, 892, 892, 892, 892, 892, 899, + 899, 899, 899, 899, 899, 899, 899, 899, 899, 899, + 906, 906, 906, 906, 906, 906, 906, 906, 906, 906, + + 906, 918, 918, 918, 918, 918, 918, 918, 918, 920, + 1214, 920, 920, 920, 920, 920, 920, 920, 920, 921, + 1214, 921, 921, 921, 921, 921, 921, 921, 921, 922, + 0, 922, 922, 922, 922, 922, 922, 924, 924, 924, + 924, 924, 924, 924, 924, 928, 928, 928, 928, 928, + 928, 928, 928, 928, 928, 928, 930, 930, 930, 930, + 930, 930, 930, 930, 0, 0, 930, 936, 1216, 936, + 936, 936, 936, 936, 936, 936, 936, 936, 1216, 0, + 0, 936, 936, 936, 936, 936, 937, 937, 937, 937, + 937, 937, 937, 937, 0, 0, 0, 1003, 1003, 0, + + 936, 936, 936, 936, 936, 936, 939, 1003, 939, 939, + 939, 939, 939, 939, 939, 939, 941, 1236, 941, 941, + 941, 941, 941, 941, 941, 941, 941, 1236, 0, 0, + 941, 941, 941, 941, 941, 942, 942, 942, 942, 942, + 942, 942, 942, 0, 0, 0, 1006, 1006, 0, 941, + 941, 941, 941, 941, 941, 944, 1006, 944, 944, 944, + 944, 944, 944, 944, 944, 946, 946, 946, 946, 946, + 946, 946, 946, 947, 947, 947, 947, 947, 947, 947, + 947, 948, 948, 948, 948, 948, 948, 948, 948, 949, + 1238, 949, 949, 949, 949, 949, 949, 949, 949, 950, + + 1238, 950, 950, 950, 950, 950, 950, 950, 950, 951, + 1247, 951, 951, 951, 951, 951, 951, 951, 951, 952, + 1247, 952, 952, 952, 952, 952, 952, 952, 952, 953, + 1274, 953, 953, 953, 953, 953, 953, 953, 953, 954, + 1274, 954, 954, 954, 954, 954, 954, 954, 954, 956, + 1276, 956, 956, 956, 956, 956, 956, 956, 956, 956, + 1276, 0, 0, 956, 956, 956, 956, 956, 957, 957, + 957, 957, 957, 957, 957, 957, 0, 0, 0, 1018, + 1018, 0, 956, 956, 956, 956, 956, 956, 959, 1018, + 959, 959, 959, 959, 959, 959, 959, 959, 961, 961, + + 961, 961, 961, 961, 961, 961, 963, 1285, 963, 963, + 963, 963, 963, 963, 963, 963, 964, 1285, 964, 964, + 964, 964, 964, 964, 964, 964, 965, 0, 965, 965, + 965, 965, 965, 965, 968, 968, 968, 968, 968, 968, + 968, 968, 0, 0, 0, 0, 968, 968, 968, 968, + 968, 975, 975, 975, 975, 975, 975, 975, 975, 1066, + 1066, 1066, 1066, 1066, 1066, 968, 968, 968, 968, 968, + 968, 970, 0, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 974, 974, 974, 974, 974, 974, 974, 974, + 974, 974, 974, 1163, 0, 0, 974, 974, 974, 974, + + 974, 977, 1163, 977, 977, 977, 977, 977, 977, 977, + 977, 0, 1070, 1070, 0, 974, 974, 974, 974, 974, + 974, 979, 1070, 979, 979, 979, 979, 979, 979, 979, + 979, 0, 0, 1288, 982, 982, 982, 982, 982, 982, + 982, 982, 986, 1288, 986, 986, 986, 986, 986, 986, + 0, 0, 979, 980, 0, 980, 980, 980, 980, 980, + 980, 980, 980, 982, 988, 988, 988, 988, 988, 988, + 988, 988, 0, 986, 1007, 1007, 1007, 1007, 1007, 1007, + 1007, 1007, 1007, 0, 980, 981, 0, 981, 981, 981, + 981, 981, 981, 981, 981, 1008, 1008, 1008, 1008, 1008, + + 1008, 1008, 1008, 1008, 1009, 1009, 1009, 1009, 1009, 1009, + 1009, 1009, 1009, 0, 0, 0, 981, 984, 1291, 984, + 984, 984, 984, 984, 984, 984, 984, 1010, 1291, 1010, + 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1011, 1248, 1011, + 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1248, 984, 985, + 1303, 985, 985, 985, 985, 985, 985, 985, 985, 1012, + 1303, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1013, + 0, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 0, + 985, 992, 0, 992, 992, 992, 992, 992, 992, 992, + 992, 992, 1014, 1305, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1015, 1305, 1015, 1015, 1015, 1015, 1015, 1015, + 1015, 1015, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, + 0, 0, 0, 0, 1023, 1023, 1023, 1023, 1023, 1039, + 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1123, 1123, 1123, + 1123, 1123, 1123, 1023, 1023, 1023, 1023, 1023, 1023, 1026, + 1026, 1026, 1026, 1026, 1026, 1026, 1026, 0, 0, 0, + 0, 1026, 1026, 1026, 1026, 1026, 1040, 1040, 1040, 1040, + 1040, 1040, 1040, 1040, 0, 0, 0, 1072, 1072, 0, + 1026, 1026, 1026, 1026, 1026, 1026, 1028, 1072, 1028, 1028, + 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1033, 1033, 1033, + + 1033, 1033, 1033, 1033, 1033, 0, 0, 0, 0, 1033, + 1033, 1033, 1033, 1033, 1042, 1042, 1042, 1042, 1042, 1042, + 1042, 1042, 1128, 1128, 1128, 1128, 1128, 1128, 1033, 1033, + 1033, 1033, 1033, 1033, 1035, 0, 1035, 1035, 1035, 1035, + 1035, 1035, 1035, 1035, 1035, 1044, 1307, 1044, 1044, 1044, + 1044, 1044, 1044, 1044, 1044, 1045, 1307, 1045, 1045, 1045, + 1045, 1045, 1045, 1045, 1045, 1046, 0, 1046, 1046, 1046, + 1046, 1046, 1046, 1047, 1047, 1047, 1047, 1047, 1047, 1047, + 1047, 1049, 1326, 1049, 1049, 1049, 1049, 1049, 1049, 1049, + 1049, 1050, 1326, 1050, 1050, 1050, 1050, 1050, 1050, 1050, + + 1050, 1051, 0, 1051, 1051, 1051, 1051, 1051, 1051, 1053, + 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1055, 1055, 1055, + 1055, 1055, 1055, 1055, 1055, 0, 0, 0, 0, 1055, + 1055, 1055, 1055, 1055, 1060, 1060, 1060, 1060, 1060, 1060, + 1060, 1060, 1134, 1134, 1134, 1134, 1134, 1134, 1055, 1055, + 1055, 1055, 1055, 1055, 1057, 0, 1057, 1057, 1057, 1057, + 1057, 1057, 1057, 1057, 1057, 1061, 1061, 1061, 1061, 1061, + 1061, 1061, 1061, 1062, 1062, 1062, 1062, 1062, 1062, 1062, + 1062, 1064, 1354, 1064, 1064, 1064, 1064, 1064, 1064, 1064, + 1064, 1064, 1354, 0, 0, 1064, 1064, 1064, 1064, 1064, + + 1065, 1065, 1065, 1065, 1065, 1065, 1065, 1065, 1149, 1149, + 1149, 1149, 1149, 1149, 1064, 1064, 1064, 1064, 1064, 1064, + 1067, 0, 1067, 1067, 1067, 1067, 1067, 1067, 1067, 1067, + 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, + 1073, 1075, 1075, 1075, 1075, 1075, 1075, 1075, 1075, 0, + 0, 1075, 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1076, + 0, 1080, 0, 1080, 1080, 1080, 1080, 1080, 1080, 1081, + 1081, 1081, 1081, 1081, 1081, 1081, 1081, 0, 0, 0, + 0, 1076, 1078, 0, 1078, 1078, 1078, 1078, 1078, 1078, + 1078, 1078, 1080, 0, 0, 0, 0, 0, 1081, 1082, + + 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1155, 1155, 1155, + 1155, 1155, 1155, 1078, 1079, 0, 1079, 1079, 1079, 1079, + 1079, 1079, 1079, 1079, 0, 0, 0, 0, 1082, 1083, + 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1103, 1103, 1103, + 1103, 1103, 1103, 1103, 1084, 1079, 1084, 1084, 1084, 1084, + 1084, 1084, 1084, 1084, 0, 0, 0, 1085, 1083, 1085, + 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1086, 0, 1086, + 1086, 1086, 1086, 1086, 1086, 1086, 1086, 1101, 1101, 1101, + 1101, 1101, 1101, 1101, 1101, 1101, 1102, 1102, 1102, 1102, + 1102, 1102, 1102, 1102, 1102, 1104, 1104, 1104, 1104, 1104, + + 1104, 1104, 1104, 1106, 0, 1106, 1106, 1106, 1106, 1106, + 1106, 1106, 1106, 1107, 0, 1107, 1107, 1107, 1107, 1107, + 1107, 1107, 1107, 1108, 0, 1108, 1108, 1108, 1108, 1108, + 1108, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1111, + 0, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1112, + 0, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1113, + 0, 1113, 1113, 1113, 1113, 1113, 1113, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 0, 0, 0, 1118, + 1118, 1118, 1118, 1118, 1122, 1122, 1122, 1122, 1122, 1122, + 1122, 1122, 0, 0, 0, 1165, 1165, 0, 1118, 1118, + + 1118, 1118, 1118, 1118, 1121, 1165, 1121, 1121, 1121, 1121, + 1121, 1121, 1121, 1121, 1121, 0, 0, 0, 1121, 1121, + 1121, 1121, 1121, 1124, 0, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 0, 0, 0, 0, 1121, 1121, 1121, + 1121, 1121, 1121, 1126, 0, 1126, 1126, 1126, 1126, 1126, + 1126, 1126, 1126, 1126, 0, 0, 0, 1126, 1126, 1126, + 1126, 1126, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, + 1194, 1194, 1194, 1194, 1194, 1194, 1126, 1126, 1126, 1126, + 1126, 1126, 1129, 0, 1129, 1129, 1129, 1129, 1129, 1129, + 1129, 1129, 1132, 0, 1132, 1132, 1132, 1132, 1132, 1132, + + 1132, 1132, 1132, 0, 0, 0, 1132, 1132, 1132, 1132, + 1132, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1223, + 1223, 1223, 1223, 1223, 1223, 1132, 1132, 1132, 1132, 1132, + 1132, 1135, 0, 1135, 1135, 1135, 1135, 1135, 1135, 1135, + 1135, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1138, + 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1139, 1139, 1139, + 1139, 1139, 1139, 1139, 1139, 1140, 0, 1140, 1140, 1140, + 1140, 1140, 1140, 1140, 1140, 1141, 0, 1141, 1141, 1141, + 1141, 1141, 1141, 1141, 1141, 1142, 0, 1142, 1142, 1142, + 1142, 1142, 1142, 1142, 1142, 1143, 0, 1143, 1143, 1143, + + 1143, 1143, 1143, 1143, 1143, 1144, 0, 1144, 1144, 1144, + 1144, 1144, 1144, 1144, 1144, 1145, 0, 1145, 1145, 1145, + 1145, 1145, 1145, 1145, 1145, 1147, 0, 1147, 1147, 1147, + 1147, 1147, 1147, 1147, 1147, 1147, 0, 0, 0, 1147, + 1147, 1147, 1147, 1147, 1148, 1148, 1148, 1148, 1148, 1148, + 1148, 1148, 1245, 1245, 1245, 1245, 1245, 1245, 1147, 1147, + 1147, 1147, 1147, 1147, 1150, 0, 1150, 1150, 1150, 1150, + 1150, 1150, 1150, 1150, 1153, 1153, 1153, 1153, 1153, 1153, + 1153, 1153, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 0, 0, - 0, 1158, 1158, 1158, 1158, 1158, 1161, 0, 1161, 1161, - 1161, 1161, 1161, 1161, 1161, 1161, 1166, 1166, 1166, 1166, - 1166, 1166, 1158, 1158, 1158, 1158, 1158, 1158, 1164, 0, - 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 0, - - 0, 0, 1164, 1164, 1164, 1164, 1164, 1165, 1165, 1165, - 1165, 1165, 1165, 1165, 1165, 1169, 1169, 1169, 1169, 1169, - 1169, 1169, 1169, 1164, 1164, 1164, 1164, 1164, 1164, 1167, - 0, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1170, - 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1171, 1171, 1171, - 1171, 1171, 1171, 1171, 1171, 1172, 0, 1172, 1172, 1172, - 1172, 1172, 1172, 1172, 1172, 1173, 0, 1173, 1173, 1173, - 1173, 1173, 1173, 1173, 1173, 1174, 0, 1174, 1174, 1174, - 1174, 1174, 1174, 1174, 1174, 1175, 0, 1175, 1175, 1175, - 1175, 1175, 1175, 1175, 1175, 1176, 0, 1176, 1176, 1176, - - 1176, 1176, 1176, 1176, 1176, 1177, 0, 1177, 1177, 1177, - 1177, 1177, 1177, 1177, 1177, 1179, 0, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 0, 0, 0, 1179, - 1179, 1179, 1179, 1179, 1180, 1180, 1180, 1180, 1180, 1180, - 1180, 1180, 1181, 1181, 1181, 1181, 1181, 1181, 0, 0, - 1179, 1179, 1179, 1179, 1179, 1179, 1182, 0, 1182, 1182, - 1182, 1182, 1182, 1182, 1182, 1182, 1185, 1185, 1185, 1185, - 1185, 1185, 1185, 1185, 1186, 1186, 1186, 1186, 1186, 1186, - 1186, 1186, 1187, 1187, 1187, 1187, 1187, 1187, 1190, 1190, - 1190, 1190, 1190, 1190, 1190, 1190, 1197, 1197, 0, 0, - - 1190, 1190, 1190, 1190, 1190, 0, 1197, 1198, 1198, 1198, - 1198, 1198, 1198, 1198, 1198, 1226, 1226, 1226, 1226, 1226, - 1226, 1190, 1190, 1190, 1190, 1190, 1190, 1192, 0, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1198, 1199, - 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1200, 1200, 1200, - 1200, 1200, 1200, 1200, 1200, 1202, 1202, 1202, 1202, 1202, - 1202, 1202, 1202, 1203, 1203, 1203, 1203, 1203, 1203, 1208, - 1199, 1208, 1208, 1208, 1208, 1208, 1208, 0, 1200, 1255, - 1255, 1255, 1255, 1255, 1255, 1260, 1202, 1260, 1260, 1260, - 1260, 1260, 1260, 0, 1203, 1204, 1204, 1204, 1204, 1204, - - 1204, 1204, 1204, 1206, 0, 1206, 1206, 1206, 1206, 1206, - 1206, 1206, 1206, 1207, 0, 1207, 1207, 1207, 1207, 1207, - 1207, 1207, 1207, 1216, 1216, 1216, 1216, 1216, 1216, 1216, - 1216, 1216, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, - 1217, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, - 1219, 0, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, - 1220, 0, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, - 1221, 0, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, - 1224, 0, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, - 1224, 0, 0, 0, 1224, 1224, 1224, 1224, 1224, 1225, - - 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1253, 1253, 1253, - 1253, 1253, 1253, 1253, 1253, 1224, 1224, 1224, 1224, 1224, - 1224, 1228, 0, 1228, 1228, 1228, 1228, 1228, 1228, 1228, - 1228, 1235, 0, 1235, 1235, 1235, 1235, 1235, 1235, 1235, - 1235, 1235, 1242, 0, 1242, 1242, 1242, 1242, 1242, 1242, - 1242, 1242, 1242, 1249, 0, 1249, 1249, 1249, 1249, 1249, - 1249, 1249, 1249, 1249, 1254, 1254, 1254, 1254, 1254, 1254, - 1254, 1254, 1256, 1256, 1256, 1256, 1256, 1256, 1256, 1256, - 1258, 0, 1258, 1258, 1258, 1258, 1258, 1258, 1258, 1258, - 1259, 0, 1259, 1259, 1259, 1259, 1259, 1259, 1259, 1259, - - 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1261, 1263, 0, - 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1264, 0, - 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1264, 1265, 0, - 1265, 1265, 1265, 1265, 1265, 1265, 1267, 1267, 1267, 1267, - 1267, 1267, 1267, 1267, 1271, 0, 1271, 1271, 1271, 1271, - 1271, 1271, 1271, 1271, 1271, 1275, 0, 1275, 1275, 1275, - 1275, 1275, 1275, 1275, 1275, 1275, 0, 0, 0, 1275, - 1275, 1275, 1275, 1275, 1276, 1276, 1276, 1276, 1276, 1276, - 1276, 1276, 1277, 1277, 1277, 1277, 1277, 1277, 0, 0, - 1275, 1275, 1275, 1275, 1275, 1275, 1278, 0, 1278, 1278, - - 1278, 1278, 1278, 1278, 1278, 1278, 1283, 1283, 1283, 1283, - 1283, 1283, 1283, 1283, 1284, 1284, 1284, 1284, 1284, 1284, - 1285, 0, 1285, 1285, 1285, 1285, 1285, 1285, 1285, 1285, - 1297, 1297, 1297, 1297, 1297, 1297, 1297, 1283, 1371, 1371, - 1371, 1371, 1371, 1371, 1286, 1284, 1286, 1286, 1286, 1286, - 1286, 1286, 1286, 1286, 1287, 0, 1287, 1287, 1287, 1287, - 1287, 1287, 1287, 1287, 1295, 1295, 1295, 1295, 1295, 1295, - 1295, 1295, 1295, 1296, 1296, 1296, 1296, 1296, 1296, 1296, - 1296, 1296, 1298, 1298, 1298, 1298, 1298, 1298, 1298, 1298, - 1300, 0, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, - - 1301, 0, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, - 1302, 0, 1302, 1302, 1302, 1302, 1302, 1302, 1305, 1305, - 1305, 1305, 1305, 1305, 1305, 1305, 1309, 0, 1309, 1309, - 1309, 1309, 1309, 1309, 1309, 1309, 1309, 1324, 1324, 1324, - 1324, 1324, 1324, 1324, 1324, 1325, 1325, 1325, 1325, 1325, - 1325, 1325, 1325, 1326, 1326, 1326, 1326, 1326, 1326, 1326, - 1326, 1327, 0, 1327, 1327, 1327, 1327, 1327, 1327, 1327, - 1327, 1328, 0, 1328, 1328, 1328, 1328, 1328, 1328, 1328, - 1328, 1329, 0, 1329, 1329, 1329, 1329, 1329, 1329, 1329, - 1329, 1330, 0, 1330, 1330, 1330, 1330, 1330, 1330, 1330, - - 1330, 1331, 0, 1331, 1331, 1331, 1331, 1331, 1331, 1331, - 1331, 1332, 0, 1332, 1332, 1332, 1332, 1332, 1332, 1332, - 1332, 1340, 0, 1340, 1340, 1340, 1340, 1340, 1340, 1340, - 1340, 1340, 1344, 1344, 1344, 1344, 1344, 1344, 1344, 1344, - 1346, 0, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, - 1347, 0, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, - 1348, 0, 1348, 1348, 1348, 1348, 1348, 1348, 1349, 1349, - 1349, 1349, 1349, 1349, 1349, 1349, 1349, 1350, 1350, 1350, - 1350, 1350, 1350, 1350, 1350, 1350, 1351, 1351, 1351, 1351, - 1351, 1351, 1351, 1351, 1351, 1352, 0, 1352, 1352, 1352, - - 1352, 1352, 1352, 1352, 1352, 1353, 0, 1353, 1353, 1353, - 1353, 1353, 1353, 1353, 1353, 1354, 0, 1354, 1354, 1354, - 1354, 1354, 1354, 1354, 1354, 1369, 1369, 1369, 1369, 1369, - 1369, 1369, 1369, 1370, 1370, 1370, 1370, 1370, 1370, 1370, - 1370, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1374, - 0, 1374, 1374, 1374, 1374, 1374, 1374, 1374, 1374, 1375, - 0, 1375, 1375, 1375, 1375, 1375, 1375, 1375, 1375, 1376, - 0, 1376, 1376, 1376, 1376, 1376, 1376, 1377, 1377, 1377, - 1377, 1377, 1377, 1377, 1377, 1379, 0, 1379, 1379, 1379, - 1379, 1379, 1379, 1379, 1379, 1380, 0, 1380, 1380, 1380, - - 1380, 1380, 1380, 1380, 1380, 1381, 0, 1381, 1381, 1381, - 1381, 1381, 1381, 1388, 1388, 1388, 1388, 1388, 1388, 1388, - 1388, 1388, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, - 1389, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, - 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1393, - 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1393, 1394, 1394, - 1394, 1394, 1394, 1394, 1394, 1395, 1395, 1395, 1395, 1395, - 1395, 1395, 1395, 1397, 0, 1397, 1397, 1397, 1397, 1397, - 1397, 1397, 1397, 1398, 0, 1398, 1398, 1398, 1398, 1398, - 1398, 1398, 1398, 1399, 0, 1399, 1399, 1399, 1399, 1399, - - 1399, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1408, - 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1409, 1409, 1409, - 1409, 1409, 1409, 1409, 1409, 1410, 0, 1410, 1410, 1410, - 1410, 1410, 1410, 1410, 1410, 1411, 0, 1411, 1411, 1411, - 1411, 1411, 1411, 1411, 1411, 1412, 0, 1412, 1412, 1412, - 1412, 1412, 1412, 1412, 1412, 1417, 1417, 1417, 1417, 1417, - 1417, 1417, 1417, 1417, 1418, 1418, 1418, 1418, 1418, 1418, - 1418, 1418, 1418, 1419, 1419, 1419, 1419, 1419, 1419, 1419, - 1420, 0, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, - 1421, 0, 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1421, - - 1422, 0, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, - 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1431, 1431, - 1431, 1431, 1431, 1431, 1431, 1431, 1432, 1432, 1432, 1432, - 1432, 1432, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, - 1435, 0, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, - 1436, 0, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, - 1437, 0, 1437, 1437, 1437, 1437, 1437, 1437, 1440, 1440, - 1440, 1440, 1440, 1440, 1440, 1440, 1442, 0, 1442, 1442, - 1442, 1442, 1442, 1442, 1442, 1442, 1443, 0, 1443, 1443, - 1443, 1443, 1443, 1443, 1443, 1443, 1444, 0, 1444, 1444, - - 1444, 1444, 1444, 1444, 1445, 1445, 1445, 1445, 1445, 1445, - 1445, 1445, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, - 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1447, 1449, 1449, - 1449, 1449, 1449, 1449, 1449, 1449, 1450, 1450, 1450, 1450, - 1450, 1450, 1450, 1450, 1451, 1451, 1451, 1451, 1451, 1451, - 1451, 1451, 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1453, - 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1455, 1455, - 1455, 1455, 1455, 1455, 1457, 1457, 1457, 1457, 1457, 1457, - 1457, 1457, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, - 1459, 1459, 1459, 1459, 1459, 1459, 1461, 1461, 1461, 1461, - - 1461, 1461, 1461, 1461, 1461, 1461, 1461, 1462, 1462, 1462, - 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1463, 1463, - 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1463, 1464, - 0, 0, 0, 1464, 1464, 1464, 0, 1464, 1464, 1464, - 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, 1465, - 1465, 1466, 0, 0, 0, 1466, 1466, 1466, 0, 1466, - 1466, 1466, 1467, 0, 0, 0, 1467, 1467, 1467, 0, - 1467, 1467, 1467, 1468, 0, 1468, 0, 1468, 1468, 1468, - 0, 1468, 1468, 1468, 1469, 0, 0, 0, 1469, 1469, - 1469, 0, 1469, 1469, 1469, 1470, 0, 0, 0, 1470, - - 1470, 1470, 0, 1470, 1470, 1470, 1471, 0, 0, 0, - 1471, 1471, 1471, 0, 1471, 1471, 1471, 1472, 0, 1472, - 0, 1472, 1472, 1472, 0, 1472, 1472, 1472, 1473, 0, - 1473, 0, 1473, 1473, 1473, 0, 1473, 1473, 1473, 1474, - 0, 1474, 1474, 1474, 1474, 1474, 0, 0, 1474, 1474, - 1475, 1475, 1476, 0, 1476, 0, 1476, 1476, 1476, 1476, - 1476, 1476, 1476, 1477, 1477, 1477, 1477, 1477, 1477, 1477, - 1477, 1477, 1477, 1477, 1478, 1478, 1478, 1478, 1478, 1478, - 1478, 1478, 1478, 1478, 1478, 1479, 0, 1479, 0, 1479, - 1479, 1479, 0, 1479, 1479, 1479, 1480, 1480, 0, 0, - - 1480, 1481, 1481, 0, 0, 0, 1481, 1482, 0, 1482, - 0, 1482, 1482, 1482, 0, 1482, 1482, 1482, 1483, 1483, - 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1483, 1484, - 1484, 0, 0, 1484, 1485, 1485, 1485, 0, 0, 1485, - 1486, 1486, 0, 0, 1486, 1487, 1487, 0, 0, 1487, - 1488, 1488, 0, 0, 1488, 1489, 1489, 1489, 0, 0, - 1489, 1490, 1490, 0, 0, 1490, 1491, 1491, 0, 0, - 1491, 1492, 1492, 1492, 1492, 0, 0, 1492, 1493, 1493, - 0, 0, 1493, 1494, 1494, 0, 0, 1494, 1495, 0, - 0, 0, 1495, 1496, 1496, 1496, 0, 0, 1496, 1497, - - 1497, 0, 0, 1497, 1498, 1498, 0, 0, 1498, 1499, - 1499, 1499, 0, 0, 1499, 1500, 1500, 0, 0, 1500, - 1501, 1501, 0, 0, 1501, 1502, 1502, 0, 0, 1502, - 1503, 1503, 1503, 1503, 0, 0, 1503, 1504, 1504, 0, - 0, 1504, 1505, 1505, 0, 0, 1505, 1506, 1506, 0, - 0, 0, 1506, 1507, 1507, 1507, 1507, 0, 0, 1507, - 1508, 1508, 1508, 1508, 0, 0, 1508, 1509, 1509, 0, - 0, 1509, 1510, 1510, 0, 0, 1510, 1511, 1511, 0, - 0, 1511, 1512, 1512, 1512, 0, 0, 1512, 1513, 1513, - 0, 0, 1513, 1514, 1514, 0, 0, 1514, 1515, 1515, - - 1515, 0, 0, 1515, 1516, 1516, 1516, 0, 0, 1516, - 1517, 1517, 1517, 0, 0, 1517, 1518, 1518, 0, 0, - 1518, 1519, 1519, 0, 0, 1519, 1520, 0, 1520, 1520, - 0, 0, 1520, 1521, 1521, 0, 0, 1521, 1522, 1522, - 1522, 1522, 0, 0, 1522, 1523, 1523, 1523, 1523, 1523, - 1523, 1523, 1523, 1523, 1523, 1523, 1524, 0, 0, 0, - 1524, 1524, 1524, 0, 1524, 1524, 1524, 1525, 1525, 0, - 0, 1525, 1526, 1526, 0, 0, 1526, 1527, 1527, 0, - 0, 0, 1527, 1528, 1528, 1528, 0, 0, 1528, 1529, - 1529, 1529, 1529, 0, 0, 1529, 1530, 1530, 1530, 1530, - - 0, 0, 1530, 1531, 1531, 0, 0, 1531, 1532, 1532, - 0, 0, 1532, 1533, 1533, 0, 0, 1533, 1534, 0, - 1534, 1534, 0, 0, 1534, 1535, 1535, 1535, 0, 0, - 1535, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, - 1536, 1536, 1537, 0, 0, 0, 1537, 1537, 1537, 0, - 1537, 1537, 1537, 1538, 0, 0, 0, 1538, 1538, 1538, - 0, 1538, 1538, 1538, 1539, 0, 0, 0, 1539, 1539, - 1539, 0, 1539, 1539, 1539, 1540, 0, 0, 0, 1540, - 1540, 1540, 0, 1540, 1540, 1540, 1541, 1541, 0, 0, - 1541, 1542, 1542, 0, 0, 1542, 1543, 1543, 1543, 0, - - 0, 1543, 1544, 1544, 1544, 0, 0, 1544, 1545, 1545, - 1545, 0, 0, 1545, 1546, 1546, 1546, 0, 0, 1546, - 1547, 1547, 0, 0, 1547, 1548, 1548, 0, 0, 1548, - 1549, 0, 0, 0, 1549, 1550, 0, 1550, 1550, 0, - 0, 1550, 1551, 0, 1551, 1551, 0, 0, 1551, 1552, - 1552, 0, 0, 1552, 1553, 1553, 1553, 1553, 0, 0, - 1553, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, - 1554, 1554, 1555, 0, 0, 0, 1555, 1555, 1555, 0, - 1555, 1555, 1555, 1556, 0, 0, 0, 1556, 1556, 1556, - 0, 1556, 1556, 1556, 1557, 0, 0, 0, 1557, 1557, - - 1557, 0, 1557, 1557, 1557, 1558, 0, 0, 0, 1558, - 1558, 1558, 0, 1558, 1558, 1558, 1559, 1559, 0, 0, - 1559, 1560, 1560, 0, 0, 1560, 1561, 1561, 0, 0, - 0, 1561, 1562, 1562, 1562, 0, 0, 1562, 1563, 1563, - 1563, 1563, 0, 0, 1563, 1564, 1564, 1564, 1564, 0, - 0, 1564, 1565, 1565, 1565, 1565, 0, 0, 1565, 1566, - 1566, 0, 0, 1566, 1567, 1567, 0, 0, 1567, 1568, - 1568, 0, 0, 1568, 1569, 1569, 0, 0, 1569, 1570, - 1570, 0, 0, 1570, 1571, 0, 1571, 1571, 0, 0, - 1571, 1572, 1572, 1572, 0, 0, 1572, 1573, 1573, 1573, - - 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1574, 0, - 0, 0, 1574, 1574, 1574, 0, 1574, 1574, 1574, 1575, - 0, 0, 0, 1575, 1575, 1575, 0, 1575, 1575, 1575, - 1576, 1576, 0, 0, 1576, 1577, 1577, 1577, 0, 0, - 1577, 1578, 1578, 1578, 0, 0, 1578, 1579, 1579, 1579, - 0, 0, 1579, 1580, 1580, 1580, 0, 0, 1580, 1581, - 1581, 1581, 0, 0, 1581, 1582, 1582, 0, 0, 1582, - 1583, 1583, 0, 0, 1583, 1584, 0, 0, 0, 1584, - 1585, 1585, 0, 0, 1585, 1586, 0, 1586, 1586, 0, - 0, 1586, 1587, 0, 1587, 1587, 0, 0, 1587, 1588, - - 1588, 0, 0, 1588, 1589, 1589, 1589, 1589, 0, 0, - 1589, 1590, 0, 0, 0, 1590, 1590, 1590, 0, 1590, - 1590, 1590, 1591, 0, 0, 0, 1591, 1591, 1591, 0, - 1591, 1591, 1591, 1592, 1592, 0, 0, 1592, 1593, 1593, - 0, 0, 0, 1593, 1594, 1594, 1594, 0, 0, 1594, - 1595, 0, 0, 0, 1595, 1596, 1596, 1596, 1596, 0, - 0, 1596, 1597, 0, 0, 0, 1597, 1598, 1598, 1598, - 1598, 0, 0, 1598, 1599, 0, 0, 0, 1599, 1600, - 1600, 1600, 1600, 0, 0, 1600, 1601, 0, 0, 0, - 1601, 1602, 1602, 1602, 1602, 0, 0, 1602, 1603, 0, - - 0, 0, 1603, 1604, 1604, 0, 0, 1604, 1605, 1605, - 0, 0, 1605, 1606, 1606, 0, 0, 1606, 1607, 1607, - 0, 0, 1607, 1608, 1608, 0, 0, 1608, 1609, 1609, - 0, 0, 1609, 1610, 0, 1610, 1610, 0, 0, 1610, - 1611, 1611, 1611, 0, 0, 1611, 1612, 0, 0, 0, - 1612, 1612, 1612, 0, 1612, 1612, 1612, 1613, 0, 0, - 0, 1613, 1613, 1613, 0, 1613, 1613, 1613, 1614, 0, - 1614, 1614, 0, 0, 1614, 1615, 1615, 0, 0, 1615, - 1616, 1616, 0, 0, 0, 1616, 1617, 1617, 1617, 0, - 0, 1617, 1618, 1618, 0, 0, 0, 1618, 1619, 1619, - - 1619, 0, 0, 1619, 1620, 1620, 0, 0, 0, 1620, - 1621, 1621, 1621, 0, 0, 1621, 1622, 1622, 0, 0, - 0, 1622, 1623, 1623, 1623, 0, 0, 1623, 1624, 1624, - 0, 0, 0, 1624, 1625, 1625, 1625, 0, 0, 1625, - 1626, 1626, 0, 0, 0, 1626, 1627, 1627, 0, 0, - 1627, 1628, 1628, 0, 0, 1628, 1629, 0, 0, 0, - 1629, 1630, 1630, 0, 0, 1630, 1631, 0, 1631, 1631, - 0, 0, 1631, 1632, 0, 1632, 1632, 0, 0, 1632, - 1633, 0, 1633, 1633, 0, 0, 1633, 1634, 1634, 0, - 0, 1634, 1635, 1635, 1635, 1635, 0, 0, 1635, 1636, - - 0, 0, 0, 1636, 1637, 0, 0, 0, 1637, 1637, - 1637, 0, 1637, 1637, 1637, 1638, 0, 0, 0, 1638, - 1638, 1638, 0, 1638, 1638, 1638, 1639, 1639, 0, 0, - 1639, 1640, 1640, 0, 0, 0, 1640, 1641, 1641, 0, - 0, 0, 1641, 1642, 1642, 0, 0, 0, 1642, 1643, - 1643, 0, 0, 0, 1643, 1644, 1644, 0, 0, 0, - 1644, 1645, 1645, 0, 0, 0, 1645, 1646, 1646, 0, - 0, 0, 1646, 1647, 1647, 0, 0, 1647, 1648, 1648, - 0, 0, 1648, 1649, 1649, 0, 0, 1649, 1650, 1650, - 0, 0, 1650, 1651, 1651, 0, 0, 1651, 1652, 1652, - - 0, 0, 1652, 1653, 0, 1653, 1653, 0, 0, 1653, - 1654, 1654, 1654, 0, 0, 1654, 1655, 1655, 0, 0, - 0, 1655, 1656, 0, 0, 0, 1656, 1656, 1656, 0, - 1656, 1656, 1656, 1657, 0, 0, 0, 1657, 1657, 1657, - 0, 1657, 1657, 1657, 1658, 1658, 0, 0, 0, 1658, - 1659, 1659, 0, 0, 0, 1659, 1660, 1660, 0, 0, - 0, 1660, 1661, 1661, 0, 0, 0, 1661, 1662, 1662, - 0, 0, 0, 1662, 1663, 1663, 0, 0, 0, 1663, - 1664, 1664, 0, 0, 0, 1664, 1665, 1665, 0, 0, - 1665, 1666, 0, 0, 0, 1666, 1667, 1667, 0, 0, - - 1667, 1668, 0, 0, 0, 1668, 1669, 0, 1669, 1669, + + 0, 0, 1158, 1158, 1158, 1158, 1158, 0, 0, 1166, + 1166, 1166, 1166, 1166, 1166, 1166, 1166, 0, 0, 0, + 0, 1158, 1158, 1158, 1158, 1158, 1158, 1160, 0, 1160, + 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1166, 1167, + 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1168, 1168, 1168, + 1168, 1168, 1168, 1168, 1168, 1170, 1170, 1170, 1170, 1170, + 1170, 1170, 1170, 0, 0, 0, 0, 0, 1167, 1171, + 1171, 1171, 1171, 1171, 1171, 1176, 1168, 1176, 1176, 1176, + 1176, 1176, 1176, 0, 1170, 1172, 1172, 1172, 1172, 1172, + 1172, 1172, 1172, 0, 0, 0, 0, 1174, 1171, 1174, + + 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1175, 0, 1175, + 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1184, 1184, 1184, + 1184, 1184, 1184, 1184, 1184, 1184, 1185, 1185, 1185, 1185, + 1185, 1185, 1185, 1185, 1185, 1186, 1186, 1186, 1186, 1186, + 1186, 1186, 1186, 1186, 1187, 0, 1187, 1187, 1187, 1187, + 1187, 1187, 1187, 1187, 1188, 0, 1188, 1188, 1188, 1188, + 1188, 1188, 1188, 1188, 1189, 0, 1189, 1189, 1189, 1189, + 1189, 1189, 1189, 1189, 1192, 0, 1192, 1192, 1192, 1192, + 1192, 1192, 1192, 1192, 1192, 0, 0, 0, 1192, 1192, + 1192, 1192, 1192, 1193, 1193, 1193, 1193, 1193, 1193, 1193, + + 1193, 1339, 1339, 1339, 1339, 1339, 1339, 1192, 1192, 1192, + 1192, 1192, 1192, 1196, 0, 1196, 1196, 1196, 1196, 1196, + 1196, 1196, 1196, 1203, 0, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1210, 0, 1210, 1210, 1210, 1210, + 1210, 1210, 1210, 1210, 1210, 1217, 0, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1221, 1221, 1221, 1221, + 1221, 1221, 1221, 1221, 1222, 1222, 1222, 1222, 1222, 1222, + 1222, 1222, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 1224, + 1226, 0, 1226, 1226, 1226, 1226, 1226, 1226, 1226, 1226, + 1227, 0, 1227, 1227, 1227, 1227, 1227, 1227, 1227, 1227, + + 1228, 0, 1228, 1228, 1228, 1228, 1228, 1228, 1229, 1229, + 1229, 1229, 1229, 1229, 1229, 1229, 1231, 0, 1231, 1231, + 1231, 1231, 1231, 1231, 1231, 1231, 1232, 0, 1232, 1232, + 1232, 1232, 1232, 1232, 1232, 1232, 1233, 0, 1233, 1233, + 1233, 1233, 1233, 1233, 1235, 1235, 1235, 1235, 1235, 1235, + 1235, 1235, 1239, 0, 1239, 1239, 1239, 1239, 1239, 1239, + 1239, 1239, 1239, 1243, 0, 1243, 1243, 1243, 1243, 1243, + 1243, 1243, 1243, 1243, 0, 0, 0, 1243, 1243, 1243, + 1243, 1243, 1244, 1244, 1244, 1244, 1244, 1244, 1244, 1244, + 1400, 1400, 1400, 1400, 1400, 1400, 1243, 1243, 1243, 1243, + + 1243, 1243, 1246, 0, 1246, 1246, 1246, 1246, 1246, 1246, + 1246, 1246, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, + 1252, 1252, 1252, 1252, 1252, 1252, 1253, 0, 1253, 1253, + 1253, 1253, 1253, 1253, 1253, 1253, 0, 0, 0, 0, + 1270, 1251, 1270, 1270, 1270, 1270, 1270, 1270, 1254, 1252, + 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1254, 1255, 0, + 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1255, 1263, 1263, + 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1264, 1264, 1264, + 1264, 1264, 1264, 1264, 1264, 1264, 1265, 1265, 1265, 1265, + 1265, 1265, 1265, 1266, 1266, 1266, 1266, 1266, 1266, 1266, + + 1266, 1268, 0, 1268, 1268, 1268, 1268, 1268, 1268, 1268, + 1268, 1269, 0, 1269, 1269, 1269, 1269, 1269, 1269, 1269, + 1269, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1277, + 0, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277, + 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1292, 1293, 1293, + 1293, 1293, 1293, 1293, 1293, 1293, 1294, 1294, 1294, 1294, + 1294, 1294, 1294, 1294, 1295, 0, 1295, 1295, 1295, 1295, + 1295, 1295, 1295, 1295, 1296, 0, 1296, 1296, 1296, 1296, + 1296, 1296, 1296, 1296, 1297, 0, 1297, 1297, 1297, 1297, + 1297, 1297, 1297, 1297, 1298, 0, 1298, 1298, 1298, 1298, + + 1298, 1298, 1298, 1298, 1299, 0, 1299, 1299, 1299, 1299, + 1299, 1299, 1299, 1299, 1300, 0, 1300, 1300, 1300, 1300, + 1300, 1300, 1300, 1300, 1308, 0, 1308, 1308, 1308, 1308, + 1308, 1308, 1308, 1308, 1308, 1312, 1312, 1312, 1312, 1312, + 1312, 1312, 1312, 1314, 0, 1314, 1314, 1314, 1314, 1314, + 1314, 1314, 1314, 1315, 0, 1315, 1315, 1315, 1315, 1315, + 1315, 1315, 1315, 1316, 0, 1316, 1316, 1316, 1316, 1316, + 1316, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, 1317, + 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1318, 1319, + 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1320, 0, + + 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1321, 0, + 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1322, 0, + 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1322, 1337, 1337, + 1337, 1337, 1337, 1337, 1337, 1337, 1338, 1338, 1338, 1338, + 1338, 1338, 1338, 1338, 1340, 1340, 1340, 1340, 1340, 1340, + 1340, 1340, 1342, 0, 1342, 1342, 1342, 1342, 1342, 1342, + 1342, 1342, 1343, 0, 1343, 1343, 1343, 1343, 1343, 1343, + 1343, 1343, 1344, 0, 1344, 1344, 1344, 1344, 1344, 1344, + 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1347, 0, + 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1348, 0, + + 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1349, 0, + 1349, 1349, 1349, 1349, 1349, 1349, 1356, 1356, 1356, 1356, + 1356, 1356, 1356, 1356, 1356, 1357, 1357, 1357, 1357, 1357, + 1357, 1357, 1357, 1357, 1358, 1358, 1358, 1358, 1358, 1358, + 1358, 1358, 1358, 1360, 1360, 1360, 1360, 1360, 1360, 1360, + 1360, 1360, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, + 1361, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1363, 1363, + 1363, 1363, 1363, 1363, 1363, 1363, 1365, 0, 1365, 1365, + 1365, 1365, 1365, 1365, 1365, 1365, 1366, 0, 1366, 1366, + 1366, 1366, 1366, 1366, 1366, 1366, 1367, 0, 1367, 1367, + + 1367, 1367, 1367, 1367, 1375, 1375, 1375, 1375, 1375, 1375, + 1375, 1375, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, + 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1378, 0, + 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1379, 0, + 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1380, 0, + 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1385, 1385, + 1385, 1385, 1385, 1385, 1385, 1385, 1385, 1386, 1386, 1386, + 1386, 1386, 1386, 1386, 1386, 1386, 1387, 1387, 1387, 1387, + 1387, 1387, 1387, 1388, 0, 1388, 1388, 1388, 1388, 1388, + 1388, 1388, 1388, 1389, 0, 1389, 1389, 1389, 1389, 1389, + + 1389, 1389, 1389, 1390, 0, 1390, 1390, 1390, 1390, 1390, + 1390, 1390, 1390, 1398, 1398, 1398, 1398, 1398, 1398, 1398, + 1398, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1401, + 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1403, 0, 1403, + 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1404, 0, 1404, + 1404, 1404, 1404, 1404, 1404, 1404, 1404, 1405, 0, 1405, + 1405, 1405, 1405, 1405, 1405, 1408, 1408, 1408, 1408, 1408, + 1408, 1408, 1408, 1410, 0, 1410, 1410, 1410, 1410, 1410, + 1410, 1410, 1410, 1411, 0, 1411, 1411, 1411, 1411, 1411, + 1411, 1411, 1411, 1412, 0, 1412, 1412, 1412, 1412, 1412, + + 1412, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1414, + 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1415, 1415, 1415, + 1415, 1415, 1415, 1415, 1415, 1417, 1417, 1417, 1417, 1417, + 1417, 1417, 1417, 1418, 1418, 1418, 1418, 1418, 1418, 1418, + 1418, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1421, + 1421, 1421, 1421, 1421, 1421, 1421, 1421, 1422, 1422, 1422, + 1422, 1422, 1422, 1422, 1422, 1423, 1423, 1423, 1423, 1423, + 1423, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1426, + 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1427, 1427, 1427, + 1427, 1427, 1427, 1429, 1429, 1429, 1429, 1429, 1429, 1429, + + 1429, 1429, 1429, 1429, 1430, 1430, 1430, 1430, 1430, 1430, + 1430, 1430, 1430, 1430, 1430, 1431, 1431, 1431, 1431, 1431, + 1431, 1431, 1431, 1431, 1431, 1431, 1432, 0, 0, 0, + 1432, 1432, 1432, 0, 1432, 1432, 1432, 1433, 1433, 1433, + 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1434, 0, + 0, 0, 1434, 1434, 1434, 0, 1434, 1434, 1434, 1435, + 0, 0, 0, 1435, 1435, 1435, 0, 1435, 1435, 1435, + 1436, 0, 1436, 0, 1436, 1436, 1436, 0, 1436, 1436, + 1436, 1437, 0, 0, 0, 1437, 1437, 1437, 0, 1437, + 1437, 1437, 1438, 0, 0, 0, 1438, 1438, 1438, 0, + + 1438, 1438, 1438, 1439, 0, 0, 0, 1439, 1439, 1439, + 0, 1439, 1439, 1439, 1440, 0, 1440, 0, 1440, 1440, + 1440, 0, 1440, 1440, 1440, 1441, 0, 1441, 0, 1441, + 1441, 1441, 0, 1441, 1441, 1441, 1442, 0, 1442, 1442, + 1442, 1442, 1442, 0, 0, 1442, 1442, 1443, 1443, 1444, + 0, 1444, 0, 1444, 1444, 1444, 1444, 1444, 1444, 1444, + 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, + 1445, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, + 1446, 1446, 1447, 0, 1447, 0, 1447, 1447, 1447, 0, + 1447, 1447, 1447, 1448, 1448, 0, 0, 1448, 1449, 1449, + + 0, 0, 0, 1449, 1450, 0, 1450, 0, 1450, 1450, + 1450, 0, 1450, 1450, 1450, 1451, 1451, 1451, 1451, 1451, + 1451, 1451, 1451, 1451, 1451, 1451, 1452, 1452, 0, 0, + 1452, 1453, 1453, 1453, 0, 0, 1453, 1454, 1454, 0, + 0, 1454, 1455, 1455, 0, 0, 1455, 1456, 1456, 0, + 0, 1456, 1457, 1457, 1457, 0, 0, 1457, 1458, 1458, + 0, 0, 1458, 1459, 1459, 0, 0, 1459, 1460, 1460, + 1460, 1460, 0, 0, 1460, 1461, 1461, 0, 0, 1461, + 1462, 1462, 0, 0, 1462, 1463, 0, 0, 0, 1463, + 1464, 1464, 1464, 0, 0, 1464, 1465, 1465, 0, 0, + + 1465, 1466, 1466, 0, 0, 1466, 1467, 1467, 1467, 0, + 0, 1467, 1468, 1468, 0, 0, 1468, 1469, 1469, 0, + 0, 1469, 1470, 1470, 0, 0, 1470, 1471, 1471, 1471, + 1471, 0, 0, 1471, 1472, 1472, 0, 0, 1472, 1473, + 1473, 0, 0, 1473, 1474, 1474, 0, 0, 0, 1474, + 1475, 1475, 1475, 1475, 0, 0, 1475, 1476, 1476, 1476, + 1476, 0, 0, 1476, 1477, 1477, 0, 0, 1477, 1478, + 1478, 0, 0, 1478, 1479, 1479, 0, 0, 1479, 1480, + 1480, 1480, 0, 0, 1480, 1481, 1481, 0, 0, 1481, + 1482, 1482, 0, 0, 1482, 1483, 1483, 1483, 0, 0, + + 1483, 1484, 1484, 1484, 0, 0, 1484, 1485, 1485, 1485, + 0, 0, 1485, 1486, 1486, 0, 0, 1486, 1487, 1487, + 0, 0, 1487, 1488, 0, 1488, 1488, 0, 0, 1488, + 1489, 1489, 0, 0, 1489, 1490, 1490, 1490, 1490, 0, + 0, 1490, 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1491, + 1491, 1491, 1491, 1492, 1492, 0, 0, 1492, 1493, 1493, + 0, 0, 1493, 1494, 1494, 0, 0, 0, 1494, 1495, + 1495, 1495, 0, 0, 1495, 1496, 1496, 1496, 1496, 0, + 0, 1496, 1497, 1497, 1497, 1497, 0, 0, 1497, 1498, + 1498, 0, 0, 1498, 1499, 1499, 0, 0, 1499, 1500, + + 1500, 0, 0, 1500, 1501, 0, 1501, 1501, 0, 0, + 1501, 1502, 1502, 1502, 0, 0, 1502, 1503, 1503, 1503, + 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1503, 1504, 0, + 0, 0, 1504, 1504, 1504, 0, 1504, 1504, 1504, 1505, + 0, 0, 0, 1505, 1505, 1505, 0, 1505, 1505, 1505, + 1506, 0, 0, 0, 1506, 1506, 1506, 0, 1506, 1506, + 1506, 1507, 0, 0, 0, 1507, 1507, 1507, 0, 1507, + 1507, 1507, 1508, 1508, 0, 0, 1508, 1509, 1509, 0, + 0, 1509, 1510, 1510, 1510, 0, 0, 1510, 1511, 1511, + 1511, 0, 0, 1511, 1512, 1512, 1512, 0, 0, 1512, + + 1513, 1513, 1513, 0, 0, 1513, 1514, 1514, 0, 0, + 1514, 1515, 1515, 0, 0, 1515, 1516, 0, 0, 0, + 1516, 1517, 0, 1517, 1517, 0, 0, 1517, 1518, 0, + 1518, 1518, 0, 0, 1518, 1519, 1519, 0, 0, 1519, + 1520, 1520, 1520, 1520, 0, 0, 1520, 1521, 1521, 1521, + 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1522, 0, + 0, 0, 1522, 1522, 1522, 0, 1522, 1522, 1522, 1523, + 0, 0, 0, 1523, 1523, 1523, 0, 1523, 1523, 1523, + 1524, 0, 0, 0, 1524, 1524, 1524, 0, 1524, 1524, + 1524, 1525, 0, 0, 0, 1525, 1525, 1525, 0, 1525, + + 1525, 1525, 1526, 1526, 0, 0, 1526, 1527, 1527, 0, + 0, 1527, 1528, 1528, 0, 0, 0, 1528, 1529, 1529, + 1529, 0, 0, 1529, 1530, 1530, 1530, 1530, 0, 0, + 1530, 1531, 1531, 1531, 1531, 0, 0, 1531, 1532, 1532, + 1532, 1532, 0, 0, 1532, 1533, 1533, 0, 0, 1533, + 1534, 1534, 0, 0, 1534, 1535, 1535, 0, 0, 1535, + 1536, 1536, 0, 0, 1536, 1537, 1537, 0, 0, 1537, + 1538, 0, 1538, 1538, 0, 0, 1538, 1539, 1539, 1539, + 0, 0, 1539, 1540, 1540, 1540, 1540, 1540, 1540, 1540, + 1540, 1540, 1540, 1540, 1541, 0, 0, 0, 1541, 1541, + + 1541, 0, 1541, 1541, 1541, 1542, 0, 0, 0, 1542, + 1542, 1542, 0, 1542, 1542, 1542, 1543, 1543, 0, 0, + 1543, 1544, 1544, 1544, 0, 0, 1544, 1545, 1545, 1545, + 0, 0, 1545, 1546, 1546, 1546, 0, 0, 1546, 1547, + 1547, 1547, 0, 0, 1547, 1548, 1548, 1548, 0, 0, + 1548, 1549, 1549, 0, 0, 1549, 1550, 1550, 0, 0, + 1550, 1551, 0, 0, 0, 1551, 1552, 1552, 0, 0, + 1552, 1553, 0, 1553, 1553, 0, 0, 1553, 1554, 0, + 1554, 1554, 0, 0, 1554, 1555, 1555, 0, 0, 1555, + 1556, 1556, 1556, 1556, 0, 0, 1556, 1557, 0, 0, + + 0, 1557, 1557, 1557, 0, 1557, 1557, 1557, 1558, 0, + 0, 0, 1558, 1558, 1558, 0, 1558, 1558, 1558, 1559, + 1559, 0, 0, 1559, 1560, 1560, 0, 0, 0, 1560, + 1561, 1561, 1561, 0, 0, 1561, 1562, 0, 0, 0, + 1562, 1563, 1563, 1563, 1563, 0, 0, 1563, 1564, 0, + 0, 0, 1564, 1565, 1565, 1565, 1565, 0, 0, 1565, + 1566, 0, 0, 0, 1566, 1567, 1567, 1567, 1567, 0, + 0, 1567, 1568, 0, 0, 0, 1568, 1569, 1569, 1569, + 1569, 0, 0, 1569, 1570, 0, 0, 0, 1570, 1571, + 1571, 0, 0, 1571, 1572, 1572, 0, 0, 1572, 1573, + + 1573, 0, 0, 1573, 1574, 1574, 0, 0, 1574, 1575, + 1575, 0, 0, 1575, 1576, 1576, 0, 0, 1576, 1577, + 0, 1577, 1577, 0, 0, 1577, 1578, 1578, 1578, 0, + 0, 1578, 1579, 0, 0, 0, 1579, 1579, 1579, 0, + 1579, 1579, 1579, 1580, 0, 0, 0, 1580, 1580, 1580, + 0, 1580, 1580, 1580, 1581, 0, 1581, 1581, 0, 0, + 1581, 1582, 1582, 0, 0, 1582, 1583, 1583, 0, 0, + 0, 1583, 1584, 1584, 1584, 0, 0, 1584, 1585, 1585, + 0, 0, 0, 1585, 1586, 1586, 1586, 0, 0, 1586, + 1587, 1587, 0, 0, 0, 1587, 1588, 1588, 1588, 0, + + 0, 1588, 1589, 1589, 0, 0, 0, 1589, 1590, 1590, + 1590, 0, 0, 1590, 1591, 1591, 0, 0, 0, 1591, + 1592, 1592, 1592, 0, 0, 1592, 1593, 1593, 0, 0, + 0, 1593, 1594, 1594, 0, 0, 1594, 1595, 1595, 0, + 0, 1595, 1596, 0, 0, 0, 1596, 1597, 1597, 0, + 0, 1597, 1598, 0, 1598, 1598, 0, 0, 1598, 1599, + 0, 1599, 1599, 0, 0, 1599, 1600, 0, 1600, 1600, + 0, 0, 1600, 1601, 1601, 0, 0, 1601, 1602, 1602, + 1602, 1602, 0, 0, 1602, 1603, 0, 0, 0, 1603, + 1604, 0, 0, 0, 1604, 1604, 1604, 0, 1604, 1604, + + 1604, 1605, 0, 0, 0, 1605, 1605, 1605, 0, 1605, + 1605, 1605, 1606, 1606, 0, 0, 1606, 1607, 1607, 0, + 0, 0, 1607, 1608, 1608, 0, 0, 0, 1608, 1609, + 1609, 0, 0, 0, 1609, 1610, 1610, 0, 0, 0, + 1610, 1611, 1611, 0, 0, 0, 1611, 1612, 1612, 0, + 0, 0, 1612, 1613, 1613, 0, 0, 0, 1613, 1614, + 1614, 0, 0, 1614, 1615, 1615, 0, 0, 1615, 1616, + 1616, 0, 0, 1616, 1617, 1617, 0, 0, 1617, 1618, + 1618, 0, 0, 1618, 1619, 1619, 0, 0, 1619, 1620, + 0, 1620, 1620, 0, 0, 1620, 1621, 1621, 1621, 0, + + 0, 1621, 1622, 1622, 0, 0, 0, 1622, 1623, 0, + 0, 0, 1623, 1623, 1623, 0, 1623, 1623, 1623, 1624, + 0, 0, 0, 1624, 1624, 1624, 0, 1624, 1624, 1624, + 1625, 1625, 0, 0, 0, 1625, 1626, 1626, 0, 0, + 0, 1626, 1627, 1627, 0, 0, 0, 1627, 1628, 1628, + 0, 0, 0, 1628, 1629, 1629, 0, 0, 0, 1629, + 1630, 1630, 0, 0, 0, 1630, 1631, 1631, 0, 0, + 0, 1631, 1632, 1632, 0, 0, 1632, 1633, 0, 0, + 0, 1633, 1634, 1634, 0, 0, 1634, 1635, 0, 0, + 0, 1635, 1636, 0, 1636, 1636, 0, 0, 1636, 1637, + + 0, 0, 0, 1637, 1638, 0, 1638, 1638, 0, 0, + 1638, 1639, 0, 0, 0, 1639, 1640, 0, 1640, 1640, + 0, 0, 1640, 1641, 0, 0, 0, 1641, 1642, 0, + 1642, 1642, 0, 0, 1642, 1643, 0, 0, 0, 1643, + 1644, 1644, 0, 0, 1644, 1645, 1645, 0, 0, 0, + 1645, 1646, 0, 0, 0, 1646, 1646, 1646, 0, 1646, + 1646, 1646, 1647, 1647, 0, 0, 0, 1647, 1648, 0, + 1648, 1648, 0, 0, 1648, 1649, 1649, 0, 0, 1649, + 1650, 0, 0, 0, 1650, 1651, 1651, 0, 0, 1651, + 1652, 0, 0, 0, 1652, 1653, 1653, 0, 0, 1653, + + 1654, 0, 0, 0, 1654, 1655, 1655, 0, 0, 1655, + 1656, 0, 0, 0, 1656, 1657, 1657, 0, 0, 1657, + 1658, 0, 0, 0, 1658, 1659, 1659, 0, 0, 1659, + 1660, 0, 0, 0, 1660, 1661, 0, 1661, 1661, 0, + 0, 1661, 1662, 0, 0, 0, 1662, 1663, 1663, 0, + 0, 0, 1663, 1664, 1664, 0, 0, 1664, 1665, 0, + 0, 0, 1665, 1666, 0, 0, 0, 1666, 1667, 0, + 0, 0, 1667, 1668, 0, 0, 0, 1668, 1669, 0, 0, 0, 1669, 1670, 0, 0, 0, 1670, 1671, 0, - 1671, 1671, 0, 0, 1671, 1672, 0, 0, 0, 1672, - 1673, 0, 1673, 1673, 0, 0, 1673, 1674, 0, 0, - 0, 1674, 1675, 0, 1675, 1675, 0, 0, 1675, 1676, - 0, 0, 0, 1676, 1677, 1677, 0, 0, 1677, 1678, - 1678, 0, 0, 0, 1678, 1679, 0, 0, 0, 1679, - 1679, 1679, 0, 1679, 1679, 1679, 1680, 1680, 0, 0, - 0, 1680, 1681, 0, 1681, 1681, 0, 0, 1681, 1682, - 1682, 0, 0, 1682, 1683, 0, 0, 0, 1683, 1684, - - 1684, 0, 0, 1684, 1685, 0, 0, 0, 1685, 1686, - 1686, 0, 0, 1686, 1687, 0, 0, 0, 1687, 1688, - 1688, 0, 0, 1688, 1689, 0, 0, 0, 1689, 1690, - 1690, 0, 0, 1690, 1691, 0, 0, 0, 1691, 1692, - 1692, 0, 0, 1692, 1693, 0, 0, 0, 1693, 1694, - 0, 1694, 1694, 0, 0, 1694, 1695, 0, 0, 0, - 1695, 1696, 1696, 0, 0, 0, 1696, 1697, 1697, 0, - 0, 1697, 1698, 0, 0, 0, 1698, 1699, 0, 0, - 0, 1699, 1700, 0, 0, 0, 1700, 1701, 0, 0, - 0, 1701, 1702, 0, 0, 0, 1702, 1703, 0, 0, - - 0, 1703, 1704, 0, 0, 0, 1704, 1705, 1705, 0, - 0, 1705, 1706, 0, 0, 0, 1706, 1707, 0, 0, - 0, 1707, 1708, 0, 0, 0, 1708, 1709, 0, 0, - 0, 1709, 1710, 0, 0, 0, 1710, 1711, 0, 0, - 0, 1711, 1712, 0, 0, 0, 1712, 1713, 0, 0, - 0, 1713, 1714, 0, 0, 0, 1714, 1715, 0, 0, - 0, 1715, 1716, 0, 0, 0, 1716, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, 1460, - 1460, 1460 + 0, 0, 1671, 1672, 1672, 0, 0, 1672, 1673, 0, + + 0, 0, 1673, 1674, 0, 0, 0, 1674, 1675, 0, + 0, 0, 1675, 1676, 0, 0, 0, 1676, 1677, 0, + 0, 0, 1677, 1678, 0, 0, 0, 1678, 1679, 0, + 0, 0, 1679, 1680, 0, 0, 0, 1680, 1681, 0, + 0, 0, 1681, 1682, 0, 0, 0, 1682, 1683, 0, + 0, 0, 1683, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + + 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, + 1428, 1428, 1428, 1428, 1428, 1428 } ; static yy_state_type yy_last_accepting_state; @@ -3296,7 +3259,7 @@ extern void yyerror __P((const char *)); #define INDEFS 5 -#line 3300 "lex.yy.c" +#line 3263 "lex.yy.c" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -3452,7 +3415,7 @@ YY_DECL #line 108 "toke.l" -#line 3456 "lex.yy.c" +#line 3419 "lex.yy.c" if ( yy_init ) { @@ -3504,13 +3467,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1461 ) + if ( yy_current_state >= 1429 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 10368 ); + while ( yy_base[yy_current_state] != 10254 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -3782,22 +3745,6 @@ YY_RULE_SETUP case 22: YY_RULE_SETUP #line 289 "toke.l" -{ - LEXTRACE("NOMONITOR "); - return(NOMONITOR); - } - YY_BREAK -case 23: -YY_RULE_SETUP -#line 294 "toke.l" -{ - LEXTRACE("MONITOR "); - return(MONITOR); - } - YY_BREAK -case 24: -YY_RULE_SETUP -#line 299 "toke.l" { /* netgroup */ if (!fill(yytext, yyleng)) @@ -3806,9 +3753,9 @@ YY_RULE_SETUP return(NETGROUP); } YY_BREAK -case 25: +case 23: YY_RULE_SETUP -#line 307 "toke.l" +#line 297 "toke.l" { /* UN*X group */ if (!fill(yytext, yyleng)) @@ -3817,9 +3764,9 @@ YY_RULE_SETUP return(USERGROUP); } YY_BREAK -case 26: +case 24: YY_RULE_SETUP -#line 315 "toke.l" +#line 305 "toke.l" { if (!fill(yytext, yyleng)) yyterminate(); @@ -3827,9 +3774,9 @@ YY_RULE_SETUP return(NTWKADDR); } YY_BREAK -case 27: +case 25: YY_RULE_SETUP -#line 322 "toke.l" +#line 312 "toke.l" { if (!fill(yytext, yyleng)) yyterminate(); @@ -3837,9 +3784,9 @@ YY_RULE_SETUP return(NTWKADDR); } YY_BREAK -case 28: +case 26: YY_RULE_SETUP -#line 329 "toke.l" +#line 319 "toke.l" { if (!fill(yytext, yyleng)) yyterminate(); @@ -3847,9 +3794,9 @@ YY_RULE_SETUP return(NTWKADDR); } YY_BREAK -case 29: +case 27: YY_RULE_SETUP -#line 336 "toke.l" +#line 326 "toke.l" { if (!fill(yytext, yyleng)) yyterminate(); @@ -3857,18 +3804,18 @@ YY_RULE_SETUP return(NTWKADDR); } YY_BREAK -case 30: +case 28: YY_RULE_SETUP -#line 343 "toke.l" +#line 333 "toke.l" { BEGIN GOTRUNAS; LEXTRACE("RUNAS "); return (RUNAS); } YY_BREAK -case 31: +case 29: YY_RULE_SETUP -#line 349 "toke.l" +#line 339 "toke.l" { if (strcmp(yytext, "ALL") == 0) { LEXTRACE("ALL "); @@ -3881,9 +3828,9 @@ YY_RULE_SETUP } } YY_BREAK -case 32: +case 30: YY_RULE_SETUP -#line 361 "toke.l" +#line 351 "toke.l" { /* username/uid that user can run command as */ if (!fill(yytext, yyleng)) @@ -3892,16 +3839,16 @@ YY_RULE_SETUP return(WORD); } YY_BREAK -case 33: +case 31: YY_RULE_SETUP -#line 369 "toke.l" +#line 359 "toke.l" { BEGIN INITIAL; } YY_BREAK -case 34: +case 32: YY_RULE_SETUP -#line 373 "toke.l" +#line 363 "toke.l" { /* no command args allowed for Defaults!/path */ if (!fill_cmnd(yytext, yyleng)) @@ -3910,9 +3857,9 @@ YY_RULE_SETUP return(COMMAND); } YY_BREAK -case 35: +case 33: YY_RULE_SETUP -#line 381 "toke.l" +#line 371 "toke.l" { BEGIN GOTCMND; LEXTRACE("COMMAND "); @@ -3920,9 +3867,9 @@ YY_RULE_SETUP yyterminate(); } /* sudo -e */ YY_BREAK -case 36: +case 34: YY_RULE_SETUP -#line 388 "toke.l" +#line 378 "toke.l" { /* directories can't have args... */ if (yytext[yyleng - 1] == '/') { @@ -3938,9 +3885,9 @@ YY_RULE_SETUP } } /* a pathname */ YY_BREAK -case 37: +case 35: YY_RULE_SETUP -#line 403 "toke.l" +#line 393 "toke.l" { /* a word */ if (!fill(yytext, yyleng)) @@ -3949,41 +3896,41 @@ YY_RULE_SETUP return(WORD); } YY_BREAK -case 38: +case 36: YY_RULE_SETUP -#line 411 "toke.l" +#line 401 "toke.l" { LEXTRACE(", "); return(','); } /* return ',' */ YY_BREAK -case 39: +case 37: YY_RULE_SETUP -#line 416 "toke.l" +#line 406 "toke.l" { LEXTRACE("= "); return('='); } /* return '=' */ YY_BREAK -case 40: +case 38: YY_RULE_SETUP -#line 421 "toke.l" +#line 411 "toke.l" { LEXTRACE(": "); return(':'); } /* return ':' */ YY_BREAK -case 41: +case 39: YY_RULE_SETUP -#line 426 "toke.l" +#line 416 "toke.l" { if (yyleng % 2 == 1) return('!'); /* return '!' */ } YY_BREAK -case 42: +case 40: YY_RULE_SETUP -#line 431 "toke.l" +#line 421 "toke.l" { BEGIN INITIAL; ++sudolineno; @@ -3991,25 +3938,25 @@ YY_RULE_SETUP return(COMMENT); } /* return newline */ YY_BREAK -case 43: +case 41: YY_RULE_SETUP -#line 438 "toke.l" +#line 428 "toke.l" { /* throw away space/tabs */ sawspace = TRUE; /* but remember for fill_args */ } YY_BREAK -case 44: +case 42: YY_RULE_SETUP -#line 442 "toke.l" +#line 432 "toke.l" { sawspace = TRUE; /* remember for fill_args */ ++sudolineno; LEXTRACE("\n\t"); } /* throw away EOL after \ */ YY_BREAK -case 45: +case 43: YY_RULE_SETUP -#line 448 "toke.l" +#line 438 "toke.l" { BEGIN INITIAL; ++sudolineno; @@ -4017,9 +3964,9 @@ YY_RULE_SETUP return(COMMENT); } /* return comments */ YY_BREAK -case 46: +case 44: YY_RULE_SETUP -#line 455 "toke.l" +#line 445 "toke.l" { LEXTRACE("ERROR "); return(ERROR); @@ -4031,7 +3978,7 @@ case YY_STATE_EOF(GOTDEFS): case YY_STATE_EOF(GOTCMND): case YY_STATE_EOF(STARTDEFS): case YY_STATE_EOF(INDEFS): -#line 460 "toke.l" +#line 450 "toke.l" { if (YY_START != INITIAL) { BEGIN INITIAL; @@ -4042,12 +3989,12 @@ case YY_STATE_EOF(INDEFS): yyterminate(); } YY_BREAK -case 47: +case 45: YY_RULE_SETUP -#line 470 "toke.l" +#line 460 "toke.l" ECHO; YY_BREAK -#line 4051 "lex.yy.c" +#line 3998 "lex.yy.c" case YY_END_OF_BUFFER: { @@ -4338,7 +4285,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1461 ) + if ( yy_current_state >= 1429 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -4373,11 +4320,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1461 ) + if ( yy_current_state >= 1429 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 1460); + yy_is_jam = (yy_current_state == 1428); return yy_is_jam ? 0 : yy_current_state; } @@ -4936,7 +4883,7 @@ int main() return 0; } #endif -#line 470 "toke.l" +#line 460 "toke.l" static int fill(s, len) diff --git a/toke.l b/toke.l index 48de6bb53..09635dc4e 100644 --- a/toke.l +++ b/toke.l @@ -286,16 +286,6 @@ NOSETENV[[:blank:]]*: { return(NOSETENV); } -NOMONITOR[[:blank:]]*: { - LEXTRACE("NOMONITOR "); - return(NOMONITOR); - } - -MONITOR[[:blank:]]*: { - LEXTRACE("MONITOR "); - return(MONITOR); - } - \+{WORD} { /* netgroup */ if (!fill(yytext, yyleng)) -- 2.50.1