Annotation of 43BSD/contrib/mh/zotnet/tws/dtimep.c, revision 1.1.1.1

1.1       root        1: # include "stdio.h"
                      2: static int start_cond = 0;
                      3: #define BEGIN start_cond =
                      4: struct yysvf { 
                      5:        struct yywork *yystoff;
                      6:        struct yysvf *yyother;
                      7:        int *yystops;};
                      8: # define Z 2
                      9: #include "tws.h"
                     10: #include <ctype.h>
                     11: 
                     12: /*
                     13:  * Table to convert month names to numeric month.  We use the
                     14:  * fact that the low order 5 bits of the sum of the 2nd & 3rd
                     15:  * characters of the name is a hash with no collisions for the 12
                     16:  * valid month names.  (The mask to 5 bits maps any combination of
                     17:  * upper and lower case into the same hash value).
                     18:  */
                     19: static int month_map[] = {
                     20:        0,
                     21:        6,      /* 1 - Jul */
                     22:        3,      /* 2 - Apr */
                     23:        5,      /* 3 - Jun */
                     24:        0,
                     25:        10,     /* 5 - Nov */
                     26:        0,
                     27:        1,      /* 7 - Feb */
                     28:        11,     /* 8 - Dec */
                     29:        0,
                     30:        0,
                     31:        0,
                     32:        0,
                     33:        0,
                     34:        0,
                     35:        0,      /*15 - Jan */
                     36:        0,
                     37:        0,
                     38:        0,
                     39:        2,      /*19 - Mar */
                     40:        0,
                     41:        8,      /*21 - Sep */
                     42:        0,
                     43:        9,      /*23 - Oct */
                     44:        0,
                     45:        0,
                     46:        4,      /*26 - May */
                     47:        0,
                     48:        7       /*28 - Aug */
                     49: };
                     50: /*
                     51:  * Same trick for day-of-week using the hash function
                     52:  *  (c1 & 7) + (c2 & 4)
                     53:  */
                     54: static int day_map[] = {
                     55:        0,
                     56:        0,
                     57:        0,
                     58:        6,      /* 3 - Sat */
                     59:        4,      /* 4 - Thu */
                     60:        0,
                     61:        5,      /* 6 - Fri */
                     62:        0,      /* 7 - Sun */
                     63:        2,      /* 8 - Tue */
                     64:        1       /* 9 - Mon */,
                     65:        0,
                     66:        3       /*11 - Wed */
                     67: };
                     68: #define SETDAY tw.tw_wday= day_map[(cp[0] & 7) + (cp[1] & 4)];\
                     69:                tw.tw_flags |= TW_SEXP;\
                     70:                cp += 2;
                     71: #define SETMONTH tw.tw_mon = month_map[(cp[0] + cp[1]) & 0x1f]; gotdate++;\
                     72:                 cp += 2;\
                     73:                 SKIPD;
                     74: #define CVT2   (i=(*cp++ - '0'),isdigit(*cp)? i*10 + (*cp++ - '0') : i)
                     75: #define SKIPD  while ( !isdigit(*cp++) ) ;  --cp;
                     76: #define ZONE(x)        tw.tw_zone=(x);
                     77: #define ZONED(x)  tw.tw_zone=(x); tw.tw_flags |= TW_DST;
                     78: #define LC(c)  (isupper(c) ? tolower(c) : (c))
                     79: struct tws *dparsetime (str)
                     80:        char *str;
                     81: {
                     82:        register int i;
                     83:        static struct tws tw;
                     84:        register char *cp;
                     85:        register int gotdate = 0;
                     86: 
                     87:        start_cond = 0;
                     88:        bzero( (char *) &tw, sizeof tw);
                     89:        while (isspace(*str))
                     90:                str++;
                     91:        while ( 1 )
                     92:                switch (cp = str, *cp? lex_string( &str, start_cond) : 0) {
                     93: 
                     94:                case -1:
                     95:                        if (!gotdate || tw.tw_year == 0)
                     96:                                return 0;
                     97:                        /* fall through */
                     98:                case 0:
                     99:                        return &tw;
                    100: 
                    101: case 1:
                    102:                        SETDAY;
                    103: break;
                    104: case 2:
                    105:                cp++, SETDAY;
                    106: break;
                    107: case 3:
                    108:        {
                    109:                                        tw.tw_mday = CVT2; cp++;
                    110:                                        tw.tw_mon  = CVT2 - 1; cp += 3;
                    111:                                        tw.tw_year = CVT2;
                    112:                                        gotdate++;
                    113:                                        }
                    114: break;
                    115: case 4:
                    116:        {
                    117:                                        tw.tw_mday = CVT2; cp++;
                    118:                                        tw.tw_mon  = CVT2 - 1; cp++;
                    119:                                        tw.tw_year = CVT2;
                    120:                                        gotdate++;
                    121:                                        }
                    122: break;
                    123: case 5:
                    124: {
                    125:                                        tw.tw_mday = CVT2;
                    126:                                        while ( !isalpha(*cp++) )
                    127:                                                ;
                    128:                                        SETMONTH;
                    129:                                        for (i = 0; isdigit(*cp); )
                    130:                                                i = i*10 + (*cp++ - '0');
                    131:                                        tw.tw_year = i % 100;
                    132:                                        }
                    133: break;
                    134: case 6:
                    135:        {
                    136:                                        cp++;
                    137:                                        SETMONTH;
                    138:                                        tw.tw_mday = CVT2;
                    139:                                        SKIPD;
                    140:                                        for (i = 0; isdigit(*cp); )
                    141:                                                i = i*10 + (*cp++ - '0');
                    142:                                        tw.tw_year = i % 100;
                    143:                                        }
                    144: break;
                    145: case 7:
                    146:                {
                    147:                                        cp++;
                    148:                                        SETMONTH;
                    149:                                        tw.tw_mday = CVT2;
                    150:                                        }
                    151: break;
                    152: case 8:
                    153:                        {
                    154:                                        tw.tw_hour = CVT2; cp++;
                    155:                                        tw.tw_min  = CVT2; cp++;
                    156:                                        tw.tw_sec  = CVT2;
                    157:                                        BEGIN Z;
                    158:                                        }
                    159: break;
                    160: case 9:
                    161:                        case 10:
                    162:                        {
                    163:                                        tw.tw_hour = CVT2; cp++;
                    164:                                        tw.tw_min  = CVT2;
                    165:                                        BEGIN Z;
                    166:                                        }
                    167: break;
                    168: case 11:
                    169:                        {
                    170:                                        tw.tw_hour = CVT2 + 12; cp++;
                    171:                                        tw.tw_min  = CVT2;
                    172:                                        BEGIN Z;
                    173:                                        }
                    174: break;
                    175: case 12:
                    176:                {
                    177:                                        tw.tw_hour = CVT2;
                    178:                                        tw.tw_min  = CVT2;
                    179:                                        tw.tw_sec  = CVT2;
                    180:                                        BEGIN Z;
                    181:                                        }
                    182: break;
                    183: case 13:
                    184:                {
                    185:                                        tw.tw_hour = CVT2;
                    186:                                        tw.tw_min  = CVT2;
                    187:                                        BEGIN Z;
                    188:                                        }
                    189: break;
                    190: case 14:
                    191:                        ZONE(0 * 60);
                    192: break;
                    193: case 15:
                    194:                        ZONE(0 * 60);
                    195: break;
                    196: case 16:
                    197:                        ZONE(2 * 60);
                    198: break;
                    199: case 17:
                    200:                        ZONED(2 * 60);
                    201: break;
                    202: case 18:
                    203:                        ZONE(-5 * 60);
                    204: break;
                    205: case 19:
                    206:                        ZONED(-5 * 60);
                    207: break;
                    208: case 20:
                    209:                        ZONE(-6 * 60);
                    210: break;
                    211: case 21:
                    212:                        ZONED(-6 * 60);
                    213: break;
                    214: case 22:
                    215:                        ZONE(-7 * 60);
                    216: break;
                    217: case 23:
                    218:                        ZONED(-7 * 60);
                    219: break;
                    220: case 24:
                    221:                        ZONE(-8 * 60);
                    222: break;
                    223: case 25:
                    224:                        ZONED(-8 * 60);
                    225: break;
                    226: case 26:
                    227:                        ZONE(-(3 * 60 + 30));
                    228: break;
                    229: case 27:
                    230:                        ZONE(-4 * 60);
                    231: break;
                    232: case 28:
                    233:                        ZONED(-4 * 60);
                    234: break;
                    235: case 29:
                    236:                        ZONE(-9 * 60);
                    237: break;
                    238: case 30:
                    239:                        ZONED(-9 * 60);
                    240: break;
                    241: case 31:
                    242:                        ZONE(-10 * 60);
                    243: break;
                    244: case 32:
                    245:                        ZONED(-10 * 60);
                    246: break;
                    247: case 33:
                    248:                        ZONED(-1 * 60);
                    249: break;
                    250: case 34:
                    251:                        tw.tw_zone = 60 * (('a'-1) - LC(*cp));
                    252: break;
                    253: case 35:
                    254:                        tw.tw_zone = 60 * ('a' - LC(*cp));
                    255: break;
                    256: case 36:
                    257:                        tw.tw_zone = 60 * (LC(*cp) - 'm');
                    258: break;
                    259: case 37:
                    260:                {
                    261:                                        cp++;
                    262:                                        tw.tw_zone = ((cp[0] * 10 + cp[1])
                    263:                                                     -('0' * 10   + '0'))*60
                    264:                                                    +((cp[2] * 10 + cp[3])
                    265:                                                     -('0' * 10   + '0'));
                    266:                                        cp += 4;
                    267:                                        }
                    268: break;
                    269: case 38:
                    270:                {
                    271:                                        cp++;
                    272:                                        tw.tw_zone = (('0' * 10   + '0')
                    273:                                                     -(cp[0] * 10 + cp[1]))*60
                    274:                                                    +(('0' * 10   + '0')
                    275:                                                     -(cp[2] * 10 + cp[3]));
                    276:                                        cp += 4;
                    277:                                        }
                    278: break;
                    279: case 39:
                    280:                {
                    281:                                        while( !isdigit(*cp++) )
                    282:                                                ;
                    283:                                        cp++;
                    284:                                        tw.tw_year = CVT2;
                    285:                                        }
                    286: break;
                    287: case 40:
                    288: case 41:
                    289: ;
                    290: break;
                    291: default: return(0);
                    292: } return(0); }
                    293: /* end of yylex */
                    294: int yyvstop[] ={
                    295: 0,
                    296: 
                    297: 41,
                    298: 0,
                    299: 
                    300: 40,
                    301: 0,
                    302: 
                    303: 41,
                    304: 0,
                    305: 
                    306: 34,
                    307: 0,
                    308: 
                    309: 34,
                    310: 0,
                    311: 
                    312: 34,
                    313: 0,
                    314: 
                    315: 34,
                    316: 0,
                    317: 
                    318: 34,
                    319: 0,
                    320: 
                    321: 34,
                    322: 0,
                    323: 
                    324: 34,
                    325: 0,
                    326: 
                    327: 34,
                    328: 0,
                    329: 
                    330: 34,
                    331: 0,
                    332: 
                    333: 35,
                    334: 0,
                    335: 
                    336: 35,
                    337: 0,
                    338: 
                    339: 36,
                    340: 0,
                    341: 
                    342: 36,
                    343: 0,
                    344: 
                    345: 36,
                    346: 0,
                    347: 
                    348: 36,
                    349: 0,
                    350: 
                    351: 36,
                    352: 0,
                    353: 
                    354: 36,
                    355: 0,
                    356: 
                    357: 36,
                    358: 0,
                    359: 
                    360: 36,
                    361: 0,
                    362: 
                    363: 36,
                    364: 0,
                    365: 
                    366: 14,
                    367: 0,
                    368: 
                    369: 9,
                    370: 0,
                    371: 
                    372: 1,
                    373: 0,
                    374: 
                    375: 1,
                    376: 0,
                    377: 
                    378: 1,
                    379: 0,
                    380: 
                    381: 1,
                    382: 0,
                    383: 
                    384: 1,
                    385: 0,
                    386: 
                    387: 1,
                    388: 0,
                    389: 
                    390: 1,
                    391: 0,
                    392: 
                    393: 28,
                    394: 0,
                    395: 
                    396: 27,
                    397: 0,
                    398: 
                    399: 33,
                    400: 0,
                    401: 
                    402: 21,
                    403: 0,
                    404: 
                    405: 20,
                    406: 0,
                    407: 
                    408: 19,
                    409: 0,
                    410: 
                    411: 18,
                    412: 0,
                    413: 
                    414: 15,
                    415: 0,
                    416: 
                    417: 32,
                    418: 0,
                    419: 
                    420: 31,
                    421: 0,
                    422: 
                    423: 17,
                    424: 0,
                    425: 
                    426: 16,
                    427: 0,
                    428: 
                    429: 23,
                    430: 0,
                    431: 
                    432: 22,
                    433: 0,
                    434: 
                    435: 26,
                    436: 0,
                    437: 
                    438: 25,
                    439: 0,
                    440: 
                    441: 24,
                    442: 0,
                    443: 
                    444: 30,
                    445: 0,
                    446: 
                    447: 29,
                    448: 0,
                    449: 
                    450: 13,
                    451: 0,
                    452: 
                    453: 9,
                    454: 0,
                    455: 
                    456: 9,
                    457: 0,
                    458: 
                    459: 1,
                    460: 0,
                    461: 
                    462: 2,
                    463: 0,
                    464: 
                    465: 13,
                    466: 0,
                    467: 
                    468: 8,
                    469: 0,
                    470: 
                    471: 10,
                    472: 0,
                    473: 
                    474: 11,
                    475: 0,
                    476: 
                    477: 5,
                    478: 0,
                    479: 
                    480: 5,
                    481: 0,
                    482: 
                    483: 7,
                    484: 0,
                    485: 
                    486: 39,
                    487: 0,
                    488: 
                    489: 37,
                    490: 0,
                    491: 
                    492: 38,
                    493: 0,
                    494: 
                    495: 2,
                    496: 0,
                    497: 
                    498: 4,
                    499: 0,
                    500: 
                    501: 4,
                    502: 0,
                    503: 
                    504: 12,
                    505: 0,
                    506: 
                    507: 8,
                    508: 0,
                    509: 
                    510: 5,
                    511: 0,
                    512: 
                    513: 5,
                    514: 0,
                    515: 
                    516: 7,
                    517: 0,
                    518: 
                    519: 7,
                    520: 0,
                    521: 
                    522: 1,
                    523: 0,
                    524: 
                    525: 3,
                    526: 0,
                    527: 
                    528: 5,
                    529: 0,
                    530: 
                    531: 6,
                    532: 0,
                    533: 
                    534: 6,
                    535: 0,
                    536: 
                    537: 6,
                    538: 0,
                    539: 
                    540: 6,
                    541: 0,
                    542: 0};
                    543: # define YYTYPE int
                    544: struct yywork { YYTYPE verify, advance; } yycrank[] ={
                    545: 0,0,   0,0,    0,0,    0,0,    
                    546: 0,0,   0,0,    0,0,    0,0,    
                    547: 0,0,   0,0,    1,5,    1,6,    
                    548: 0,0,   0,0,    0,0,    0,0,    
                    549: 0,0,   0,0,    0,0,    0,0,    
                    550: 0,0,   0,0,    0,0,    0,0,    
                    551: 0,0,   0,0,    0,0,    0,0,    
                    552: 0,0,   0,0,    0,0,    0,0,    
                    553: 0,0,   1,5,    0,0,    0,0,    
                    554: 3,20,  3,6,    5,5,    0,0,    
                    555: 0,0,   1,7,    0,0,    0,0,    
                    556: 0,0,   0,0,    0,0,    0,0,    
                    557: 0,0,   1,8,    1,8,    1,8,    
                    558: 1,9,   1,9,    1,9,    1,9,    
                    559: 1,9,   1,9,    1,9,    3,20,   
                    560: 0,0,   5,5,    0,0,    0,0,    
                    561: 0,0,   0,0,    0,0,    3,7,    
                    562: 0,0,   0,0,    3,21,   0,0,    
                    563: 3,22,  20,20,  0,0,    3,8,    
                    564: 3,8,   3,8,    3,9,    3,9,    
                    565: 3,9,   3,9,    3,9,    3,9,    
                    566: 3,9,   9,61,   9,61,   9,61,   
                    567: 9,61,  9,61,   9,61,   9,61,   
                    568: 9,61,  9,61,   9,61,   0,0,    
                    569: 20,20, 0,0,    1,10,   21,80,  
                    570: 21,80, 1,11,   0,0,    1,12,   
                    571: 0,0,   0,0,    0,0,    1,13,   
                    572: 0,0,   0,0,    1,14,   1,15,   
                    573: 1,16,  20,79,  0,0,    0,0,    
                    574: 1,17,  1,18,   0,0,    0,0,    
                    575: 1,19,  0,0,    0,0,    0,0,    
                    576: 3,23,  3,24,   3,25,   3,26,   
                    577: 3,27,  3,28,   3,29,   3,30,   
                    578: 3,31,  3,32,   3,33,   3,33,   
                    579: 3,34,  3,35,   3,36,   3,37,   
                    580: 3,38,  3,38,   3,39,   3,40,   
                    581: 3,41,  3,38,   3,42,   3,38,   
                    582: 3,43,  7,44,   10,62,  11,64,  
                    583: 8,49,  15,71,  16,72,  10,63,  
                    584: 7,45,  19,78,  24,96,  29,101, 
                    585: 13,67, 41,111, 7,46,   7,47,   
                    586: 44,114,        8,49,   7,48,   8,50,   
                    587: 8,51,  8,51,   8,51,   8,51,   
                    588: 8,51,  8,51,   8,51,   8,51,   
                    589: 8,51,  8,51,   8,52,   12,65,  
                    590: 13,68, 14,69,  17,73,  18,76,  
                    591: 25,97, 27,99,  17,74,  22,81,  
                    592: 22,81, 23,94,  30,102, 32,67,  
                    593: 12,66, 35,71,  32,104, 14,70,  
                    594: 18,77, 35,108, 37,109, 25,98,  
                    595: 27,100,        23,62,  17,75,  43,112, 
                    596: 23,95, 30,103, 23,63,  34,69,  
                    597: 45,115,        32,105, 34,106, 32,68,  
                    598: 46,116,        37,110, 47,118, 48,120, 
                    599: 54,126,        8,53,   43,113, 53,124, 
                    600: 8,54,  34,70,  8,55,   55,127, 
                    601: 53,125,        34,107, 8,56,   47,119, 
                    602: 57,130,        8,57,   8,58,   8,59,   
                    603: 46,117,        58,131, 59,132, 8,60,   
                    604: 22,82, 22,83,  22,84,  60,133, 
                    605: 22,85, 49,53,  22,86,  22,87,  
                    606: 49,54, 22,88,  49,55,  62,134, 
                    607: 22,89, 22,90,  49,56,  22,91,  
                    608: 63,135,        49,57,  49,58,  49,59,  
                    609: 22,92, 64,136, 65,137, 49,60,  
                    610: 22,93, 50,121, 50,121, 50,121, 
                    611: 50,121,        50,121, 50,121, 50,121, 
                    612: 50,121,        50,121, 50,121, 51,122, 
                    613: 51,122,        51,122, 51,122, 51,122, 
                    614: 51,122,        51,122, 51,122, 51,122, 
                    615: 51,122,        52,123, 52,123, 52,123, 
                    616: 52,123,        52,123, 52,123, 52,123, 
                    617: 52,123,        52,123, 52,123, 56,128, 
                    618: 61,49, 66,138, 67,139, 68,140, 
                    619: 69,142,        68,141, 70,144, 71,145, 
                    620: 72,146,        73,147, 74,148, 69,143, 
                    621: 75,149,        61,49,  76,150, 61,50,  
                    622: 77,151,        78,152, 79,153, 56,129, 
                    623: 90,108,        94,156, 95,157, 96,158, 
                    624: 97,159,        98,160, 61,52,  80,154, 
                    625: 80,154,        80,154, 80,154, 80,154, 
                    626: 80,154,        80,154, 80,154, 80,154, 
                    627: 80,154,        81,155, 81,155, 81,155, 
                    628: 81,155,        81,155, 81,155, 81,155, 
                    629: 81,155,        81,155, 81,155, 82,94,  
                    630: 88,104,        89,106, 99,161, 100,162,        
                    631: 101,163,       102,164,        103,165,        104,166,        
                    632: 105,167,       106,168,        107,169,        108,170,        
                    633: 109,171,       110,172,        82,95,  88,105, 
                    634: 89,107,        112,173,        113,174,        114,175,        
                    635: 115,176,       116,177,        117,178,        118,179,        
                    636: 119,180,       120,181,        121,182,        121,183,        
                    637: 121,183,       121,183,        121,183,        121,183,        
                    638: 121,183,       121,183,        121,183,        121,183,        
                    639: 121,183,       122,184,        122,184,        122,184,        
                    640: 122,184,       122,184,        122,184,        122,184,        
                    641: 122,184,       122,184,        122,184,        123,185,        
                    642: 124,190,       125,191,        126,192,        127,193,        
                    643: 128,194,       129,195,        130,197,        129,196,        
                    644: 131,199,       132,200,        133,201,        134,202,        
                    645: 135,202,       130,198,        136,205,        141,143,        
                    646: 144,211,       145,212,        146,213,        148,215,        
                    647: 149,216,       176,225,        123,185,        175,223,        
                    648: 177,223,       178,227,        137,202,        138,207,        
                    649: 139,202,       140,202,        142,202,        143,202,        
                    650: 147,207,       150,207,        134,202,        135,202,        
                    651: 151,207,       181,223,        123,186,        123,186,        
                    652: 123,186,       123,186,        123,186,        123,186,        
                    653: 123,186,       123,186,        123,186,        123,186,        
                    654: 123,187,       137,202,        138,207,        139,202,        
                    655: 140,202,       142,202,        143,202,        147,207,        
                    656: 150,207,       152,207,        180,223,        151,207,        
                    657: 179,223,       183,182,        138,207,        153,220,        
                    658: 153,220,       153,220,        153,220,        147,207,        
                    659: 150,207,       186,187,        188,236,        151,207,        
                    660: 189,237,       192,243,        196,198,        199,247,        
                    661: 200,248,       201,249,        203,143,        204,251,        
                    662: 152,207,       205,252,        175,224,        206,253,        
                    663: 208,254,       209,255,        210,143,        123,188,        
                    664: 211,256,       212,257,        213,258,        214,259,        
                    665: 152,207,       215,260,        216,261,        217,262,        
                    666: 185,185,       218,263,        219,264,        223,268,        
                    667: 177,226,       224,269,        123,189,        225,270,        
                    668: 135,204,       226,271,        181,230,        134,203,        
                    669: 154,221,       154,221,        154,221,        154,221,        
                    670: 154,221,       154,221,        154,221,        154,221,        
                    671: 154,221,       154,221,        138,208,        185,185,        
                    672: 142,210,       155,222,        155,222,        155,222,        
                    673: 155,222,       155,222,        155,222,        155,222,        
                    674: 155,222,       155,222,        155,222,        137,206,        
                    675: 180,229,       179,228,        184,233,        227,272,        
                    676: 139,209,       228,273,        150,217,        229,274,        
                    677: 147,214,       140,143,        151,218,        182,231,        
                    678: 182,232,       182,231,        182,231,        182,231,        
                    679: 182,231,       182,231,        182,231,        182,231,        
                    680: 182,231,       230,275,        232,277,        240,282,        
                    681: 241,198,       184,233,        152,219,        187,235,        
                    682: 187,235,       187,235,        187,235,        187,235,        
                    683: 187,235,       187,235,        187,235,        187,235,        
                    684: 187,235,       242,283,        190,238,        243,284,        
                    685: 244,285,       184,234,        184,234,        184,234,        
                    686: 184,234,       184,234,        184,234,        184,234,        
                    687: 184,234,       184,234,        184,234,        190,238,        
                    688: 185,188,       191,238,        190,239,        190,240,        
                    689: 190,239,       190,239,        190,239,        190,239,        
                    690: 190,239,       190,239,        190,239,        190,239,        
                    691: 245,286,       246,198,        191,238,        185,189,        
                    692: 193,238,       191,239,        191,240,        191,239,        
                    693: 191,239,       191,239,        191,239,        191,239,        
                    694: 191,239,       191,239,        191,239,        247,287,        
                    695: 248,288,       193,238,        194,238,        249,289,        
                    696: 193,239,       193,240,        193,239,        193,239,        
                    697: 193,239,       193,239,        193,239,        193,239,        
                    698: 193,239,       193,239,        251,143,        194,238,        
                    699: 195,238,       252,293,        194,239,        194,240,        
                    700: 194,239,       194,239,        194,239,        194,239,        
                    701: 194,239,       194,239,        194,239,        194,239,        
                    702: 253,294,       195,238,        197,238,        190,241,        
                    703: 195,239,       195,240,        195,239,        195,239,        
                    704: 195,239,       195,239,        195,239,        195,239,        
                    705: 195,239,       195,239,        191,242,        197,238,        
                    706: 198,238,       254,295,        197,239,        197,240,        
                    707: 197,239,       197,239,        197,239,        197,239,        
                    708: 197,239,       197,239,        197,239,        197,239,        
                    709: 207,207,       198,238,        233,233,        236,236,        
                    710: 198,239,       198,240,        198,239,        198,239,        
                    711: 198,239,       198,239,        198,239,        198,239,        
                    712: 198,239,       198,239,        193,244,        202,202,        
                    713: 237,237,       255,296,        257,297,        258,298,        
                    714: 259,299,       260,300,        262,301,        207,207,        
                    715: 263,302,       233,233,        236,236,        264,303,        
                    716: 269,304,       271,305,        273,306,        194,245,        
                    717: 274,307,       275,308,        281,310,        283,198,        
                    718: 284,311,       285,312,        202,202,        237,237,        
                    719: 286,313,       197,246,        287,314,        288,315,        
                    720: 289,316,       292,291,        293,318,        294,319,        
                    721: 295,207,       195,198,        296,143,        297,320,        
                    722: 298,143,       299,321,        202,250,        202,250,        
                    723: 202,250,       202,250,        202,250,        202,250,        
                    724: 202,250,       202,250,        202,250,        202,250,        
                    725: 220,265,       220,265,        220,265,        220,265,        
                    726: 220,265,       220,265,        220,265,        220,265,        
                    727: 220,265,       220,265,        221,266,        221,266,        
                    728: 221,266,       221,266,        221,266,        221,266,        
                    729: 221,266,       221,266,        221,266,        221,266,        
                    730: 222,267,       222,267,        222,267,        222,267,        
                    731: 222,267,       222,267,        222,267,        222,267,        
                    732: 222,267,       222,267,        231,276,        231,276,        
                    733: 231,276,       231,276,        231,276,        231,276,        
                    734: 231,276,       231,276,        231,276,        231,276,        
                    735: 234,278,       234,278,        234,278,        234,278,        
                    736: 234,278,       234,278,        234,278,        234,278,        
                    737: 234,278,       234,278,        235,279,        238,239,        
                    738: 238,240,       238,239,        238,239,        238,239,        
                    739: 238,239,       238,239,        238,239,        238,239,        
                    740: 238,239,       239,280,        276,276,        278,278,        
                    741: 300,322,       279,279,        301,323,        303,324,        
                    742: 304,223,       305,325,        306,326,        308,327,        
                    743: 311,330,       235,279,        312,331,        313,198,        
                    744: 250,290,       314,332,        315,198,        316,333,        
                    745: 322,336,       324,337,        327,338,        333,339,        
                    746: 239,280,       276,276,        278,278,        277,276,        
                    747: 279,279,       235,279,        235,279,        235,279,        
                    748: 235,279,       235,279,        235,279,        235,279,        
                    749: 235,279,       235,279,        235,279,        250,290,        
                    750: 239,280,       239,280,        239,280,        239,280,        
                    751: 239,280,       239,280,        239,280,        239,280,        
                    752: 239,280,       239,280,        277,276,        250,291,        
                    753: 335,341,       280,280,        282,280,        250,292,        
                    754: 250,292,       250,292,        250,292,        250,292,        
                    755: 250,292,       250,292,        250,292,        250,292,        
                    756: 250,292,       290,290,        277,309,        277,309,        
                    757: 277,309,       277,309,        277,309,        277,309,        
                    758: 277,309,       277,309,        277,309,        277,309,        
                    759: 280,280,       282,280,        291,317,        0,0,    
                    760: 0,0,   0,0,    0,0,    0,0,    
                    761: 0,0,   0,0,    0,0,    0,0,    
                    762: 290,290,       239,281,        310,329,        317,317,        
                    763: 328,328,       340,340,        282,239,        0,0,    
                    764: 0,0,   0,0,    0,0,    0,0,    
                    765: 0,0,   291,317,        309,328,        309,328,        
                    766: 309,328,       309,328,        309,328,        309,328,        
                    767: 309,328,       309,328,        309,328,        309,328,        
                    768: 0,0,   310,329,        317,317,        328,328,        
                    769: 340,340,       334,340,        0,0,    0,0,    
                    770: 0,0,   0,0,    0,0,    0,0,    
                    771: 0,0,   0,0,    341,340,        0,0,    
                    772: 0,0,   0,0,    317,334,        317,335,        
                    773: 317,334,       317,334,        317,334,        317,334,        
                    774: 317,334,       317,334,        317,334,        317,334,        
                    775: 334,340,       280,281,        282,281,        0,0,    
                    776: 0,0,   0,0,    0,0,    0,0,    
                    777: 0,0,   341,340,        0,0,    0,0,    
                    778: 0,0,   0,0,    0,0,    0,0,    
                    779: 334,340,       334,340,        334,340,        334,340,        
                    780: 334,340,       334,340,        334,340,        334,340,        
                    781: 334,340,       334,340,        341,334,        0,0,    
                    782: 0,0};
                    783: struct yysvf yysvec[] ={
                    784: 0,     0,      0,
                    785: yycrank+1,     0,              0,      
                    786: yycrank+0,     yysvec+1,       0,      
                    787: yycrank+27,    0,              0,      
                    788: yycrank+0,     yysvec+3,       0,      
                    789: yycrank+29,    0,              yyvstop+1,
                    790: yycrank+0,     0,              yyvstop+3,
                    791: yycrank+47,    0,              0,      
                    792: yycrank+120,   0,              0,      
                    793: yycrank+37,    yysvec+8,       0,      
                    794: yycrank+38,    0,              0,      
                    795: yycrank+50,    0,              0,      
                    796: yycrank+78,    0,              0,      
                    797: yycrank+63,    0,              0,      
                    798: yycrank+84,    0,              0,      
                    799: yycrank+42,    0,              0,      
                    800: yycrank+55,    0,              0,      
                    801: yycrank+85,    0,              0,      
                    802: yycrank+79,    0,              0,      
                    803: yycrank+56,    0,              0,      
                    804: yycrank+64,    0,              yyvstop+5,
                    805: yycrank+51,    0,              0,      
                    806: yycrank+139,   0,              0,      
                    807: yycrank+89,    0,              yyvstop+7,
                    808: yycrank+43,    0,              yyvstop+9,
                    809: yycrank+84,    0,              yyvstop+11,
                    810: yycrank+0,     yysvec+11,      yyvstop+13,
                    811: yycrank+85,    0,              yyvstop+15,
                    812: yycrank+0,     yysvec+12,      yyvstop+17,
                    813: yycrank+50,    0,              yyvstop+19,
                    814: yycrank+90,    0,              yyvstop+21,
                    815: yycrank+0,     0,              yyvstop+23,
                    816: yycrank+94,    0,              0,      
                    817: yycrank+0,     0,              yyvstop+25,
                    818: yycrank+110,   0,              yyvstop+27,
                    819: yycrank+82,    0,              yyvstop+29,
                    820: yycrank+0,     yysvec+16,      yyvstop+31,
                    821: yycrank+98,    0,              yyvstop+33,
                    822: yycrank+0,     0,              yyvstop+35,
                    823: yycrank+0,     yysvec+17,      yyvstop+37,
                    824: yycrank+0,     yysvec+18,      yyvstop+39,
                    825: yycrank+45,    0,              yyvstop+41,
                    826: yycrank+0,     yysvec+19,      yyvstop+43,
                    827: yycrank+103,   0,              yyvstop+45,
                    828: yycrank+50,    0,              0,      
                    829: yycrank+97,    0,              0,      
                    830: yycrank+115,   0,              0,      
                    831: yycrank+110,   0,              0,      
                    832: yycrank+114,   0,              0,      
                    833: yycrank+144,   0,              0,      
                    834: yycrank+213,   0,              0,      
                    835: yycrank+223,   yysvec+8,       0,      
                    836: yycrank+233,   0,              0,      
                    837: yycrank+107,   0,              0,      
                    838: yycrank+115,   0,              0,      
                    839: yycrank+122,   0,              0,      
                    840: yycrank+194,   0,              0,      
                    841: yycrank+131,   0,              0,      
                    842: yycrank+122,   0,              0,      
                    843: yycrank+135,   0,              0,      
                    844: yycrank+138,   0,              0,      
                    845: yycrank+260,   yysvec+49,      0,      
                    846: yycrank+133,   0,              0,      
                    847: yycrank+149,   0,              0,      
                    848: yycrank+158,   0,              0,      
                    849: yycrank+160,   0,              0,      
                    850: yycrank+188,   0,              0,      
                    851: yycrank+184,   0,              0,      
                    852: yycrank+187,   0,              0,      
                    853: yycrank+182,   0,              0,      
                    854: yycrank+188,   0,              0,      
                    855: yycrank+181,   0,              0,      
                    856: yycrank+184,   0,              0,      
                    857: yycrank+185,   0,              0,      
                    858: yycrank+190,   0,              0,      
                    859: yycrank+194,   0,              0,      
                    860: yycrank+189,   0,              0,      
                    861: yycrank+207,   0,              0,      
                    862: yycrank+209,   0,              0,      
                    863: yycrank+253,   0,              0,      
                    864: yycrank+271,   0,              0,      
                    865: yycrank+281,   0,              0,      
                    866: yycrank+239,   0,              0,      
                    867: yycrank+0,     yysvec+24,      0,      
                    868: yycrank+0,     yysvec+25,      0,      
                    869: yycrank+0,     yysvec+27,      0,      
                    870: yycrank+0,     yysvec+29,      0,      
                    871: yycrank+0,     yysvec+30,      0,      
                    872: yycrank+240,   0,              0,      
                    873: yycrank+241,   0,              0,      
                    874: yycrank+197,   0,              0,      
                    875: yycrank+0,     yysvec+37,      0,      
                    876: yycrank+0,     yysvec+41,      0,      
                    877: yycrank+0,     yysvec+43,      0,      
                    878: yycrank+197,   0,              0,      
                    879: yycrank+198,   0,              0,      
                    880: yycrank+199,   0,              0,      
                    881: yycrank+200,   0,              0,      
                    882: yycrank+201,   0,              0,      
                    883: yycrank+226,   0,              0,      
                    884: yycrank+227,   0,              0,      
                    885: yycrank+228,   0,              0,      
                    886: yycrank+229,   0,              0,      
                    887: yycrank+230,   0,              0,      
                    888: yycrank+231,   0,              0,      
                    889: yycrank+232,   0,              0,      
                    890: yycrank+233,   0,              0,      
                    891: yycrank+234,   0,              0,      
                    892: yycrank+235,   0,              0,      
                    893: yycrank+236,   0,              0,      
                    894: yycrank+237,   0,              0,      
                    895: yycrank+0,     0,              yyvstop+47,
                    896: yycrank+241,   0,              0,      
                    897: yycrank+242,   0,              0,      
                    898: yycrank+254,   0,              0,      
                    899: yycrank+250,   0,              0,      
                    900: yycrank+245,   0,              0,      
                    901: yycrank+252,   0,              0,      
                    902: yycrank+246,   0,              0,      
                    903: yycrank+263,   0,              0,      
                    904: yycrank+265,   0,              0,      
                    905: yycrank+319,   0,              0,      
                    906: yycrank+329,   0,              0,      
                    907: yycrank+378,   0,              yyvstop+49,
                    908: yycrank+274,   0,              0,      
                    909: yycrank+286,   0,              0,      
                    910: yycrank+291,   0,              0,      
                    911: yycrank+293,   0,              0,      
                    912: yycrank+282,   0,              0,      
                    913: yycrank+285,   0,              0,      
                    914: yycrank+280,   0,              0,      
                    915: yycrank+278,   0,              0,      
                    916: yycrank+281,   0,              0,      
                    917: yycrank+286,   0,              0,      
                    918: yycrank+390,   0,              0,      
                    919: yycrank+391,   0,              0,      
                    920: yycrank+301,   yysvec+135,     0,      
                    921: yycrank+405,   0,              0,      
                    922: yycrank+406,   0,              yyvstop+51,
                    923: yycrank+407,   0,              0,      
                    924: yycrank+408,   0,              0,      
                    925: yycrank+302,   yysvec+135,     0,      
                    926: yycrank+409,   0,              0,      
                    927: yycrank+410,   0,              0,      
                    928: yycrank+304,   yysvec+138,     yyvstop+53,
                    929: yycrank+304,   yysvec+135,     0,      
                    930: yycrank+295,   yysvec+143,     0,      
                    931: yycrank+411,   0,              yyvstop+55,
                    932: yycrank+291,   yysvec+143,     0,      
                    933: yycrank+308,   yysvec+138,     yyvstop+57,
                    934: yycrank+412,   0,              yyvstop+59,
                    935: yycrank+415,   0,              yyvstop+61,
                    936: yycrank+436,   0,              yyvstop+63,
                    937: yycrank+397,   0,              0,      
                    938: yycrank+448,   0,              0,      
                    939: yycrank+461,   0,              0,      
                    940: yycrank+0,     0,              yyvstop+65,
                    941: yycrank+0,     0,              yyvstop+67,
                    942: yycrank+0,     0,              yyvstop+69,
                    943: yycrank+0,     0,              yyvstop+71,
                    944: yycrank+0,     0,              yyvstop+73,
                    945: yycrank+0,     0,              yyvstop+75,
                    946: yycrank+0,     0,              yyvstop+77,
                    947: yycrank+0,     0,              yyvstop+79,
                    948: yycrank+0,     0,              yyvstop+81,
                    949: yycrank+0,     0,              yyvstop+83,
                    950: yycrank+0,     0,              yyvstop+85,
                    951: yycrank+0,     0,              yyvstop+87,
                    952: yycrank+0,     0,              yyvstop+89,
                    953: yycrank+0,     0,              yyvstop+91,
                    954: yycrank+0,     0,              yyvstop+93,
                    955: yycrank+0,     0,              yyvstop+95,
                    956: yycrank+0,     0,              yyvstop+97,
                    957: yycrank+0,     0,              yyvstop+99,
                    958: yycrank+0,     0,              yyvstop+101,
                    959: yycrank+370,   0,              0,      
                    960: yycrank+309,   yysvec+175,     0,      
                    961: yycrank+371,   0,              0,      
                    962: yycrank+313,   yysvec+175,     0,      
                    963: yycrank+407,   0,              0,      
                    964: yycrank+405,   0,              0,      
                    965: yycrank+384,   0,              0,      
                    966: yycrank+483,   0,              0,      
                    967: yycrank+402,   0,              0,      
                    968: yycrank+513,   0,              yyvstop+103,
                    969: yycrank+475,   0,              yyvstop+105,
                    970: yycrank+399,   yysvec+185,     yyvstop+107,
                    971: yycrank+499,   0,              0,      
                    972: yycrank+349,   0,              0,      
                    973: yycrank+351,   0,              0,      
                    974: yycrank+526,   0,              0,      
                    975: yycrank+541,   0,              0,      
                    976: yycrank+360,   yysvec+191,     0,      
                    977: yycrank+556,   0,              0,      
                    978: yycrank+570,   0,              0,      
                    979: yycrank+584,   0,              0,      
                    980: yycrank+361,   yysvec+191,     0,      
                    981: yycrank+598,   0,              0,      
                    982: yycrank+612,   0,              0,      
                    983: yycrank+362,   yysvec+191,     0,      
                    984: yycrank+353,   yysvec+198,     0,      
                    985: yycrank+349,   yysvec+198,     0,      
                    986: yycrank+662,   0,              0,      
                    987: yycrank+358,   0,              0,      
                    988: yycrank+352,   0,              0,      
                    989: yycrank+360,   0,              0,      
                    990: yycrank+354,   0,              0,      
                    991: yycrank+647,   0,              yyvstop+109,
                    992: yycrank+375,   0,              0,      
                    993: yycrank+376,   0,              0,      
                    994: yycrank+370,   0,              0,      
                    995: yycrank+379,   0,              0,      
                    996: yycrank+368,   0,              0,      
                    997: yycrank+380,   0,              0,      
                    998: yycrank+365,   0,              0,      
                    999: yycrank+380,   0,              0,      
                   1000: yycrank+385,   0,              0,      
                   1001: yycrank+368,   0,              0,      
                   1002: yycrank+385,   0,              0,      
                   1003: yycrank+385,   0,              0,      
                   1004: yycrank+672,   0,              0,      
                   1005: yycrank+682,   0,              0,      
                   1006: yycrank+692,   0,              0,      
                   1007: yycrank+443,   0,              yyvstop+111,
                   1008: yycrank+392,   0,              0,      
                   1009: yycrank+394,   0,              0,      
                   1010: yycrank+379,   0,              0,      
                   1011: yycrank+426,   0,              0,      
                   1012: yycrank+410,   0,              0,      
                   1013: yycrank+427,   0,              0,      
                   1014: yycrank+440,   0,              0,      
                   1015: yycrank+702,   0,              0,      
                   1016: yycrank+485,   yysvec+231,     0,      
                   1017: yycrank+649,   0,              yyvstop+113,
                   1018: yycrank+712,   0,              0,      
                   1019: yycrank+761,   0,              yyvstop+115,
                   1020: yycrank+650,   0,              yyvstop+117,
                   1021: yycrank+663,   0,              yyvstop+119,
                   1022: yycrank+723,   0,              0,      
                   1023: yycrank+772,   0,              yyvstop+121,
                   1024: yycrank+486,   yysvec+239,     yyvstop+123,
                   1025: yycrank+436,   0,              0,      
                   1026: yycrank+442,   0,              0,      
                   1027: yycrank+450,   0,              0,      
                   1028: yycrank+443,   0,              0,      
                   1029: yycrank+487,   0,              0,      
                   1030: yycrank+481,   0,              0,      
                   1031: yycrank+490,   0,              0,      
                   1032: yycrank+502,   0,              0,      
                   1033: yycrank+502,   0,              0,      
                   1034: yycrank+787,   0,              yyvstop+125,
                   1035: yycrank+498,   0,              0,      
                   1036: yycrank+519,   0,              0,      
                   1037: yycrank+531,   0,              0,      
                   1038: yycrank+524,   0,              0,      
                   1039: yycrank+559,   0,              0,      
                   1040: yycrank+0,     yysvec+254,     0,      
                   1041: yycrank+576,   0,              0,      
                   1042: yycrank+574,   0,              0,      
                   1043: yycrank+576,   0,              0,      
                   1044: yycrank+568,   0,              0,      
                   1045: yycrank+0,     yysvec+254,     0,      
                   1046: yycrank+578,   0,              0,      
                   1047: yycrank+583,   0,              0,      
                   1048: yycrank+568,   0,              0,      
                   1049: yycrank+0,     0,              yyvstop+127,
                   1050: yycrank+0,     0,              yyvstop+129,
                   1051: yycrank+0,     0,              yyvstop+131,
                   1052: yycrank+0,     0,              yyvstop+133,
                   1053: yycrank+563,   0,              0,      
                   1054: yycrank+0,     yysvec+269,     0,      
                   1055: yycrank+585,   0,              0,      
                   1056: yycrank+0,     yysvec+269,     0,      
                   1057: yycrank+586,   0,              0,      
                   1058: yycrank+591,   0,              0,      
                   1059: yycrank+574,   0,              0,      
                   1060: yycrank+773,   0,              yyvstop+135,
                   1061: yycrank+798,   0,              yyvstop+137,
                   1062: yycrank+774,   0,              yyvstop+139,
                   1063: yycrank+776,   0,              yyvstop+141,
                   1064: yycrank+824,   0,              yyvstop+143,
                   1065: yycrank+574,   0,              0,      
                   1066: yycrank+825,   yysvec+238,     yyvstop+145,
                   1067: yycrank+575,   0,              0,      
                   1068: yycrank+594,   0,              0,      
                   1069: yycrank+596,   0,              0,      
                   1070: yycrank+582,   0,              0,      
                   1071: yycrank+600,   0,              0,      
                   1072: yycrank+598,   0,              0,      
                   1073: yycrank+591,   0,              0,      
                   1074: yycrank+836,   0,              yyvstop+147,
                   1075: yycrank+849,   0,              0,      
                   1076: yycrank+657,   yysvec+290,     yyvstop+149,
                   1077: yycrank+601,   0,              0,      
                   1078: yycrank+589,   0,              0,      
                   1079: yycrank+660,   yysvec+207,     yyvstop+151,
                   1080: yycrank+585,   0,              0,      
                   1081: yycrank+606,   0,              0,      
                   1082: yycrank+594,   0,              0,      
                   1083: yycrank+612,   0,              0,      
                   1084: yycrank+686,   0,              0,      
                   1085: yycrank+689,   0,              0,      
                   1086: yycrank+0,     yysvec+254,     0,      
                   1087: yycrank+687,   0,              0,      
                   1088: yycrank+747,   0,              0,      
                   1089: yycrank+692,   0,              0,      
                   1090: yycrank+693,   0,              0,      
                   1091: yycrank+0,     yysvec+269,     0,      
                   1092: yycrank+691,   0,              0,      
                   1093: yycrank+834,   0,              0,      
                   1094: yycrank+861,   0,              0,      
                   1095: yycrank+691,   0,              0,      
                   1096: yycrank+680,   0,              0,      
                   1097: yycrank+674,   0,              0,      
                   1098: yycrank+696,   0,              0,      
                   1099: yycrank+684,   0,              0,      
                   1100: yycrank+701,   0,              0,      
                   1101: yycrank+862,   0,              0,      
                   1102: yycrank+0,     yysvec+298,     0,      
                   1103: yycrank+0,     yysvec+296,     0,      
                   1104: yycrank+0,     yysvec+298,     0,      
                   1105: yycrank+0,     yysvec+254,     0,      
                   1106: yycrank+699,   0,              0,      
                   1107: yycrank+0,     yysvec+254,     0,      
                   1108: yycrank+704,   0,              0,      
                   1109: yycrank+0,     yysvec+269,     0,      
                   1110: yycrank+0,     yysvec+269,     0,      
                   1111: yycrank+705,   0,              0,      
                   1112: yycrank+863,   0,              yyvstop+153,
                   1113: yycrank+0,     yysvec+310,     yyvstop+155,
                   1114: yycrank+0,     yysvec+315,     0,      
                   1115: yycrank+0,     yysvec+313,     0,      
                   1116: yycrank+0,     yysvec+315,     0,      
                   1117: yycrank+702,   0,              0,      
                   1118: yycrank+888,   0,              yyvstop+157,
                   1119: yycrank+775,   yysvec+334,     yyvstop+159,
                   1120: yycrank+0,     yysvec+298,     0,      
                   1121: yycrank+0,     yysvec+254,     0,      
                   1122: yycrank+0,     yysvec+269,     0,      
                   1123: yycrank+0,     yysvec+315,     0,      
                   1124: yycrank+864,   0,              yyvstop+161,
                   1125: yycrank+897,   yysvec+317,     yyvstop+163,
                   1126: 0,     0,      0};
                   1127: struct yywork *yytop = yycrank+946;
                   1128: struct yysvf *yybgin = yysvec+1;
                   1129: char yymatch[] ={
                   1130: 00  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1131: 01  ,011 ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1132: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1133: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1134: 040 ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1135: 01  ,01  ,01  ,01  ,01  ,'-' ,01  ,01  ,
                   1136: '0' ,'0' ,'2' ,'3' ,'3' ,'3' ,'6' ,'6' ,
                   1137: '6' ,'6' ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1138: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1139: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1140: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1141: 01  ,01  ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1142: 01  ,'a' ,'a' ,'a' ,'a' ,'a' ,'a' ,'a' ,
                   1143: 'a' ,'a' ,01  ,'k' ,'k' ,'k' ,'n' ,'n' ,
                   1144: 'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,'n' ,
                   1145: 'n' ,'n' ,01  ,01  ,01  ,01  ,01  ,01  ,
                   1146: 0};
                   1147: char yyextra[] ={
                   1148: 0,0,0,0,0,0,0,0,
                   1149: 0,0,0,0,0,0,0,0,
                   1150: 0,0,0,0,0,0,0,0,
                   1151: 0,0,0,0,0,0,0,0,
                   1152: 0,0,0,0,0,0,0,0,
                   1153: 0,0,0,0,0,0,0,0,
                   1154: 0};
                   1155: /*     ncform  4.1     83/08/11        */
                   1156: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.