deleting zotnet/ dir -- parts moved to sbr/
[mmh] / zotnet / tws / dtimep.c-lexed
diff --git a/zotnet/tws/dtimep.c-lexed b/zotnet/tws/dtimep.c-lexed
deleted file mode 100644 (file)
index 9ad02fa..0000000
+++ /dev/null
@@ -1,1682 +0,0 @@
-#include <stdio.h>
-static int start_cond = 0;
-#define BEGIN start_cond =
-struct yysvf { 
-       struct yywork *yystoff;
-       struct yysvf *yyother;
-       int *yystops;};
-# define Z 2
-#include <h/nmh.h>
-#include <tws.h>
-#if !defined(HAVE_TM_GMTOFF) && !defined(HAVE_TZSET)
-# include <sys/timeb.h>
-#endif
-
-#if !defined(HAVE_TM_GMTOFF) && defined(HAVE_TZSET)
-extern int  daylight;
-extern long timezone;
-extern char *tzname[];
-#endif
-
-
-# line 49 "./dtimep.lex"
-/*
- * Patchable flag that says how to interpret NN/NN/NN dates. When
- * true, we do it European style: DD/MM/YY. When false, we do it
- * American style: MM/DD/YY.  Of course, these are all non-RFC822
- * compliant.
- */
-int europeandate = 0;
-
-
-# line 57 "./dtimep.lex"
-/*
- * Table to convert month names to numeric month.  We use the
- * fact that the low order 5 bits of the sum of the 2nd & 3rd
- * characters of the name is a hash with no collisions for the 12
- * valid month names.  (The mask to 5 bits maps any combination of
- * upper and lower case into the same hash value).
- */
-static int month_map[] = {
-       0,
-       6,      /* 1 - Jul */
-       3,      /* 2 - Apr */
-       5,      /* 3 - Jun */
-       0,
-       10,     /* 5 - Nov */
-       0,
-       1,      /* 7 - Feb */
-       11,     /* 8 - Dec */
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,
-       0,      /*15 - Jan */
-       0,
-       0,
-       0,
-       2,      /*19 - Mar */
-       0,
-       8,      /*21 - Sep */
-       0,
-       9,      /*23 - Oct */
-       0,
-       0,
-       4,      /*26 - May */
-       0,
-       7       /*28 - Aug */
-};
-
-# line 95 "./dtimep.lex"
-/*
- * Same trick for day-of-week using the hash function
- *  (c1 & 7) + (c2 & 4)
- */
-static int day_map[] = {
-       0,
-       0,
-       0,
-       6,      /* 3 - Sat */
-       4,      /* 4 - Thu */
-       0,
-       5,      /* 6 - Fri */
-       0,      /* 7 - Sun */
-       2,      /* 8 - Tue */
-       1       /* 9 - Mon */,
-       0,
-       3       /*11 - Wed */
-};
-#define SETDAY { tw.tw_wday= day_map[(cp[0] & 7) + (cp[1] & 4)];\
-               tw.tw_flags &= ~TW_SDAY; tw.tw_flags |= TW_SEXP;\
-               cp += 2; }
-#define SETMONTH { tw.tw_mon = month_map[(cp[0] + cp[1]) & 0x1f]; gotdate++;\
-                cp += 2;\
-                SKIPD;}
-#define        CVT1OR2 (i=(*cp++ - '0'), isdigit(*cp)? i*10 + (*cp++ - '0') : i)
-#define        CVT2      ((cp[0] - '0')*10 + (cp[1] - '0'))
-#define        CVT4    ((((cp[0] - '0')*10 + (cp[1] - '0'))*10 + \
-                                     (cp[2] - '0'))*10 + (cp[3] - '0'))
-#define SKIPD  { while ( !isdigit(*cp++) ) ;  --cp; }
-#define EXPZONE        { tw.tw_flags &= ~TW_SZONE; tw.tw_flags |= TW_SZEXP; }
-#define ZONE(x)        { tw.tw_zone=(x); EXPZONE; }
-#define ZONED(x) { ZONE(x); tw.tw_flags |= TW_DST; }
-#define        LC(c)   (isupper (c) ? tolower (c) : (c))
-
-#ifdef DSTXXX
-# ifdef TIME_WITH_SYS_TIME
-#  include <sys/time.h>
-#  include <time.h>
-# else
-#  ifdef HAVE_SYS_TIME_H
-#   include <sys/time.h>
-#  else
-#   include <time.h>
-#  endif
-# endif
-
-static void
-zonehack (struct tws *tw)
-{
-    register struct tm *tm;
-
-    if (dmktime (tw) == (time_t) -1)
-       return;
-
-    tm = localtime (&tw->tw_clock);
-    if (tm->tm_isdst) {
-       tw->tw_flags |= TW_DST;
-       tw->tw_zone -= 60;
-    }
-}
-#endif /* DSTXXX */
-struct tws *
-dparsetime (char *str)
-{
-       register int i;
-       static struct tws tw;
-       register char *cp;
-       register int gotdate = 0;
-       time_t tclock;
-
-#ifdef HAVE_TM_GMTOFF
-       struct tm *tm;
-       time_t clock;
-#else
-# ifndef HAVE_TZSET
-       struct timeb tb;
-# endif /* not HAVE_TZSET */
-#endif /* HAVE_TM_GMTOFF */
-
-       start_cond = 0;
-
-       /* Zero out the struct. */
-       memset( (char *) &tw, 0, sizeof(tw));
-
-       /* Set default time zone. */
-#ifdef HAVE_TM_GMTOFF
-       time (&clock);
-       tm = localtime(&clock);
-       tw.tw_zone = tm->tm_gmtoff / 60;
-       if (tm->tm_isdst)                       /* if DST is in effect */
-               tw.tw_zone -= 60;               /* reset to normal offset */
-#else
-# ifdef HAVE_TZSET
-       tzset();
-       tw.tw_zone = -(timezone / 60);
-# else
-       ftime(&tb);
-       tw.tw_zone = -tb.timezone;
-# endif /* HAVE_TZSET */
-#endif /* HAVE_TM_GMTOFF */
-
-       while (isspace(*str))
-               str++;
-       while (1)
-               switch (cp = str, *cp ? lex_string( &str, start_cond) : 0) {
-
-               case -1:
-                       if (!gotdate || tw.tw_year == 0)
-                               return (struct tws *)0;
-                       /* fall through */
-               case 0:
-                       if (tw.tw_year == 0) {
-                               /* Set default year. */
-                               time (&tclock);
-                               tw.tw_year = localtime(&tclock)->tm_year + 1900;
-                       } else if (tw.tw_year < 100) {
-                               /* assume no 2-digit years > 1999 */
-                               tw.tw_year += 1900;
-                       }
-                       return &tw;
-
-#ifdef __cplusplus
-/* to avoid CC and lint complaining yyfussy not being used ...*/
-static int __lex_hack = 0;
-if (__lex_hack) goto yyfussy;
-#endif
-case 1:
-
-# line 219 "./dtimep.lex"
-                       SETDAY;
-break;
-case 2:
-
-# line 220 "./dtimep.lex"
-               {
-                                       cp++;
-                                       SETDAY;
-                                       }
-break;
-case 3:
-
-# line 224 "./dtimep.lex"
-{
-                                       if (europeandate) {
-                                               /* European: DD/MM/YY */
-                                               tw.tw_mday = CVT1OR2;
-                                               cp++;
-                                               tw.tw_mon  = CVT1OR2 - 1;
-                                       } else {
-                                               /* American: MM/DD/YY */
-                                               tw.tw_mon  = CVT1OR2 - 1;
-                                               cp++;
-                                               tw.tw_mday = CVT1OR2;
-                                       }
-                                       cp++;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i;
-                                       gotdate++;      /* XXX */
-                                       }
-break;
-case 4:
-
-# line 242 "./dtimep.lex"
-               {
-                                       if (europeandate) {
-                                               tw.tw_mday = CVT1OR2; cp++;
-                                               tw.tw_mon  = CVT1OR2 - 1;
-                                       } else {
-                                               tw.tw_mon = CVT1OR2 - 1; cp++;
-                                               tw.tw_mday  = CVT1OR2;
-                                       }
-                                       gotdate++;
-                                       }
-break;
-case 5:
-
-# line 252 "./dtimep.lex"
-{
-                                       tw.tw_mday = CVT1OR2;
-                                       while ( !isalpha(*cp++) )
-                                               ;
-                                       SETMONTH;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i;
-#ifdef FIX_NON_Y2K_COMPLIANT_MUA_DATES
-                                       /* handle broken mua's that don't add
-                                          1900, or just use the last two
-                                          digits.  Assume no email before
-                                          1972. */
-                                       if (tw.tw_year < 72)
-                                               tw.tw_year += 100;
-                                       if (tw.tw_year < 1900)
-                                               tw.tw_year += 1900;
-#endif /* FIX_NON_Y2K_COMPLIANT_MUA_DATES */
-                                       }
-break;
-case 6:
-
-# line 271 "./dtimep.lex"
-              {
-                                        tw.tw_mday = CVT1OR2;
-                                        while ( ! isalpha( *cp++ ) )
-                                                ;
-                                        SETMONTH;
-                                        }
-break;
-case 7:
-
-# line 277 "./dtimep.lex"
-{
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT1OR2;
-                                       SKIPD;
-                                       for (i = 0; isdigit(*cp); )
-                                               i = i*10 + (*cp++ - '0');
-                                       tw.tw_year = i;
-                                       }
-break;
-case 8:
-
-# line 286 "./dtimep.lex"
-               {
-                                       cp++;
-                                       SETMONTH;
-                                       tw.tw_mday = CVT1OR2;
-                                       }
-break;
-case 9:
-
-# line 292 "./dtimep.lex"
-       {       /* hack: ctime w/o TZ */
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       SKIPD;
-                                       tw.tw_year = CVT4; cp+=4;
-                                       }
-break;
-case 10:
-
-# line 299 "./dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 11:
-
-# line 305 "./dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       tw.tw_min = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 12:
-
-# line 310 "./dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour == 12)
-                                               tw.tw_hour = 0;
-                                       tw.tw_min  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 13:
-
-# line 317 "./dtimep.lex"
-               {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour == 12)
-                                               tw.tw_hour = 0;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 14:
-
-# line 325 "./dtimep.lex"
-                       {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour != 12)
-                                               tw.tw_hour += 12;
-                                       tw.tw_min  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 15:
-
-# line 332 "./dtimep.lex"
-               {
-                                       tw.tw_hour = CVT1OR2; cp++;
-                                       if (tw.tw_hour != 12)
-                                               tw.tw_hour += 12;
-                                       tw.tw_min  = CVT1OR2; cp++;
-                                       tw.tw_sec  = CVT1OR2;
-                                       BEGIN Z;
-                                       }
-break;
-case 16:
-
-# line 340 "./dtimep.lex"
-               {
-                                       tw.tw_hour = CVT2; cp+=2;
-                                       tw.tw_min  = CVT2; cp+=2;
-                                       tw.tw_sec  = CVT2; cp+=2;
-                                       BEGIN Z;
-                                       }
-break;
-case 17:
-
-# line 346 "./dtimep.lex"
-                       {
-                                       /*
-                                        * Luckly, 4 digit times in the range
-                                        * 1960-1999 aren't legal as hour
-                                        * and minutes.
-                                        */
-                                       tw.tw_year = CVT4; cp+=4;
-                                       }
-break;
-case 18:
-
-# line 354 "./dtimep.lex"
-               {
-                                       if (tw.tw_hour || tw.tw_min 
-                                                           || tw.tw_sec) {
-                                           tw.tw_year = CVT4; cp+=4;
-                                           tw.tw_zone = 0;
-                                       } else {
-                                           tw.tw_hour = CVT2; cp+=2;
-                                           tw.tw_min  = CVT2; cp+=2;
-                                           BEGIN Z;
-                                       }
-                                       }
-break;
-case 19:
-
-# line 365 "./dtimep.lex"
-                       ZONE(0 * 60);
-break;
-case 20:
-
-# line 366 "./dtimep.lex"
-                       ZONE(0 * 60);
-break;
-case 21:
-
-# line 367 "./dtimep.lex"
-                       ZONE(2 * 60);
-break;
-case 22:
-
-# line 368 "./dtimep.lex"
-                       ZONED(2 * 60);
-break;
-case 23:
-
-# line 369 "./dtimep.lex"
-                       ZONE(-5 * 60);
-break;
-case 24:
-
-# line 370 "./dtimep.lex"
-                       ZONED(-5 * 60);
-break;
-case 25:
-
-# line 371 "./dtimep.lex"
-                       ZONE(-6 * 60);
-break;
-case 26:
-
-# line 372 "./dtimep.lex"
-                       ZONED(-6 * 60);
-break;
-case 27:
-
-# line 373 "./dtimep.lex"
-                       ZONE(-7 * 60);
-break;
-case 28:
-
-# line 374 "./dtimep.lex"
-                       ZONED(-7 * 60);
-break;
-case 29:
-
-# line 375 "./dtimep.lex"
-                       ZONE(-8 * 60);
-break;
-case 30:
-
-# line 376 "./dtimep.lex"
-                       ZONED(-8 * 60);
-break;
-case 31:
-
-# line 377 "./dtimep.lex"
-                       ZONE(-(3 * 60 + 30));
-break;
-case 32:
-
-# line 378 "./dtimep.lex"
-                       ZONE(-4 * 60);
-break;
-case 33:
-
-# line 379 "./dtimep.lex"
-                       ZONED(-4 * 60);
-break;
-case 34:
-
-# line 380 "./dtimep.lex"
-                       ZONE(-9 * 60);
-break;
-case 35:
-
-# line 381 "./dtimep.lex"
-                       ZONED(-9 * 60);
-break;
-case 36:
-
-# line 382 "./dtimep.lex"
-                       ZONE(-10 * 60);
-break;
-case 37:
-
-# line 383 "./dtimep.lex"
-                       ZONED(-10 * 60);
-break;
-case 38:
-
-# line 384 "./dtimep.lex"
-                       ZONED(-1 * 60);
-break;
-case 39:
-
-# line 385 "./dtimep.lex"
-                       {
-                                       tw.tw_zone = 60 * (('a'-1) - LC(*cp));
-                                       EXPZONE; 
-                                       }
-break;
-case 40:
-
-# line 389 "./dtimep.lex"
-                       {
-                                       tw.tw_zone = 60 * ('a' - LC(*cp));
-                                       EXPZONE; 
-                                       }
-break;
-case 41:
-
-# line 393 "./dtimep.lex"
-                       {
-                                       tw.tw_zone = 60 * (LC(*cp) - 'm');
-                                       EXPZONE; 
-                                       }
-break;
-case 42:
-
-# line 397 "./dtimep.lex"
-               {
-                                       cp++;
-                                       tw.tw_zone = ((cp[0] * 10 + cp[1])
-                                                    -('0' * 10   + '0'))*60
-                                                   +((cp[2] * 10 + cp[3])
-                                                    -('0' * 10   + '0'));
-                                       EXPZONE;
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif /* DSTXXX */
-                                       cp += 4;
-                                       }
-break;
-case 43:
-
-# line 409 "./dtimep.lex"
-               {
-                                       cp++;
-                                       tw.tw_zone = (('0' * 10   + '0')
-                                                    -(cp[0] * 10 + cp[1]))*60
-                                                   +(('0' * 10   + '0')
-                                                    -(cp[2] * 10 + cp[3]));
-                                       EXPZONE;
-#ifdef DSTXXX
-                                       zonehack (&tw);
-#endif /* DSTXXX */
-                                       cp += 4;
-                                       }
-break;
-case 44:
-
-# line 421 "./dtimep.lex"
-               {
-                                       SKIPD;
-                                       tw.tw_year = CVT4; cp+=4;
-                                       }
-break;
-case 45:
-
-# line 425 "./dtimep.lex"
-case 46:
-
-# line 426 "./dtimep.lex"
-;
-break;
-       default: return(0);
-} }
-/* end of yylex */
-int yyvstop[] = {
-0,
-
-46,
-0, 
-
-45,
-0, 
-
-46,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-39,
-0, 
-
-40,
-0, 
-
-40,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-41,
-0, 
-
-19,
-0, 
-
-4,
-0, 
-
-4,
-0, 
-
-11,
-0, 
-
-1,
-0, 
-
-1,
-0, 
-
-1,
-0, 
-
-1,
-0, 
-
-1,
-0, 
-
-1,
-0, 
-
-1,
-0, 
-
-33,
-0, 
-
-32,
-0, 
-
-38,
-0, 
-
-26,
-0, 
-
-25,
-0, 
-
-24,
-0, 
-
-23,
-0, 
-
-20,
-0, 
-
-37,
-0, 
-
-36,
-0, 
-
-22,
-0, 
-
-21,
-0, 
-
-28,
-0, 
-
-27,
-0, 
-
-31,
-0, 
-
-30,
-0, 
-
-29,
-0, 
-
-35,
-0, 
-
-34,
-0, 
-
-4,
-0, 
-
-4,
-0, 
-
-4,
-0, 
-
-18,
-0, 
-
-11,
-0, 
-
-11,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-6,
-0, 
-
-17,
-18,
-0, 
-
-1,
-0, 
-
-2,
-0, 
-
-18,
-0, 
-
-10,
-0, 
-
-12,
-0, 
-
-14,
-0, 
-
-6,
-0, 
-
-17,
-18,
-0, 
-
-8,
-0, 
-
-44,
-0, 
-
-42,
-0, 
-
-43,
-0, 
-
-2,
-0, 
-
-3,
-0, 
-
-16,
-0, 
-
-10,
-0, 
-
-10,
-0, 
-
-5,
-0, 
-
-8,
-0, 
-
-8,
-0, 
-
-1,
-0, 
-
-3,
-0, 
-
-3,
-0, 
-
-13,
-0, 
-
-15,
-0, 
-
-6,
-0, 
-
-5,
-0, 
-
-5,
-0, 
-
-5,
-0, 
-
-5,
-0, 
-
-7,
-0, 
-
-9,
-0, 
-
-7,
-0, 
-
-7,
-0, 
-0};
-# define YYTYPE int
-struct yywork { YYTYPE verify, advance; } yycrank[] = {
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    1,5,    1,6,    
-5,5,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   1,5,    0,0,    5,5,    
-3,21,  3,6,    0,0,    0,0,    
-0,0,   1,7,    0,0,    0,0,    
-0,0,   0,0,    0,0,    0,0,    
-0,0,   1,8,    1,9,    1,8,    
-1,10,  1,10,   1,10,   1,10,   
-1,10,  1,10,   1,10,   3,21,   
-9,63,  22,83,  22,83,  0,0,    
-0,0,   0,0,    0,0,    3,7,    
-0,0,   0,0,    3,22,   0,0,    
-3,23,  0,0,    0,0,    3,8,    
-3,9,   3,8,    3,10,   3,10,   
-3,10,  3,10,   3,10,   3,10,   
-3,10,  10,64,  10,64,  10,64,  
-10,64, 10,64,  10,64,  10,64,  
-10,64, 10,64,  10,64,  0,0,    
-0,0,   0,0,    1,11,   15,72,  
-59,143,        1,12,   14,70,  1,13,   
-12,67, 13,68,  17,75,  1,14,   
-19,79, 20,81,  1,15,   1,16,   
-1,17,  15,73,  11,65,  16,74,  
-1,18,  1,19,   13,69,  11,66,  
-1,20,  19,80,  14,71,  25,99,  
-3,24,  3,25,   3,26,   3,27,   
-3,28,  3,29,   3,30,   3,31,   
-3,32,  3,33,   3,34,   3,34,   
-3,35,  3,36,   3,37,   3,38,   
-3,39,  3,39,   3,40,   3,41,   
-3,42,  3,39,   3,43,   3,39,   
-3,44,  7,45,   8,50,   18,76,  
-26,100,        28,102, 30,104, 18,77,  
-7,46,  24,97,  42,114, 45,117, 
-31,105,        21,21,  7,47,   7,48,   
-23,84, 23,84,  7,49,   26,101, 
-28,103,        24,65,  38,112, 18,78,  
-24,98, 8,50,   24,66,  31,106, 
-36,74, 46,118, 49,123, 56,139, 
-36,111,        57,140, 55,137, 60,144, 
-21,21, 38,113, 8,51,   55,138, 
-8,52,  8,53,   8,53,   8,53,   
-8,53,  8,53,   8,53,   8,53,   
-8,53,  8,53,   8,53,   8,54,   
-21,82, 21,82,  21,82,  21,82,  
-21,82, 21,82,  21,82,  21,82,  
-21,82, 21,82,  47,119, 61,145, 
-62,146,        23,85,  23,86,  23,87,  
-44,115,        23,88,  35,72,  23,89,  
-23,90, 35,109, 23,91,  50,50,  
-33,70, 23,92,  23,93,  33,107, 
-23,94, 58,141, 47,120, 44,116, 
-35,73, 23,95,  65,148, 48,121, 
-35,110,        23,96,  8,55,   51,124, 
-66,149,        8,56,   33,108, 8,57,   
-33,71, 67,150, 50,50,  8,58,   
-48,122,        58,142, 8,59,   8,60,   
-8,61,  68,151, 69,152, 70,153, 
-8,62,  73,158, 71,154, 50,124, 
-71,155,        74,159, 51,124, 52,134, 
-52,134,        52,134, 52,134, 52,134, 
-52,134,        52,134, 52,134, 52,134, 
-52,134,        75,160, 76,161, 77,162, 
-78,163,        79,164, 51,133, 51,133, 
-51,133,        51,133, 51,133, 51,133, 
-51,133,        51,133, 51,133, 51,133, 
-53,135,        53,135, 53,135, 53,135, 
-53,135,        53,135, 53,135, 53,135, 
-53,135,        53,135, 54,136, 54,136, 
-54,136,        54,136, 54,136, 54,136, 
-54,136,        54,136, 54,136, 54,136, 
-72,156,        80,165, 81,166, 50,125, 
-93,111,        85,97,  50,126, 72,157, 
-50,127,        97,170, 91,107, 92,109, 
-50,128,        64,50,  98,171, 50,129, 
-50,130,        50,131, 99,172, 51,55,  
-85,98, 50,132, 51,56,  100,173,        
-51,57, 91,108, 92,110, 101,174,        
-51,58, 102,175,        103,176,        51,59,  
-51,60, 51,61,  104,177,        105,178,        
-64,50, 51,62,  63,135, 63,135, 
-63,135,        63,135, 63,135, 63,135, 
-63,147,        63,147, 63,147, 63,147, 
-106,179,       64,51,  107,180,        64,52,  
-82,167,        82,167, 82,167, 82,167, 
-82,167,        82,167, 82,167, 82,167, 
-82,167,        82,167, 64,54,  83,168, 
-83,168,        83,168, 83,168, 83,168, 
-83,168,        83,168, 83,168, 83,168, 
-83,168,        84,169, 84,169, 84,169, 
-84,169,        84,169, 84,169, 84,169, 
-84,169,        84,169, 84,169, 108,181,        
-109,182,       110,183,        111,184,        112,185,        
-113,186,       115,187,        116,188,        117,189,        
-118,190,       119,191,        120,192,        121,193,        
-122,194,       123,195,        124,124,        126,198,        
-125,196,       64,55,  127,199,        128,200,        
-64,56, 125,197,        64,57,  129,202,        
-130,203,       131,204,        64,58,  132,205,        
-133,206,       64,59,  64,60,  64,61,  
-137,216,       138,217,        139,218,        64,62,  
-140,219,       124,124,        141,220,        128,201,        
-134,206,       135,210,        135,210,        135,210,        
-135,210,       135,210,        135,210,        135,210,        
-135,210,       135,210,        135,210,        133,206,        
-142,221,       143,223,        142,222,        144,225,        
-145,226,       146,227,        153,236,        155,157,        
-143,224,       158,238,        159,239,        134,206,        
-133,207,       160,240,        162,242,        133,208,        
-133,208,       133,208,        133,208,        133,208,        
-133,208,       133,208,        133,208,        133,208,        
-133,208,       148,229,        134,207,        134,209,        
-134,209,       134,209,        134,209,        134,209,        
-134,209,       134,209,        134,209,        134,209,        
-134,209,       136,211,        147,228,        147,228,        
-147,228,       147,228,        147,228,        147,228,        
-147,228,       147,228,        147,228,        147,228,        
-148,229,       149,229,        124,125,        150,229,        
-154,229,       124,126,        163,243,        124,127,        
-190,252,       192,254,        196,258,        124,128,        
-136,211,       191,250,        124,129,        124,130,        
-124,131,       151,229,        156,229,        152,234,        
-124,132,       157,229,        161,234,        164,234,        
-149,229,       165,234,        150,229,        154,229,        
-136,212,       136,212,        136,212,        136,212,        
-136,212,       136,212,        136,212,        136,212,        
-136,212,       136,212,        136,213,        166,234,        
-151,229,       156,229,        152,234,        194,250,        
-157,229,       161,234,        164,234,        189,250,        
-165,234,       195,250,        193,250,        197,259,        
-198,260,       199,261,        152,234,        200,262,        
-203,267,       161,234,        164,234,        201,263,        
-165,234,       201,264,        166,234,        167,247,        
-167,247,       167,247,        167,247,        167,247,        
-167,247,       167,247,        167,247,        167,247,        
-167,247,       148,230,        166,234,        204,268,        
-205,269,       136,214,        168,248,        168,248,        
-168,248,       168,248,        168,248,        168,248,        
-168,248,       168,248,        168,248,        168,248,        
-206,206,       191,253,        208,207,        209,207,        
-136,215,       212,213,        214,274,        150,232,        
-169,249,       169,249,        169,249,        169,249,        
-169,249,       169,249,        169,249,        169,249,        
-169,249,       169,249,        189,251,        202,265,        
-156,237,       149,231,        152,235,        206,206,        
-210,271,       211,211,        202,266,        215,275,        
-154,157,       194,256,        195,257,        220,283,        
-222,224,       225,285,        151,233,        193,255,        
-226,286,       227,287,        230,157,        231,290,        
-164,244,       232,291,        161,241,        165,245,        
-233,292,       235,293,        236,294,        210,271,        
-211,211,       237,157,        238,295,        239,296,        
-166,246,       207,270,        207,270,        207,270,        
-207,270,       207,270,        207,270,        207,270,        
-207,270,       207,270,        207,270,        210,272,        
-210,272,       210,272,        210,272,        210,272,        
-210,272,       210,272,        210,272,        210,272,        
-210,272,       213,273,        213,273,        213,273,        
-213,273,       213,273,        213,273,        213,273,        
-213,273,       213,273,        213,273,        240,297,        
-228,288,       234,234,        241,298,        242,299,        
-243,300,       244,301,        245,302,        216,276,        
-246,303,       247,304,        247,304,        247,304,        
-247,304,       247,304,        247,304,        247,304,        
-247,304,       247,304,        247,304,        250,307,        
-251,308,       252,309,        217,276,        228,288,        
-234,234,       253,310,        254,311,        255,312,        
-256,313,       211,214,        216,276,        257,314,        
-276,330,       258,266,        260,266,        279,224,        
-218,276,       265,266,        280,332,        281,333,        
-282,334,       283,335,        284,224,        216,277,        
-211,215,       217,276,        216,278,        216,278,        
-216,278,       216,278,        216,278,        216,278,        
-216,278,       216,278,        216,278,        216,278,        
-258,266,       260,266,        217,277,        218,276,        
-265,266,       217,278,        217,278,        217,278,        
-217,278,       217,278,        217,278,        217,278,        
-217,278,       217,278,        217,278,        219,276,        
-218,277,       259,266,        285,336,        218,278,        
-218,278,       218,278,        218,278,        218,278,        
-218,278,       218,278,        218,278,        218,278,        
-218,278,       264,266,        263,266,        286,337,        
-287,338,       290,157,        291,342,        292,343,        
-293,344,       294,345,        219,276,        296,346,        
-259,266,       221,276,        266,266,        271,271,        
-297,347,       274,274,        262,266,        216,279,        
-298,348,       299,349,        301,350,        219,277,        
-264,266,       263,266,        219,278,        219,278,        
-219,278,       219,278,        219,278,        219,278,        
-219,278,       219,278,        219,278,        219,278,        
-221,276,       266,266,        271,271,        223,276,        
-274,274,       262,266,        260,317,        265,320,        
-218,281,       258,315,        217,280,        261,266,        
-268,266,       221,277,        269,266,        275,275,        
-221,278,       221,278,        221,278,        221,278,        
-221,278,       221,278,        221,278,        221,278,        
-221,278,       221,278,        223,276,        302,351,        
-303,352,       224,276,        267,266,        288,288,        
-308,353,       310,354,        261,266,        268,266,        
-312,355,       269,266,        275,275,        223,277,        
-229,229,       313,356,        223,278,        223,278,        
-223,278,       223,278,        223,278,        223,278,        
-223,278,       223,278,        223,278,        223,278,        
-224,276,       267,266,        288,288,        314,357,        
-219,282,       264,266,        315,266,        316,358,        
-317,359,       259,316,        318,360,        229,229,        
-319,361,       224,277,        320,266,        321,362,        
-224,278,       224,278,        224,278,        224,278,        
-224,278,       224,278,        224,278,        224,278,        
-224,278,       224,278,        263,266,        229,289,        
-229,289,       229,289,        229,289,        229,289,        
-229,289,       229,289,        229,289,        229,289,        
-229,289,       221,224,        262,319,        322,363,        
-323,364,       223,284,        248,305,        248,305,        
-248,305,       248,305,        248,305,        248,305,        
-248,305,       248,305,        248,305,        248,305,        
-249,306,       249,306,        249,306,        249,306,        
-249,306,       249,306,        249,306,        249,306,        
-249,306,       249,306,        268,322,        328,368,        
-261,318,       329,369,        330,370,        332,224,        
-273,326,       269,323,        267,321,        270,324,        
-270,324,       270,324,        270,324,        270,324,        
-270,324,       270,324,        270,324,        270,324,        
-270,324,       272,325,        272,325,        272,325,        
-272,325,       272,325,        272,325,        272,325,        
-272,325,       272,325,        272,325,        273,326,        
-333,373,       334,374,        277,277,        278,331,        
-278,331,       278,331,        278,331,        278,331,        
-278,331,       278,331,        278,331,        278,331,        
-278,331,       324,365,        325,325,        273,327,        
-273,327,       273,327,        273,327,        273,327,        
-273,327,       273,327,        273,327,        273,327,        
-273,327,       277,277,        335,375,        336,376,        
-289,339,       337,377,        338,378,        341,340,        
-342,380,       343,381,        344,234,        345,157,        
-324,365,       325,325,        346,382,        347,157,        
-348,383,       277,278,        277,278,        277,278,        
-277,278,       277,278,        277,278,        277,278,        
-277,278,       277,278,        277,278,        289,339,        
-324,366,       324,366,        324,366,        324,366,        
-324,366,       324,366,        324,366,        324,366,        
-324,366,       324,366,        326,326,        289,340,        
-273,328,       327,326,        331,371,        289,341,        
-289,341,       289,341,        289,341,        289,341,        
-289,341,       289,341,        289,341,        289,341,        
-289,341,       339,339,        340,379,        273,329,        
-349,384,       350,385,        352,386,        353,250,        
-354,387,       326,326,        355,388,        357,389,        
-327,326,       331,371,        358,266,        359,390,        
-360,391,       361,392,        362,393,        363,394,        
-364,395,       365,365,        367,396,        373,399,        
-339,339,       340,379,        326,367,        374,400,        
-375,224,       331,372,        331,372,        331,372,        
-331,372,       331,372,        331,372,        331,372,        
-331,372,       331,372,        331,372,        368,368,        
-369,369,       370,370,        371,371,        376,401,        
-365,365,       366,365,        366,365,        366,365,        
-366,365,       366,365,        366,365,        366,365,        
-366,365,       366,365,        366,365,        377,224,        
-378,402,       384,404,        386,405,        389,406,        
-390,407,       391,408,        368,368,        369,369,        
-370,370,       371,371,        392,266,        379,379,        
-393,409,       394,266,        395,410,        397,412,        
-402,413,       410,415,        326,328,        398,371,        
-412,412,       327,328,        372,398,        372,398,        
-372,398,       372,398,        372,398,        372,398,        
-372,398,       372,398,        372,398,        372,398,        
-0,0,   326,329,        379,379,        0,0,    
-327,329,       396,411,        396,411,        396,411,        
-396,411,       0,0,    398,371,        412,412,        
-0,0,   0,0,    0,0,    414,417,        
-417,417,       0,0,    379,403,        379,403,        
-379,403,       379,403,        379,403,        379,403,        
-379,403,       379,403,        379,403,        379,403,        
-403,414,       403,414,        403,414,        403,414,        
-403,414,       403,414,        403,414,        403,414,        
-403,414,       403,414,        414,417,        417,417,        
-0,0,   0,0,    371,397,        411,416,        
-411,416,       411,416,        411,416,        411,416,        
-411,416,       411,416,        411,416,        411,416,        
-411,416,       0,0,    414,418,        414,418,        
-414,418,       414,418,        414,418,        414,418,        
-414,418,       414,418,        414,418,        414,418,        
-418,417,       418,417,        418,417,        418,417,        
-418,417,       418,417,        418,417,        418,417,        
-418,417,       418,417,        0,0,    0,0,    
-0,0};
-struct yysvf yysvec[] = {
-0,     0,      0,
-yycrank+1,     0,              0,      
-yycrank+0,     yysvec+1,       0,      
-yycrank+27,    0,              0,      
-yycrank+0,     yysvec+3,       0,      
-yycrank+3,     0,              yyvstop+1,
-yycrank+0,     0,              yyvstop+3,
-yycrank+47,    0,              0,      
-yycrank+141,   0,              0,      
-yycrank+3,     yysvec+8,       0,      
-yycrank+37,    yysvec+8,       0,      
-yycrank+2,     0,              0,      
-yycrank+3,     0,              0,      
-yycrank+4,     0,              0,      
-yycrank+5,     0,              0,      
-yycrank+2,     0,              0,      
-yycrank+4,     0,              0,      
-yycrank+7,     0,              0,      
-yycrank+54,    0,              0,      
-yycrank+4,     0,              0,      
-yycrank+8,     0,              0,      
-yycrank+152,   0,              yyvstop+5,
-yycrank+13,    0,              0,      
-yycrank+116,   0,              0,      
-yycrank+57,    0,              yyvstop+7,
-yycrank+8,     0,              yyvstop+9,
-yycrank+52,    0,              yyvstop+11,
-yycrank+0,     yysvec+12,      yyvstop+13,
-yycrank+53,    0,              yyvstop+15,
-yycrank+0,     yysvec+13,      yyvstop+17,
-yycrank+45,    0,              yyvstop+19,
-yycrank+60,    0,              yyvstop+21,
-yycrank+0,     0,              yyvstop+23,
-yycrank+127,   0,              0,      
-yycrank+0,     0,              yyvstop+25,
-yycrank+121,   0,              yyvstop+27,
-yycrank+65,    0,              yyvstop+29,
-yycrank+0,     yysvec+17,      yyvstop+31,
-yycrank+70,    0,              yyvstop+33,
-yycrank+0,     0,              yyvstop+35,
-yycrank+0,     yysvec+18,      yyvstop+37,
-yycrank+0,     yysvec+19,      yyvstop+39,
-yycrank+42,    0,              yyvstop+41,
-yycrank+0,     yysvec+20,      yyvstop+43,
-yycrank+116,   0,              yyvstop+45,
-yycrank+45,    0,              0,      
-yycrank+66,    0,              0,      
-yycrank+113,   0,              0,      
-yycrank+131,   0,              0,      
-yycrank+77,    0,              0,      
-yycrank+214,   0,              0,      
-yycrank+230,   0,              0,      
-yycrank+215,   0,              0,      
-yycrank+240,   yysvec+8,       0,      
-yycrank+250,   0,              0,      
-yycrank+70,    0,              0,      
-yycrank+78,    0,              0,      
-yycrank+80,    0,              0,      
-yycrank+132,   0,              0,      
-yycrank+3,     0,              0,      
-yycrank+72,    0,              0,      
-yycrank+112,   0,              0,      
-yycrank+111,   0,              0,      
-yycrank+298,   yysvec+8,       0,      
-yycrank+312,   0,              0,      
-yycrank+120,   0,              0,      
-yycrank+137,   0,              0,      
-yycrank+146,   0,              0,      
-yycrank+155,   0,              0,      
-yycrank+149,   0,              0,      
-yycrank+145,   0,              0,      
-yycrank+150,   0,              0,      
-yycrank+194,   0,              0,      
-yycrank+147,   0,              0,      
-yycrank+143,   0,              0,      
-yycrank+157,   0,              0,      
-yycrank+158,   0,              0,      
-yycrank+163,   0,              0,      
-yycrank+166,   0,              0,      
-yycrank+160,   0,              0,      
-yycrank+208,   0,              0,      
-yycrank+210,   0,              0,      
-yycrank+312,   0,              0,      
-yycrank+323,   0,              0,      
-yycrank+333,   0,              0,      
-yycrank+213,   0,              0,      
-yycrank+0,     yysvec+25,      0,      
-yycrank+0,     yysvec+26,      0,      
-yycrank+0,     yysvec+28,      0,      
-yycrank+0,     yysvec+30,      0,      
-yycrank+0,     yysvec+31,      0,      
-yycrank+218,   0,              0,      
-yycrank+219,   0,              0,      
-yycrank+197,   0,              0,      
-yycrank+0,     yysvec+38,      0,      
-yycrank+0,     yysvec+42,      0,      
-yycrank+0,     yysvec+44,      0,      
-yycrank+201,   0,              0,      
-yycrank+206,   0,              0,      
-yycrank+210,   0,              0,      
-yycrank+215,   0,              0,      
-yycrank+219,   0,              0,      
-yycrank+221,   0,              0,      
-yycrank+222,   0,              0,      
-yycrank+226,   0,              0,      
-yycrank+227,   0,              0,      
-yycrank+240,   0,              0,      
-yycrank+242,   0,              0,      
-yycrank+275,   0,              0,      
-yycrank+276,   0,              0,      
-yycrank+277,   0,              0,      
-yycrank+278,   0,              0,      
-yycrank+279,   0,              0,      
-yycrank+280,   0,              0,      
-yycrank+0,     0,              yyvstop+47,
-yycrank+281,   0,              0,      
-yycrank+282,   0,              0,      
-yycrank+294,   0,              0,      
-yycrank+290,   0,              0,      
-yycrank+285,   0,              0,      
-yycrank+292,   0,              0,      
-yycrank+286,   0,              0,      
-yycrank+303,   0,              0,      
-yycrank+305,   0,              0,      
-yycrank+397,   0,              0,      
-yycrank+296,   0,              0,      
-yycrank+306,   0,              0,      
-yycrank+309,   0,              0,      
-yycrank+314,   0,              0,      
-yycrank+318,   0,              0,      
-yycrank+305,   0,              0,      
-yycrank+318,   0,              0,      
-yycrank+318,   0,              0,      
-yycrank+411,   0,              yyvstop+49,
-yycrank+423,   0,              yyvstop+51,
-yycrank+385,   0,              0,      
-yycrank+472,   0,              yyvstop+53,
-yycrank+310,   0,              0,      
-yycrank+322,   0,              0,      
-yycrank+327,   0,              0,      
-yycrank+330,   0,              0,      
-yycrank+320,   0,              0,      
-yycrank+336,   0,              0,      
-yycrank+331,   0,              0,      
-yycrank+329,   0,              0,      
-yycrank+332,   0,              0,      
-yycrank+337,   0,              0,      
-yycrank+434,   0,              0,      
-yycrank+460,   0,              0,      
-yycrank+484,   0,              0,      
-yycrank+486,   0,              0,      
-yycrank+500,   0,              0,      
-yycrank+502,   0,              yyvstop+55,
-yycrank+333,   yysvec+149,     0,      
-yycrank+487,   0,              0,      
-yycrank+350,   yysvec+150,     0,      
-yycrank+501,   0,              0,      
-yycrank+504,   0,              0,      
-yycrank+353,   yysvec+152,     yyvstop+57,
-yycrank+353,   yysvec+150,     0,      
-yycrank+346,   yysvec+157,     0,      
-yycrank+505,   0,              yyvstop+59,
-yycrank+342,   yysvec+157,     0,      
-yycrank+398,   yysvec+152,     yyvstop+61,
-yycrank+506,   0,              yyvstop+63,
-yycrank+508,   0,              yyvstop+65,
-yycrank+522,   0,              yyvstop+67,
-yycrank+507,   0,              0,      
-yycrank+522,   0,              0,      
-yycrank+540,   0,              0,      
-yycrank+0,     0,              yyvstop+69,
-yycrank+0,     0,              yyvstop+71,
-yycrank+0,     0,              yyvstop+73,
-yycrank+0,     0,              yyvstop+75,
-yycrank+0,     0,              yyvstop+77,
-yycrank+0,     0,              yyvstop+79,
-yycrank+0,     0,              yyvstop+81,
-yycrank+0,     0,              yyvstop+83,
-yycrank+0,     0,              yyvstop+85,
-yycrank+0,     0,              yyvstop+87,
-yycrank+0,     0,              yyvstop+89,
-yycrank+0,     0,              yyvstop+91,
-yycrank+0,     0,              yyvstop+93,
-yycrank+0,     0,              yyvstop+95,
-yycrank+0,     0,              yyvstop+97,
-yycrank+0,     0,              yyvstop+99,
-yycrank+0,     0,              yyvstop+101,
-yycrank+0,     0,              yyvstop+103,
-yycrank+0,     0,              yyvstop+105,
-yycrank+498,   0,              0,      
-yycrank+400,   yysvec+189,     0,      
-yycrank+464,   0,              0,      
-yycrank+401,   yysvec+189,     0,      
-yycrank+501,   0,              0,      
-yycrank+494,   0,              0,      
-yycrank+500,   0,              0,      
-yycrank+388,   0,              0,      
-yycrank+440,   0,              0,      
-yycrank+445,   0,              0,      
-yycrank+447,   0,              0,      
-yycrank+437,   0,              0,      
-yycrank+443,   0,              0,      
-yycrank+485,   0,              0,      
-yycrank+430,   0,              0,      
-yycrank+451,   0,              0,      
-yycrank+456,   0,              0,      
-yycrank+571,   0,              yyvstop+107,
-yycrank+585,   0,              0,      
-yycrank+537,   yysvec+206,     yyvstop+109,
-yycrank+536,   yysvec+206,     yyvstop+111,
-yycrank+595,   0,              yyvstop+113,
-yycrank+596,   0,              yyvstop+115,
-yycrank+527,   yysvec+211,     yyvstop+117,
-yycrank+605,   0,              0,      
-yycrank+477,   0,              0,      
-yycrank+498,   0,              0,      
-yycrank+662,   0,              yyvstop+119,
-yycrank+677,   0,              yyvstop+121,
-yycrank+691,   0,              yyvstop+123,
-yycrank+726,   0,              yyvstop+125,
-yycrank+494,   yysvec+217,     yyvstop+127,
-yycrank+752,   0,              yyvstop+129,
-yycrank+511,   yysvec+218,     yyvstop+131,
-yycrank+778,   0,              yyvstop+133,
-yycrank+804,   0,              yyvstop+135,
-yycrank+512,   yysvec+218,     yyvstop+137,
-yycrank+505,   yysvec+224,     yyvstop+139,
-yycrank+501,   yysvec+224,     yyvstop+141,
-yycrank+655,   yysvec+210,     yyvstop+143,
-yycrank+815,   0,              0,      
-yycrank+510,   0,              0,      
-yycrank+504,   0,              0,      
-yycrank+512,   0,              0,      
-yycrank+507,   0,              0,      
-yycrank+656,   0,              yyvstop+146,
-yycrank+528,   0,              0,      
-yycrank+529,   0,              0,      
-yycrank+525,   0,              0,      
-yycrank+533,   0,              0,      
-yycrank+522,   0,              0,      
-yycrank+565,   0,              0,      
-yycrank+552,   0,              0,      
-yycrank+566,   0,              0,      
-yycrank+571,   0,              0,      
-yycrank+554,   0,              0,      
-yycrank+570,   0,              0,      
-yycrank+571,   0,              0,      
-yycrank+625,   0,              0,      
-yycrank+830,   0,              0,      
-yycrank+840,   0,              0,      
-yycrank+639,   0,              yyvstop+148,
-yycrank+587,   0,              0,      
-yycrank+588,   0,              0,      
-yycrank+575,   0,              0,      
-yycrank+593,   0,              0,      
-yycrank+576,   0,              0,      
-yycrank+592,   0,              0,      
-yycrank+594,   0,              0,      
-yycrank+688,   yysvec+216,     0,      
-yycrank+728,   yysvec+217,     0,      
-yycrank+689,   yysvec+218,     0,      
-yycrank+786,   yysvec+219,     0,      
-yycrank+757,   yysvec+217,     0,      
-yycrank+741,   yysvec+221,     0,      
-yycrank+740,   yysvec+218,     0,      
-yycrank+692,   yysvec+223,     0,      
-yycrank+753,   yysvec+224,     0,      
-yycrank+805,   yysvec+218,     0,      
-yycrank+787,   yysvec+224,     0,      
-yycrank+789,   yysvec+224,     0,      
-yycrank+859,   0,              0,      
-yycrank+754,   0,              yyvstop+150,
-yycrank+869,   0,              0,      
-yycrank+895,   0,              yyvstop+152,
-yycrank+756,   0,              yyvstop+154,
-yycrank+790,   0,              yyvstop+156,
-yycrank+599,   yysvec+224,     yyvstop+158,
-yycrank+921,   0,              0,      
-yycrank+883,   0,              0,      
-yycrank+591,   0,              0,      
-yycrank+587,   0,              0,      
-yycrank+594,   0,              0,      
-yycrank+587,   0,              0,      
-yycrank+608,   0,              0,      
-yycrank+602,   0,              0,      
-yycrank+629,   0,              0,      
-yycrank+653,   0,              0,      
-yycrank+651,   0,              0,      
-yycrank+806,   0,              yyvstop+160,
-yycrank+947,   0,              yyvstop+163,
-yycrank+637,   0,              0,      
-yycrank+656,   0,              0,      
-yycrank+658,   0,              0,      
-yycrank+635,   0,              0,      
-yycrank+643,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+661,   0,              0,      
-yycrank+663,   0,              0,      
-yycrank+668,   0,              0,      
-yycrank+660,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+670,   0,              0,      
-yycrank+714,   0,              0,      
-yycrank+697,   0,              0,      
-yycrank+0,     0,              yyvstop+165,
-yycrank+0,     0,              yyvstop+167,
-yycrank+0,     0,              yyvstop+169,
-yycrank+0,     0,              yyvstop+171,
-yycrank+695,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+717,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+720,   0,              0,      
-yycrank+728,   0,              0,      
-yycrank+724,   0,              0,      
-yycrank+734,   0,              0,      
-yycrank+728,   0,              0,      
-yycrank+735,   0,              0,      
-yycrank+729,   0,              0,      
-yycrank+751,   0,              0,      
-yycrank+746,   0,              0,      
-yycrank+742,   0,              0,      
-yycrank+777,   0,              0,      
-yycrank+775,   0,              0,      
-yycrank+932,   0,              yyvstop+173,
-yycrank+933,   0,              yyvstop+175,
-yycrank+981,   0,              yyvstop+177,
-yycrank+984,   0,              yyvstop+179,
-yycrank+790,   0,              0,      
-yycrank+792,   0,              0,      
-yycrank+786,   0,              0,      
-yycrank+985,   0,              yyvstop+181,
-yycrank+787,   0,              0,      
-yycrank+830,   0,              0,      
-yycrank+832,   0,              0,      
-yycrank+840,   0,              0,      
-yycrank+857,   0,              0,      
-yycrank+856,   0,              0,      
-yycrank+849,   0,              0,      
-yycrank+996,   0,              yyvstop+183,
-yycrank+997,   0,              0,      
-yycrank+915,   yysvec+339,     yyvstop+185,
-yycrank+859,   0,              0,      
-yycrank+847,   0,              0,      
-yycrank+918,   yysvec+234,     yyvstop+187,
-yycrank+842,   0,              0,      
-yycrank+865,   0,              0,      
-yycrank+853,   0,              0,      
-yycrank+871,   0,              0,      
-yycrank+910,   0,              0,      
-yycrank+912,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+910,   0,              0,      
-yycrank+970,   0,              0,      
-yycrank+915,   0,              0,      
-yycrank+917,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+915,   0,              0,      
-yycrank+902,   0,              0,      
-yycrank+921,   0,              0,      
-yycrank+923,   0,              0,      
-yycrank+907,   0,              0,      
-yycrank+924,   0,              0,      
-yycrank+922,   0,              0,      
-yycrank+915,   0,              0,      
-yycrank+1016,  0,              yyvstop+189,
-yycrank+1001,  yysvec+324,     yyvstop+191,
-yycrank+969,   0,              0,      
-yycrank+1034,  0,              yyvstop+193,
-yycrank+1035,  0,              yyvstop+195,
-yycrank+1036,  0,              yyvstop+197,
-yycrank+1037,  0,              yyvstop+199,
-yycrank+1034,  yysvec+331,     yyvstop+201,
-yycrank+926,   0,              0,      
-yycrank+917,   0,              0,      
-yycrank+911,   0,              0,      
-yycrank+946,   0,              0,      
-yycrank+945,   0,              0,      
-yycrank+962,   0,              0,      
-yycrank+1062,  0,              0,      
-yycrank+0,     yysvec+347,     0,      
-yycrank+0,     yysvec+345,     0,      
-yycrank+0,     yysvec+347,     0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+960,   0,              0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+965,   0,              0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+966,   0,              0,      
-yycrank+963,   0,              0,      
-yycrank+951,   0,              0,      
-yycrank+949,   0,              0,      
-yycrank+971,   0,              0,      
-yycrank+959,   0,              0,      
-yycrank+976,   0,              0,      
-yycrank+1043,  0,              0,      
-yycrank+959,   0,              0,      
-yycrank+1070,  0,              yyvstop+203,
-yycrank+0,     yysvec+377,     0,      
-yycrank+0,     yysvec+375,     0,      
-yycrank+0,     yysvec+377,     0,      
-yycrank+975,   0,              0,      
-yycrank+1072,  0,              0,      
-yycrank+0,     yysvec+347,     0,      
-yycrank+0,     yysvec+293,     0,      
-yycrank+0,     yysvec+308,     0,      
-yycrank+0,     yysvec+394,     0,      
-yycrank+0,     yysvec+392,     0,      
-yycrank+0,     yysvec+394,     0,      
-yycrank+976,   0,              0,      
-yycrank+1087,  0,              0,      
-yycrank+1071,  0,              yyvstop+205,
-yycrank+0,     yysvec+377,     0,      
-yycrank+1098,  0,              yyvstop+207,
-yycrank+0,     yysvec+394,     0,      
-yycrank+0,     0,              yyvstop+209,
-yycrank+1099,  0,              yyvstop+211,
-yycrank+1108,  yysvec+414,     yyvstop+213,
-0,     0,      0};
-struct yywork *yytop = yycrank+1165;
-struct yysvf *yybgin = yysvec+1;
-char yymatch[] = {
-  0,   1,   1,   1,   1,   1,   1,   1, 
-  1,   9,   1,   1,   1,   1,   1,   1, 
-  1,   1,   1,   1,   1,   1,   1,   1, 
-  1,   1,   1,   1,   1,   1,   1,   1, 
-  9,   1,   1,   1,   1,   1,   1,   1, 
-  1,   1,   1,   1,   1,   1,   1,   1, 
- 48,  48,  50,  51,  51,  51,  54,  54, 
- 54,  54,   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,  97,  97,  97,  97,  97,  97,  97, 
- 97,  97,   1, 107, 107, 107, 110, 110, 
-110, 110, 110, 110, 110, 110, 110, 110, 
-110, 110,   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,   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, 
-0};
-char yyextra[] = {
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,
-0};
-/*     Copyright (c) 1989 AT&T */
-/*       All Rights Reserved   */
-
-/*     THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T     */
-/*     The copyright notice above does not evidence any        */
-/*     actual or intended publication of such source code.     */
-
-#pragma ident  "@(#)ncform     6.11    97/01/06 SMI"
-