|
|
1.1 ! root 1: # include "stdio.h" ! 2: # define U(x) x ! 3: # define NLSTATE yyprevious=YYNEWLINE ! 4: # define BEGIN yybgin = yysvec + 1 + ! 5: # define INITIAL 0 ! 6: # define YYLERR yysvec ! 7: # define YYSTATE (yyestate-yysvec-1) ! 8: # define YYOPTIM 1 ! 9: # define YYLMAX 200 ! 10: # define output(c) putc(c,yyout) ! 11: # define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar) ! 12: # define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;} ! 13: # define yymore() (yymorfg=1) ! 14: # define ECHO fprintf(yyout, "%s",yytext) ! 15: # define REJECT { nstr = yyreject(); goto yyfussy;} ! 16: int yyleng; extern char yytext[]; ! 17: int yymorfg; ! 18: extern char *yysptr, yysbuf[]; ! 19: int yytchar; ! 20: FILE *yyin ={stdin}, *yyout ={stdout}; ! 21: extern int yylineno; ! 22: struct yysvf { ! 23: struct yywork *yystoff; ! 24: struct yysvf *yyother; ! 25: int *yystops;}; ! 26: struct yysvf *yyestate; ! 27: extern struct yysvf yysvec[], *yybgin; ! 28: #ifndef lint ! 29: static char sccsid[] = "@(#)end.l 4.2 (Berkeley) 82/11/06"; ! 30: #endif not lint ! 31: ! 32: #include <stdio.h> ! 33: #include <ctype.h> ! 34: #include "names.h" ! 35: #include "ehash.c" ! 36: #include "edict.c" ! 37: #define OUT1(c) putchar(c); putchar(':'); for(i=yyleng-1;i>=0;)putchar(yytext[i--]) ! 38: #define POUT1(c) putchar(c); putchar(':'); for(i=yyleng-1;i>0;)putchar(yytext[i--]) ! 39: int i; ! 40: int nomin = 0; ! 41: int NOCAPS = 0; /*if set, all caps mapped to lower, plurals stripped*/ ! 42: # define YYNEWLINE 10 ! 43: yylex(){ ! 44: int nstr; extern int yyprevious; ! 45: while((nstr = yylook()) >= 0) ! 46: yyfussy: switch(nstr){ ! 47: case 0: ! 48: if(yywrap()) return(0); break; ! 49: case 1: ! 50: { ! 51: ECHO; ! 52: } ! 53: break; ! 54: case 2: ! 55: { ! 56: look(ic,2,ADJ); ! 57: } ! 58: break; ! 59: case 3: ! 60: { ! 61: look(ed,2,ED); ! 62: } ! 63: break; ! 64: case 4: ! 65: { ! 66: if(yytext[5] == 'E'){ ! 67: OUT1(NOUN_ADJ); ! 68: } ! 69: OUT1(ADJ_ADV); ! 70: } ! 71: break; ! 72: case 5: ! 73: { ! 74: look(ace,3,NOUN_VERB); ! 75: } ! 76: break; ! 77: case 6: ! 78: { ! 79: look(ice,3,NOUN_VERB); ! 80: } ! 81: break; ! 82: case 7: ! 83: { ! 84: if(look(ence,4,NOM))nomin++; ! 85: } ! 86: break; ! 87: case 8: ! 88: { ! 89: if(look(ance,4,NOM))nomin++; ! 90: } ! 91: break; ! 92: case 9: ! 93: { ! 94: look(ee,2,NOUN); ! 95: } ! 96: break; ! 97: case 10: ! 98: { ! 99: look(age,3,NOUN); ! 100: } ! 101: break; ! 102: case 11: ! 103: { ! 104: look(able,4,ADJ); ! 105: } ! 106: break; ! 107: case 12: ! 108: { ! 109: look(ible,4,ADJ); ! 110: } ! 111: break; ! 112: case 13: ! 113: { ! 114: look(cle,3,NOUN); ! 115: } ! 116: break; ! 117: case 14: ! 118: { ! 119: look(ure,3,NOUN); ! 120: } ! 121: break; ! 122: case 15: ! 123: { ! 124: look(ite,3,NOUN); ! 125: } ! 126: break; ! 127: case 16: ! 128: { ! 129: look(ive,3,ADJ); ! 130: } ! 131: break; ! 132: case 17: ! 133: { ! 134: look(ize,3,VERB); ! 135: } ! 136: break; ! 137: case 18: ! 138: { ! 139: look(ing,3,ING); ! 140: } ! 141: break; ! 142: case 19: ! 143: { ! 144: look(ish,3,ADJ); ! 145: } ! 146: break; ! 147: case 20: ! 148: { ! 149: look(cal,3,ADJ); ! 150: } ! 151: break; ! 152: case 21: ! 153: { ! 154: look(ional,5,ADJ); ! 155: } ! 156: break; ! 157: case 22: ! 158: { ! 159: look(ful,3,ADJ); ! 160: } ! 161: break; ! 162: case 23: ! 163: { ! 164: OUT1(NOUN); ! 165: } ! 166: break; ! 167: case 24: ! 168: { ! 169: look(man,3,NOUN); ! 170: } ! 171: break; ! 172: case 25: ! 173: { ! 174: OUT1(NV_PL); ! 175: } ! 176: break; ! 177: case 26: ! 178: { ! 179: if(look(ion,3,NOM))nomin++; ! 180: } ! 181: break; ! 182: case 27: ! 183: { ! 184: look(ship,4,NOUN); ! 185: } ! 186: break; ! 187: case 28: ! 188: { ! 189: look(lar,3,ADJ); ! 190: } ! 191: break; ! 192: case 29: ! 193: { ! 194: OUT1(NOUN_VERB); ! 195: } ! 196: break; ! 197: case 30: ! 198: { ! 199: OUT1(NOUN); ! 200: } ! 201: break; ! 202: case 31: ! 203: { ! 204: look(is,2,NOUN); ! 205: } ! 206: break; ! 207: case 32: ! 208: { ! 209: look(less,4,ADJ); ! 210: } ! 211: break; ! 212: case 33: ! 213: { ! 214: look(ness,4,NOUN); ! 215: } ! 216: break; ! 217: case 34: ! 218: { ! 219: look(ess,3,NOUN); ! 220: } ! 221: break; ! 222: case 35: ! 223: { ! 224: look(ss,2,NOUN); ! 225: } ! 226: break; ! 227: case 36: ! 228: { ! 229: look(ous,3,ADJ); ! 230: } ! 231: break; ! 232: case 37: ! 233: { ! 234: look(us,2,NOUN); ! 235: } ! 236: break; ! 237: case 38: ! 238: { ! 239: if(look(ion,4,PNOUN))nomin++; ! 240: } ! 241: break; ! 242: case 39: ! 243: { ! 244: if(look(ment,5,PNOUN))nomin++; ! 245: } ! 246: break; ! 247: case 40: ! 248: { ! 249: if(look(ence,5,PNOUN))nomin++; ! 250: } ! 251: break; ! 252: case 41: ! 253: { ! 254: if(look(ance,5,PNOUN))nomin++; ! 255: } ! 256: break; ! 257: case 42: ! 258: { ! 259: if(isupper(yytext[yyleng-1])){ ! 260: if(NOCAPS){ ! 261: yytext[yyleng-1] = tolower(yytext[yyleng-1]); ! 262: POUT1(PNOUN); ! 263: } ! 264: else { OUT1(PNOUN); } ! 265: } ! 266: else { ! 267: if(NOCAPS){POUT1(NV_PL);} ! 268: else{ OUT1(NV_PL); } ! 269: } ! 270: } ! 271: break; ! 272: case 43: ! 273: { ! 274: look(ant,3,NOUN_ADJ); ! 275: } ! 276: break; ! 277: case 44: ! 278: { ! 279: if(look(ment,4,NOM))nomin++; ! 280: } ! 281: break; ! 282: case 45: ! 283: { ! 284: look(est,3,ADJ); ! 285: } ! 286: break; ! 287: case 46: ! 288: { ! 289: look(ist,3,NOUN); ! 290: } ! 291: break; ! 292: case 47: ! 293: { ! 294: putchar(yytext[0]); ! 295: } ! 296: break; ! 297: case 48: ! 298: { ! 299: if(isupper(yytext[yyleng-1])){ ! 300: if(NOCAPS) ! 301: yytext[yyleng-1] = tolower(yytext[yyleng-1]); ! 302: if((yytext[0] == 'n' || yytext[0] == 'l') && yytext[1] == 'a'){ ! 303: OUT1(NOUN_ADJ); ! 304: } ! 305: else { ! 306: OUT1(NOUN); ! 307: } ! 308: } ! 309: else { ! 310: OUT1(UNK); ! 311: } ! 312: } ! 313: break; ! 314: case 49: ! 315: { ! 316: egetd(); ! 317: } ! 318: break; ! 319: case 50: ! 320: { ! 321: printf("%s",yytext); ! 322: } ! 323: break; ! 324: case -1: ! 325: break; ! 326: default: ! 327: fprintf(yyout,"bad switch yylook %d",nstr); ! 328: } return(0); } ! 329: /* end of yylex */ ! 330: look(f,n,nc) ! 331: char (*f)(); ! 332: int n; ! 333: char nc; ! 334: { ! 335: int in,nn,ret; ! 336: char sch; ! 337: in=0; ! 338: sch=yytext[yyleng-1]; ! 339: if(isupper(sch)){ ! 340: yytext[yyleng-1] = tolower(sch); ! 341: in=1; ! 342: } ! 343: if((*f)(&yytext[n],1,0) != 0){ ! 344: nn = (*f)(&yytext[n],1,0); ! 345: if(nc == PNOUN) ! 346: if(nn == NOUN_VERB){ ! 347: if(in == 1)nn=PNOUN; ! 348: else nn=NV_PL; ! 349: } ! 350: ret = 0; ! 351: } ! 352: else { ! 353: nn = nc; ! 354: ret = 1; ! 355: } ! 356: if(in==1){ ! 357: if(nn == NOUN_VERB)nn=NOUN; ! 358: if(!NOCAPS)yytext[yyleng-1]=sch; ! 359: } ! 360: if(nn==PNOUN && yytext[0] == 's' && NOCAPS){ ! 361: POUT1(nn); ! 362: } ! 363: else { ! 364: OUT1(nn); ! 365: } ! 366: return(ret); ! 367: } ! 368: yywrap(){ ! 369: printf(";%d\n",nomin); ! 370: return(1); ! 371: } ! 372: int yyvstop[] ={ ! 373: 0, ! 374: ! 375: 47, ! 376: 0, ! 377: ! 378: 48, ! 379: 0, ! 380: ! 381: 47, ! 382: 0, ! 383: ! 384: 48, ! 385: 0, ! 386: ! 387: 48, ! 388: 0, ! 389: ! 390: 48, ! 391: 0, ! 392: ! 393: 48, ! 394: 0, ! 395: ! 396: 48, ! 397: 0, ! 398: ! 399: 48, ! 400: 0, ! 401: ! 402: 48, ! 403: 0, ! 404: ! 405: 48, ! 406: 0, ! 407: ! 408: 48, ! 409: 0, ! 410: ! 411: 48, ! 412: 0, ! 413: ! 414: 48, ! 415: 0, ! 416: ! 417: 48, ! 418: 0, ! 419: ! 420: 48, ! 421: 0, ! 422: ! 423: 49, ! 424: 0, ! 425: ! 426: 48, ! 427: 0, ! 428: ! 429: 48, ! 430: 0, ! 431: ! 432: 48, ! 433: 0, ! 434: ! 435: 48, ! 436: 0, ! 437: ! 438: 48, ! 439: 0, ! 440: ! 441: 48, ! 442: 0, ! 443: ! 444: 48, ! 445: 0, ! 446: ! 447: 48, ! 448: 0, ! 449: ! 450: 48, ! 451: 0, ! 452: ! 453: 48, ! 454: 0, ! 455: ! 456: 48, ! 457: 0, ! 458: ! 459: 48, ! 460: 0, ! 461: ! 462: 48, ! 463: 0, ! 464: ! 465: 48, ! 466: 0, ! 467: ! 468: 48, ! 469: 0, ! 470: ! 471: 48, ! 472: 0, ! 473: ! 474: 48, ! 475: 0, ! 476: ! 477: 48, ! 478: 0, ! 479: ! 480: 48, ! 481: 0, ! 482: ! 483: 48, ! 484: 0, ! 485: ! 486: 48, ! 487: 0, ! 488: ! 489: 48, ! 490: 0, ! 491: ! 492: 42, ! 493: 0, ! 494: ! 495: 42, ! 496: 48, ! 497: 0, ! 498: ! 499: 42, ! 500: 0, ! 501: ! 502: 42, ! 503: 48, ! 504: 0, ! 505: ! 506: 42, ! 507: 48, ! 508: 0, ! 509: ! 510: 42, ! 511: 48, ! 512: 0, ! 513: ! 514: 42, ! 515: 48, ! 516: 0, ! 517: ! 518: 42, ! 519: 48, ! 520: 0, ! 521: ! 522: 42, ! 523: 48, ! 524: 0, ! 525: ! 526: 48, ! 527: 0, ! 528: ! 529: 48, ! 530: 0, ! 531: ! 532: 1, ! 533: 0, ! 534: ! 535: 50, ! 536: 0, ! 537: ! 538: 2, ! 539: 0, ! 540: ! 541: 2, ! 542: 48, ! 543: 0, ! 544: ! 545: 3, ! 546: 0, ! 547: ! 548: 3, ! 549: 48, ! 550: 0, ! 551: ! 552: 48, ! 553: 0, ! 554: ! 555: 48, ! 556: 0, ! 557: ! 558: 48, ! 559: 0, ! 560: ! 561: 48, ! 562: 0, ! 563: ! 564: 9, ! 565: 0, ! 566: ! 567: 9, ! 568: 48, ! 569: 0, ! 570: ! 571: 48, ! 572: 0, ! 573: ! 574: 48, ! 575: 0, ! 576: ! 577: 48, ! 578: 0, ! 579: ! 580: 48, ! 581: 0, ! 582: ! 583: 48, ! 584: 0, ! 585: ! 586: 48, ! 587: 0, ! 588: ! 589: 48, ! 590: 0, ! 591: ! 592: 48, ! 593: 0, ! 594: ! 595: 48, ! 596: 0, ! 597: ! 598: 48, ! 599: 0, ! 600: ! 601: 48, ! 602: 0, ! 603: ! 604: 48, ! 605: 0, ! 606: ! 607: 48, ! 608: 0, ! 609: ! 610: 24, ! 611: 48, ! 612: 0, ! 613: ! 614: 25, ! 615: 48, ! 616: 0, ! 617: ! 618: 48, ! 619: 0, ! 620: ! 621: 48, ! 622: 0, ! 623: ! 624: 48, ! 625: 0, ! 626: ! 627: 30, ! 628: 0, ! 629: ! 630: 30, ! 631: 48, ! 632: 0, ! 633: ! 634: 30, ! 635: 48, ! 636: 0, ! 637: ! 638: 1, ! 639: 42, ! 640: 0, ! 641: ! 642: 42, ! 643: 48, ! 644: 0, ! 645: ! 646: 31, ! 647: 42, ! 648: 0, ! 649: ! 650: 31, ! 651: 42, ! 652: 48, ! 653: 0, ! 654: ! 655: 42, ! 656: 48, ! 657: 0, ! 658: ! 659: 35, ! 660: 42, ! 661: 0, ! 662: ! 663: 35, ! 664: 42, ! 665: 48, ! 666: 0, ! 667: ! 668: 35, ! 669: 42, ! 670: 48, ! 671: 0, ! 672: ! 673: 42, ! 674: 48, ! 675: 0, ! 676: ! 677: 37, ! 678: 42, ! 679: 0, ! 680: ! 681: 37, ! 682: 42, ! 683: 48, ! 684: 0, ! 685: ! 686: 37, ! 687: 42, ! 688: 48, ! 689: 0, ! 690: ! 691: 48, ! 692: 0, ! 693: ! 694: 48, ! 695: 0, ! 696: ! 697: 48, ! 698: 0, ! 699: ! 700: 48, ! 701: 0, ! 702: ! 703: 48, ! 704: 0, ! 705: ! 706: 5, ! 707: 0, ! 708: ! 709: 5, ! 710: 48, ! 711: 0, ! 712: ! 713: 6, ! 714: 0, ! 715: ! 716: 6, ! 717: 48, ! 718: 0, ! 719: ! 720: 48, ! 721: 0, ! 722: ! 723: 48, ! 724: 0, ! 725: ! 726: 10, ! 727: 0, ! 728: ! 729: 10, ! 730: 48, ! 731: 0, ! 732: ! 733: 48, ! 734: 0, ! 735: ! 736: 48, ! 737: 0, ! 738: ! 739: 13, ! 740: 0, ! 741: ! 742: 13, ! 743: 48, ! 744: 0, ! 745: ! 746: 14, ! 747: 0, ! 748: ! 749: 14, ! 750: 48, ! 751: 0, ! 752: ! 753: 15, ! 754: 0, ! 755: ! 756: 15, ! 757: 48, ! 758: 0, ! 759: ! 760: 16, ! 761: 0, ! 762: ! 763: 16, ! 764: 48, ! 765: 0, ! 766: ! 767: 17, ! 768: 0, ! 769: ! 770: 17, ! 771: 48, ! 772: 0, ! 773: ! 774: 18, ! 775: 0, ! 776: ! 777: 18, ! 778: 48, ! 779: 0, ! 780: ! 781: 19, ! 782: 0, ! 783: ! 784: 19, ! 785: 48, ! 786: 0, ! 787: ! 788: 20, ! 789: 0, ! 790: ! 791: 20, ! 792: 48, ! 793: 0, ! 794: ! 795: 48, ! 796: 0, ! 797: ! 798: 22, ! 799: 0, ! 800: ! 801: 22, ! 802: 48, ! 803: 0, ! 804: ! 805: 23, ! 806: 0, ! 807: ! 808: 23, ! 809: 48, ! 810: 0, ! 811: ! 812: 24, ! 813: 0, ! 814: ! 815: 25, ! 816: 0, ! 817: ! 818: 26, ! 819: 0, ! 820: ! 821: 26, ! 822: 48, ! 823: 0, ! 824: ! 825: 48, ! 826: 0, ! 827: ! 828: 28, ! 829: 0, ! 830: ! 831: 28, ! 832: 48, ! 833: 0, ! 834: ! 835: 30, ! 836: 48, ! 837: 0, ! 838: ! 839: 42, ! 840: 48, ! 841: 0, ! 842: ! 843: 42, ! 844: 48, ! 845: 0, ! 846: ! 847: 34, ! 848: 35, ! 849: 42, ! 850: 0, ! 851: ! 852: 34, ! 853: 35, ! 854: 42, ! 855: 48, ! 856: 0, ! 857: ! 858: 34, ! 859: 35, ! 860: 42, ! 861: 48, ! 862: 0, ! 863: ! 864: 34, ! 865: 35, ! 866: 42, ! 867: 48, ! 868: 0, ! 869: ! 870: 42, ! 871: 48, ! 872: 0, ! 873: ! 874: 36, ! 875: 37, ! 876: 42, ! 877: 0, ! 878: ! 879: 36, ! 880: 37, ! 881: 42, ! 882: 48, ! 883: 0, ! 884: ! 885: 43, ! 886: 0, ! 887: ! 888: 43, ! 889: 48, ! 890: 0, ! 891: ! 892: 48, ! 893: 0, ! 894: ! 895: 45, ! 896: 0, ! 897: ! 898: 45, ! 899: 48, ! 900: 0, ! 901: ! 902: 46, ! 903: 0, ! 904: ! 905: 46, ! 906: 48, ! 907: 0, ! 908: ! 909: 4, ! 910: 0, ! 911: ! 912: 4, ! 913: 48, ! 914: 0, ! 915: ! 916: 8, ! 917: 0, ! 918: ! 919: 8, ! 920: 48, ! 921: 0, ! 922: ! 923: 7, ! 924: 0, ! 925: ! 926: 7, ! 927: 48, ! 928: 0, ! 929: ! 930: 11, ! 931: 0, ! 932: ! 933: 11, ! 934: 48, ! 935: 0, ! 936: ! 937: 12, ! 938: 0, ! 939: ! 940: 12, ! 941: 48, ! 942: 0, ! 943: ! 944: 48, ! 945: 0, ! 946: ! 947: 27, ! 948: 0, ! 949: ! 950: 27, ! 951: 48, ! 952: 0, ! 953: ! 954: 29, ! 955: 30, ! 956: 48, ! 957: 0, ! 958: ! 959: 42, ! 960: 48, ! 961: 0, ! 962: ! 963: 42, ! 964: 48, ! 965: 0, ! 966: ! 967: 38, ! 968: 42, ! 969: 0, ! 970: ! 971: 38, ! 972: 42, ! 973: 48, ! 974: 0, ! 975: ! 976: 32, ! 977: 34, ! 978: 35, ! 979: 42, ! 980: 0, ! 981: ! 982: 32, ! 983: 34, ! 984: 35, ! 985: 42, ! 986: 48, ! 987: 0, ! 988: ! 989: 33, ! 990: 34, ! 991: 35, ! 992: 42, ! 993: 0, ! 994: ! 995: 33, ! 996: 34, ! 997: 35, ! 998: 42, ! 999: 48, ! 1000: 0, ! 1001: ! 1002: 42, ! 1003: 48, ! 1004: 0, ! 1005: ! 1006: 44, ! 1007: 0, ! 1008: ! 1009: 44, ! 1010: 48, ! 1011: 0, ! 1012: ! 1013: 21, ! 1014: 0, ! 1015: ! 1016: 21, ! 1017: 48, ! 1018: 0, ! 1019: ! 1020: 41, ! 1021: 42, ! 1022: 0, ! 1023: ! 1024: 41, ! 1025: 42, ! 1026: 48, ! 1027: 0, ! 1028: ! 1029: 40, ! 1030: 42, ! 1031: 0, ! 1032: ! 1033: 40, ! 1034: 42, ! 1035: 48, ! 1036: 0, ! 1037: ! 1038: 39, ! 1039: 42, ! 1040: 0, ! 1041: ! 1042: 39, ! 1043: 42, ! 1044: 48, ! 1045: 0, ! 1046: 0}; ! 1047: # define YYTYPE int ! 1048: struct yywork { YYTYPE verify, advance; } yycrank[] ={ ! 1049: 0,0, 0,0, 0,0, 0,0, ! 1050: 0,0, 0,0, 0,0, 0,0, ! 1051: 0,0, 0,0, 0,0, 1,3, ! 1052: 22,58, 0,0, 0,0, 0,0, ! 1053: 0,0, 0,0, 0,0, 0,0, ! 1054: 0,0, 0,0, 0,0, 0,0, ! 1055: 0,0, 0,0, 0,0, 0,0, ! 1056: 0,0, 0,0, 0,0, 0,0, ! 1057: 0,0, 0,0, 0,0, 0,0, ! 1058: 0,0, 0,0, 0,0, 0,0, ! 1059: 0,0, 0,0, 0,0, 0,0, ! 1060: 0,0, 1,3, 1,4, 0,0, ! 1061: 0,0, 0,0, 0,0, 0,0, ! 1062: 0,0, 0,0, 0,0, 0,0, ! 1063: 0,0, 0,0, 57,0, 5,21, ! 1064: 8,21, 60,0, 62,0, 68,0, ! 1065: 0,0, 0,0, 1,4, 1,4, ! 1066: 1,4, 1,4, 1,4, 1,4, ! 1067: 1,4, 1,4, 1,4, 1,4, ! 1068: 1,4, 1,4, 1,4, 1,4, ! 1069: 1,4, 1,4, 1,4, 1,4, ! 1070: 1,4, 1,4, 1,4, 1,4, ! 1071: 1,4, 1,4, 1,4, 1,4, ! 1072: 9,21, 10,21, 12,21, 13,21, ! 1073: 17,21, 11,21, 1,4, 1,4, ! 1074: 1,4, 1,4, 1,4, 1,4, ! 1075: 1,4, 1,4, 1,4, 1,4, ! 1076: 1,4, 1,4, 1,4, 1,4, ! 1077: 1,4, 1,4, 1,4, 1,4, ! 1078: 1,4, 1,4, 1,4, 1,4, ! 1079: 1,4, 1,4, 1,4, 1,4, ! 1080: 2,3, 26,63, 29,69, 30,70, ! 1081: 30,71, 31,72, 32,73, 33,74, ! 1082: 34,75, 35,76, 36,77, 38,80, ! 1083: 10,25, 39,81, 11,27, 9,24, ! 1084: 11,28, 40,82, 11,29, 17,43, ! 1085: 41,83, 37,78, 12,35, 11,30, ! 1086: 2,5, 10,26, 15,21, 42,84, ! 1087: 13,36, 11,31, 43,85, 11,32, ! 1088: 37,79, 11,33, 2,6, 2,4, ! 1089: 44,86, 11,34, 2,5, 2,5, ! 1090: 2,5, 2,5, 2,5, 2,5, ! 1091: 2,5, 2,5, 2,5, 2,5, ! 1092: 2,7, 2,5, 55,102, 63,106, ! 1093: 79,133, 85,142, 55,103, 2,8, ! 1094: 2,8, 2,8, 2,8, 2,8, ! 1095: 2,8, 2,8, 2,8, 2,8, ! 1096: 2,8, 2,8, 2,8, 2,8, ! 1097: 2,8, 2,8, 2,8, 2,8, ! 1098: 2,8, 2,8, 2,8, 2,8, ! 1099: 2,8, 2,8, 2,8, 2,8, ! 1100: 2,8, 56,104, 66,111, 15,39, ! 1101: 90,0, 56,105, 66,112, 2,8, ! 1102: 2,8, 2,9, 2,10, 2,11, ! 1103: 2,8, 2,12, 2,13, 2,8, ! 1104: 2,8, 2,8, 2,14, 2,15, ! 1105: 2,16, 2,8, 2,17, 2,8, ! 1106: 2,18, 2,19, 2,20, 2,8, ! 1107: 2,8, 2,8, 2,8, 2,8, ! 1108: 2,8, 4,4, 27,64, 70,115, ! 1109: 93,0, 103,157, 108,0, 110,0, ! 1110: 114,0, 118,0, 27,65, 70,116, ! 1111: 120,0, 122,0, 124,0, 27,66, ! 1112: 126,0, 128,0, 130,0, 132,0, ! 1113: 133,172, 4,4, 4,4, 4,4, ! 1114: 4,4, 4,4, 4,4, 4,4, ! 1115: 4,4, 4,4, 4,4, 4,4, ! 1116: 4,4, 4,4, 4,4, 4,4, ! 1117: 4,4, 4,4, 4,4, 4,4, ! 1118: 4,4, 4,4, 4,4, 4,4, ! 1119: 4,4, 4,4, 4,4, 14,21, ! 1120: 16,21, 135,0, 18,21, 137,0, ! 1121: 20,21, 4,4, 4,4, 4,4, ! 1122: 4,4, 4,4, 4,4, 4,4, ! 1123: 4,4, 4,4, 4,4, 4,4, ! 1124: 4,4, 4,4, 4,4, 4,4, ! 1125: 4,4, 4,4, 4,4, 4,4, ! 1126: 4,4, 4,4, 4,4, 4,4, ! 1127: 4,4, 4,4, 4,4, 7,22, ! 1128: 47,0, 19,46, 49,0, 21,57, ! 1129: 141,0, 24,59, 14,37, 16,40, ! 1130: 7,23, 18,44, 19,0, 16,41, ! 1131: 21,0, 144,0, 24,0, 154,0, ! 1132: 156,0, 51,0, 25,61, 159,0, ! 1133: 161,0, 16,42, 163,0, 18,45, ! 1134: 20,55, 165,0, 14,38, 25,0, ! 1135: 167,0, 20,56, 169,0, 28,67, ! 1136: 7,22, 53,0, 19,46, 47,47, ! 1137: 21,57, 49,47, 24,59, 171,0, ! 1138: 28,0, 174,0, 7,22, 7,22, ! 1139: 19,46, 19,47, 21,57, 21,57, ! 1140: 24,59, 24,60, 45,87, 25,61, ! 1141: 51,47, 179,0, 181,0, 47,47, ! 1142: 183,0, 49,47, 19,48, 45,0, ! 1143: 186,0, 25,61, 25,62, 7,22, ! 1144: 28,67, 19,47, 188,0, 21,57, ! 1145: 53,47, 24,60, 190,0, 59,0, ! 1146: 51,47, 61,0, 28,67, 28,68, ! 1147: 46,46, 192,0, 48,90, 194,0, ! 1148: 50,92, 0,0, 25,62, 45,87, ! 1149: 0,0, 46,0, 0,0, 48,0, ! 1150: 53,47, 50,0, 0,0, 49,91, ! 1151: 0,0, 45,87, 45,88, 28,68, ! 1152: 67,0, 0,0, 0,0, 0,0, ! 1153: 88,0, 19,49, 0,0, 52,95, ! 1154: 0,0, 19,50, 59,59, 0,0, ! 1155: 61,61, 46,46, 19,51, 48,90, ! 1156: 52,0, 50,92, 45,88, 19,52, ! 1157: 19,53, 19,54, 51,94, 46,46, ! 1158: 46,46, 48,90, 48,90, 50,92, ! 1159: 50,93, 54,99, 59,59, 0,0, ! 1160: 61,61, 64,107, 0,0, 67,67, ! 1161: 65,109, 53,98, 54,0, 88,88, ! 1162: 52,95, 0,0, 64,0, 0,0, ! 1163: 46,46, 65,0, 48,90, 0,0, ! 1164: 50,93, 92,0, 52,95, 52,96, ! 1165: 69,113, 0,0, 0,0, 67,67, ! 1166: 0,0, 91,0, 71,117, 88,88, ! 1167: 0,0, 69,0, 54,99, 45,89, ! 1168: 0,0, 72,119, 64,107, 71,0, ! 1169: 0,0, 65,109, 0,0, 52,96, ! 1170: 54,99, 54,100, 72,0, 0,0, ! 1171: 64,107, 64,108, 96,0, 65,109, ! 1172: 65,110, 73,121, 0,0, 0,0, ! 1173: 92,92, 69,113, 98,0, 0,0, ! 1174: 0,0, 0,0, 73,0, 71,117, ! 1175: 91,47, 54,100, 74,123, 69,113, ! 1176: 69,114, 64,108, 72,119, 0,0, ! 1177: 65,110, 71,117, 71,118, 74,0, ! 1178: 92,92, 0,0, 0,0, 52,97, ! 1179: 72,119, 72,120, 75,125, 0,0, ! 1180: 91,47, 96,96, 73,121, 0,0, ! 1181: 69,114, 76,127, 0,0, 75,0, ! 1182: 0,0, 98,47, 71,118, 77,129, ! 1183: 73,121, 73,122, 76,0, 74,123, ! 1184: 0,0, 72,120, 0,0, 0,0, ! 1185: 77,0, 96,96, 0,0, 78,131, ! 1186: 0,0, 74,123, 74,124, 54,101, ! 1187: 80,134, 98,47, 81,136, 75,125, ! 1188: 78,0, 73,122, 0,0, 0,0, ! 1189: 0,0, 80,0, 76,127, 81,0, ! 1190: 0,0, 75,125, 75,126, 89,0, ! 1191: 77,129, 91,146, 74,124, 0,0, ! 1192: 76,127, 76,128, 0,0, 100,0, ! 1193: 0,0, 107,0, 77,129, 77,130, ! 1194: 78,131, 0,0, 0,0, 0,0, ! 1195: 0,0, 80,134, 75,126, 81,136, ! 1196: 0,0, 98,152, 78,131, 78,132, ! 1197: 82,138, 76,128, 83,139, 80,134, ! 1198: 80,135, 81,136, 81,137, 77,130, ! 1199: 84,140, 82,0, 89,88, 83,0, ! 1200: 0,0, 94,0, 86,143, 0,0, ! 1201: 87,87, 84,0, 100,100, 78,132, ! 1202: 107,107, 0,0, 0,0, 86,0, ! 1203: 80,135, 87,0, 81,137, 0,0, ! 1204: 0,0, 0,0, 89,88, 0,0, ! 1205: 109,0, 82,138, 0,0, 83,139, ! 1206: 113,0, 0,0, 100,100, 0,0, ! 1207: 107,107, 84,140, 0,0, 82,138, ! 1208: 82,82, 83,139, 83,83, 86,143, ! 1209: 94,47, 87,87, 0,0, 84,140, ! 1210: 84,141, 95,95, 0,0, 117,0, ! 1211: 97,148, 86,143, 86,144, 87,87, ! 1212: 87,87, 99,99, 95,0, 0,0, ! 1213: 82,82, 97,0, 83,83, 109,109, ! 1214: 94,47, 0,0, 99,0, 113,113, ! 1215: 84,141, 0,0, 119,0, 0,0, ! 1216: 89,145, 0,0, 86,144, 101,153, ! 1217: 87,87, 0,0, 0,0, 102,155, ! 1218: 0,0, 0,0, 95,95, 109,109, ! 1219: 101,0, 97,148, 117,117, 113,113, ! 1220: 102,0, 0,0, 99,99, 0,0, ! 1221: 95,95, 95,95, 104,158, 97,148, ! 1222: 97,149, 121,0, 105,160, 123,0, ! 1223: 99,99, 99,99, 106,162, 104,0, ! 1224: 94,147, 119,119, 117,117, 105,0, ! 1225: 101,153, 0,0, 0,0, 106,0, ! 1226: 102,155, 95,95, 0,0, 125,0, ! 1227: 97,149, 0,0, 101,153, 101,154, ! 1228: 111,164, 99,99, 102,155, 102,156, ! 1229: 112,166, 119,119, 0,0, 104,158, ! 1230: 0,0, 111,0, 127,0, 105,160, ! 1231: 121,121, 112,0, 123,123, 106,162, ! 1232: 0,0, 104,158, 104,159, 101,154, ! 1233: 129,0, 105,160, 105,161, 102,156, ! 1234: 131,0, 106,162, 106,163, 115,168, ! 1235: 0,0, 0,0, 125,125, 134,0, ! 1236: 121,121, 111,164, 123,123, 0,0, ! 1237: 115,0, 112,166, 104,159, 97,150, ! 1238: 116,170, 97,151, 105,161, 111,164, ! 1239: 111,165, 127,127, 106,163, 112,166, ! 1240: 112,167, 116,0, 125,125, 0,0, ! 1241: 136,0, 138,0, 139,0, 129,129, ! 1242: 0,0, 140,0, 143,0, 131,131, ! 1243: 115,168, 145,0, 146,0, 149,0, ! 1244: 111,165, 127,127, 134,134, 142,173, ! 1245: 112,167, 0,0, 115,168, 115,169, ! 1246: 0,0, 116,170, 0,0, 129,129, ! 1247: 142,0, 0,0, 0,0, 131,131, ! 1248: 152,0, 147,178, 0,0, 116,170, ! 1249: 116,171, 153,0, 134,134, 136,136, ! 1250: 138,138, 139,139, 147,0, 115,169, ! 1251: 140,140, 143,143, 148,148, 0,0, ! 1252: 145,88, 146,47, 149,149, 0,0, ! 1253: 142,173, 155,0, 0,0, 148,0, ! 1254: 116,171, 0,0, 158,0, 136,136, ! 1255: 138,138, 139,139, 142,173, 142,174, ! 1256: 140,140, 143,143, 147,178, 152,47, ! 1257: 145,88, 146,47, 149,149, 150,180, ! 1258: 153,153, 151,182, 0,0, 0,0, ! 1259: 147,178, 147,179, 0,0, 148,148, ! 1260: 150,0, 0,0, 151,0, 142,174, ! 1261: 160,0, 157,185, 162,0, 152,47, ! 1262: 155,155, 148,148, 148,148, 164,0, ! 1263: 153,153, 158,158, 157,0, 166,0, ! 1264: 0,0, 147,179, 168,0, 170,0, ! 1265: 0,0, 146,176, 0,0, 173,0, ! 1266: 150,180, 146,177, 151,182, 145,175, ! 1267: 155,155, 175,0, 148,148, 0,0, ! 1268: 0,0, 158,158, 150,180, 150,181, ! 1269: 151,182, 151,183, 157,185, 160,160, ! 1270: 0,0, 162,162, 178,0, 172,187, ! 1271: 180,0, 0,0, 164,164, 176,189, ! 1272: 157,185, 157,186, 166,166, 152,184, ! 1273: 172,0, 168,168, 170,170, 150,181, ! 1274: 176,0, 151,183, 173,173, 160,160, ! 1275: 0,0, 162,162, 177,191, 182,0, ! 1276: 175,88, 185,0, 164,164, 187,0, ! 1277: 189,0, 157,186, 166,166, 177,0, ! 1278: 0,0, 168,168, 170,170, 191,0, ! 1279: 172,187, 178,178, 173,173, 180,180, ! 1280: 176,189, 0,0, 193,0, 0,0, ! 1281: 175,88, 0,0, 172,187, 172,188, ! 1282: 0,0, 0,0, 176,189, 176,190, ! 1283: 184,193, 0,0, 0,0, 177,191, ! 1284: 0,0, 178,178, 182,182, 180,180, ! 1285: 185,185, 184,0, 187,187, 189,189, ! 1286: 0,0, 177,191, 177,192, 172,188, ! 1287: 0,0, 0,0, 191,191, 176,190, ! 1288: 0,0, 0,0, 0,0, 0,0, ! 1289: 0,0, 193,193, 182,182, 0,0, ! 1290: 185,185, 0,0, 187,187, 189,189, ! 1291: 0,0, 184,193, 177,192, 0,0, ! 1292: 0,0, 0,0, 191,191, 0,0, ! 1293: 0,0, 0,0, 0,0, 184,193, ! 1294: 184,194, 193,193, 0,0, 0,0, ! 1295: 0,0, 0,0, 0,0, 0,0, ! 1296: 0,0, 0,0, 0,0, 0,0, ! 1297: 0,0, 0,0, 0,0, 0,0, ! 1298: 0,0, 0,0, 0,0, 0,0, ! 1299: 184,194, 0,0, 0,0, 0,0, ! 1300: 0,0}; ! 1301: struct yysvf yysvec[] ={ ! 1302: 0, 0, 0, ! 1303: yycrank+1, 0, 0, ! 1304: yycrank+114, 0, 0, ! 1305: yycrank+0, 0, yyvstop+1, ! 1306: yycrank+192, 0, yyvstop+3, ! 1307: yycrank+1, 0, 0, ! 1308: yycrank+0, yysvec+5, yyvstop+5, ! 1309: yycrank+-314, 0, 0, ! 1310: yycrank+2, yysvec+4, yyvstop+7, ! 1311: yycrank+34, yysvec+4, yyvstop+9, ! 1312: yycrank+35, yysvec+4, yyvstop+11, ! 1313: yycrank+39, yysvec+4, yyvstop+13, ! 1314: yycrank+36, yysvec+4, yyvstop+15, ! 1315: yycrank+37, yysvec+4, yyvstop+17, ! 1316: yycrank+225, yysvec+4, yyvstop+19, ! 1317: yycrank+92, yysvec+4, yyvstop+21, ! 1318: yycrank+226, yysvec+4, yyvstop+23, ! 1319: yycrank+38, yysvec+4, yyvstop+25, ! 1320: yycrank+228, yysvec+4, yyvstop+27, ! 1321: yycrank+-316, 0, yyvstop+29, ! 1322: yycrank+230, yysvec+4, yyvstop+31, ! 1323: yycrank+-318, 0, 0, ! 1324: yycrank+-2, yysvec+7, 0, ! 1325: yycrank+0, 0, yyvstop+33, ! 1326: yycrank+-320, 0, yyvstop+35, ! 1327: yycrank+-333, 0, yyvstop+37, ! 1328: yycrank+28, yysvec+4, yyvstop+39, ! 1329: yycrank+141, yysvec+4, yyvstop+41, ! 1330: yycrank+-346, 0, yyvstop+43, ! 1331: yycrank+29, yysvec+4, yyvstop+45, ! 1332: yycrank+29, yysvec+4, yyvstop+47, ! 1333: yycrank+12, yysvec+4, yyvstop+49, ! 1334: yycrank+25, yysvec+4, yyvstop+51, ! 1335: yycrank+26, yysvec+4, yyvstop+53, ! 1336: yycrank+27, yysvec+4, yyvstop+55, ! 1337: yycrank+28, yysvec+4, yyvstop+57, ! 1338: yycrank+29, yysvec+4, yyvstop+59, ! 1339: yycrank+46, yysvec+4, yyvstop+61, ! 1340: yycrank+33, yysvec+4, yyvstop+63, ! 1341: yycrank+32, yysvec+4, yyvstop+65, ! 1342: yycrank+32, yysvec+4, yyvstop+67, ! 1343: yycrank+35, yysvec+4, yyvstop+69, ! 1344: yycrank+46, yysvec+4, yyvstop+71, ! 1345: yycrank+50, yysvec+4, yyvstop+73, ! 1346: yycrank+52, yysvec+4, yyvstop+75, ! 1347: yycrank+-365, 0, yyvstop+77, ! 1348: yycrank+-391, 0, yyvstop+79, ! 1349: yycrank+-306, yysvec+46, yyvstop+81, ! 1350: yycrank+-393, 0, yyvstop+84, ! 1351: yycrank+-308, yysvec+46, yyvstop+86, ! 1352: yycrank+-395, 0, yyvstop+89, ! 1353: yycrank+-323, yysvec+46, yyvstop+92, ! 1354: yycrank+-418, 0, yyvstop+95, ! 1355: yycrank+-339, yysvec+46, yyvstop+98, ! 1356: yycrank+-440, 0, yyvstop+101, ! 1357: yycrank+77, yysvec+4, yyvstop+104, ! 1358: yycrank+104, yysvec+4, yyvstop+106, ! 1359: yycrank+-48, yysvec+21, yyvstop+108, ! 1360: yycrank+0, 0, yyvstop+110, ! 1361: yycrank+-377, yysvec+24, yyvstop+112, ! 1362: yycrank+-51, yysvec+24, yyvstop+114, ! 1363: yycrank+-379, yysvec+25, yyvstop+117, ! 1364: yycrank+-52, yysvec+25, yyvstop+119, ! 1365: yycrank+56, yysvec+4, yyvstop+122, ! 1366: yycrank+-444, 0, yyvstop+124, ! 1367: yycrank+-447, 0, yyvstop+126, ! 1368: yycrank+109, yysvec+4, yyvstop+128, ! 1369: yycrank+-402, yysvec+28, yyvstop+130, ! 1370: yycrank+-53, yysvec+28, yyvstop+132, ! 1371: yycrank+-463, 0, yyvstop+135, ! 1372: yycrank+142, yysvec+4, yyvstop+137, ! 1373: yycrank+-469, 0, yyvstop+139, ! 1374: yycrank+-476, 0, yyvstop+141, ! 1375: yycrank+-492, 0, yyvstop+143, ! 1376: yycrank+-505, 0, yyvstop+145, ! 1377: yycrank+-521, 0, yyvstop+147, ! 1378: yycrank+-528, 0, yyvstop+149, ! 1379: yycrank+-534, 0, yyvstop+151, ! 1380: yycrank+-546, 0, yyvstop+153, ! 1381: yycrank+65, yysvec+4, yyvstop+155, ! 1382: yycrank+-551, 0, yyvstop+157, ! 1383: yycrank+-553, 0, yyvstop+159, ! 1384: yycrank+-591, 0, yyvstop+161, ! 1385: yycrank+-593, 0, yyvstop+164, ! 1386: yycrank+-599, 0, yyvstop+167, ! 1387: yycrank+62, yysvec+4, yyvstop+169, ! 1388: yycrank+-605, 0, yyvstop+171, ! 1389: yycrank+-607, 0, yyvstop+173, ! 1390: yycrank+-406, yysvec+87, yyvstop+175, ! 1391: yycrank+-557, yysvec+87, yyvstop+178, ! 1392: yycrank+-198, yysvec+48, yyvstop+181, ! 1393: yycrank+-459, yysvec+46, yyvstop+184, ! 1394: yycrank+-451, yysvec+50, yyvstop+187, ! 1395: yycrank+-230, yysvec+50, yyvstop+190, ! 1396: yycrank+-595, yysvec+46, yyvstop+194, ! 1397: yycrank+-644, 0, yyvstop+197, ! 1398: yycrank+-480, yysvec+95, yyvstop+200, ! 1399: yycrank+-647, 0, yyvstop+204, ! 1400: yycrank+-488, yysvec+46, yyvstop+208, ! 1401: yycrank+-652, 0, yyvstop+211, ! 1402: yycrank+-565, yysvec+99, yyvstop+214, ! 1403: yycrank+-670, 0, yyvstop+218, ! 1404: yycrank+-674, 0, yyvstop+222, ! 1405: yycrank+132, yysvec+4, yyvstop+224, ! 1406: yycrank+-689, 0, yyvstop+226, ! 1407: yycrank+-693, 0, yyvstop+228, ! 1408: yycrank+-697, 0, yyvstop+230, ! 1409: yycrank+-567, yysvec+64, yyvstop+232, ! 1410: yycrank+-232, yysvec+64, yyvstop+234, ! 1411: yycrank+-614, yysvec+65, yyvstop+237, ! 1412: yycrank+-233, yysvec+65, yyvstop+239, ! 1413: yycrank+-715, 0, yyvstop+242, ! 1414: yycrank+-719, 0, yyvstop+244, ! 1415: yycrank+-618, yysvec+69, yyvstop+246, ! 1416: yycrank+-234, yysvec+69, yyvstop+248, ! 1417: yycrank+-742, 0, yyvstop+251, ! 1418: yycrank+-755, 0, yyvstop+253, ! 1419: yycrank+-637, yysvec+71, yyvstop+255, ! 1420: yycrank+-235, yysvec+71, yyvstop+257, ! 1421: yycrank+-656, yysvec+72, yyvstop+260, ! 1422: yycrank+-238, yysvec+72, yyvstop+262, ! 1423: yycrank+-683, yysvec+73, yyvstop+265, ! 1424: yycrank+-239, yysvec+73, yyvstop+267, ! 1425: yycrank+-685, yysvec+74, yyvstop+270, ! 1426: yycrank+-240, yysvec+74, yyvstop+272, ! 1427: yycrank+-701, yysvec+75, yyvstop+275, ! 1428: yycrank+-242, yysvec+75, yyvstop+277, ! 1429: yycrank+-716, yysvec+76, yyvstop+280, ! 1430: yycrank+-243, yysvec+76, yyvstop+282, ! 1431: yycrank+-726, yysvec+77, yyvstop+285, ! 1432: yycrank+-244, yysvec+77, yyvstop+287, ! 1433: yycrank+-730, yysvec+78, yyvstop+290, ! 1434: yycrank+-245, yysvec+78, yyvstop+292, ! 1435: yycrank+151, yysvec+4, yyvstop+295, ! 1436: yycrank+-737, yysvec+80, yyvstop+297, ! 1437: yycrank+-275, yysvec+80, yyvstop+299, ! 1438: yycrank+-758, yysvec+81, yyvstop+302, ! 1439: yycrank+-277, yysvec+81, yyvstop+304, ! 1440: yycrank+-759, yysvec+82, yyvstop+307, ! 1441: yycrank+-760, yysvec+83, yyvstop+309, ! 1442: yycrank+-763, yysvec+84, yyvstop+311, ! 1443: yycrank+-310, yysvec+84, yyvstop+313, ! 1444: yycrank+-782, 0, yyvstop+316, ! 1445: yycrank+-764, yysvec+86, yyvstop+318, ! 1446: yycrank+-319, yysvec+86, yyvstop+320, ! 1447: yycrank+-767, yysvec+87, yyvstop+323, ! 1448: yycrank+-768, yysvec+46, yyvstop+326, ! 1449: yycrank+-796, 0, yyvstop+329, ! 1450: yycrank+-809, 0, yyvstop+332, ! 1451: yycrank+-769, yysvec+148, yyvstop+336, ! 1452: yycrank+-834, 0, yyvstop+341, ! 1453: yycrank+-836, 0, yyvstop+346, ! 1454: yycrank+-786, yysvec+46, yyvstop+351, ! 1455: yycrank+-791, yysvec+101, yyvstop+354, ! 1456: yycrank+-321, yysvec+101, yyvstop+358, ! 1457: yycrank+-807, yysvec+102, yyvstop+363, ! 1458: yycrank+-322, yysvec+102, yyvstop+365, ! 1459: yycrank+-848, 0, yyvstop+368, ! 1460: yycrank+-812, yysvec+104, yyvstop+370, ! 1461: yycrank+-325, yysvec+104, yyvstop+372, ! 1462: yycrank+-838, yysvec+105, yyvstop+375, ! 1463: yycrank+-326, yysvec+105, yyvstop+377, ! 1464: yycrank+-840, yysvec+106, yyvstop+380, ! 1465: yycrank+-328, yysvec+106, yyvstop+382, ! 1466: yycrank+-845, yysvec+111, yyvstop+385, ! 1467: yycrank+-331, yysvec+111, yyvstop+387, ! 1468: yycrank+-849, yysvec+112, yyvstop+390, ! 1469: yycrank+-334, yysvec+112, yyvstop+392, ! 1470: yycrank+-852, yysvec+115, yyvstop+395, ! 1471: yycrank+-336, yysvec+115, yyvstop+397, ! 1472: yycrank+-853, yysvec+116, yyvstop+400, ! 1473: yycrank+-345, yysvec+116, yyvstop+402, ! 1474: yycrank+-886, 0, yyvstop+405, ! 1475: yycrank+-857, yysvec+142, yyvstop+407, ! 1476: yycrank+-347, yysvec+142, yyvstop+409, ! 1477: yycrank+-863, yysvec+87, yyvstop+412, ! 1478: yycrank+-890, 0, yyvstop+416, ! 1479: yycrank+-905, 0, yyvstop+419, ! 1480: yycrank+-876, yysvec+147, yyvstop+422, ! 1481: yycrank+-359, yysvec+147, yyvstop+425, ! 1482: yycrank+-878, yysvec+150, yyvstop+429, ! 1483: yycrank+-360, yysvec+150, yyvstop+434, ! 1484: yycrank+-897, yysvec+151, yyvstop+440, ! 1485: yycrank+-362, yysvec+151, yyvstop+445, ! 1486: yycrank+-935, 0, yyvstop+451, ! 1487: yycrank+-899, yysvec+157, yyvstop+454, ! 1488: yycrank+-366, yysvec+157, yyvstop+456, ! 1489: yycrank+-901, yysvec+172, yyvstop+459, ! 1490: yycrank+-372, yysvec+172, yyvstop+461, ! 1491: yycrank+-902, yysvec+176, yyvstop+464, ! 1492: yycrank+-376, yysvec+176, yyvstop+467, ! 1493: yycrank+-909, yysvec+177, yyvstop+471, ! 1494: yycrank+-383, yysvec+177, yyvstop+474, ! 1495: yycrank+-916, yysvec+184, yyvstop+478, ! 1496: yycrank+-385, yysvec+184, yyvstop+481, ! 1497: 0, 0, 0}; ! 1498: struct yywork *yytop = yycrank+1000; ! 1499: struct yysvf *yybgin = yysvec+1; ! 1500: char yymatch[] ={ ! 1501: 00 ,01 ,01 ,01 ,01 ,01 ,01 ,01 , ! 1502: 01 ,01 ,012 ,01 ,01 ,01 ,01 ,01 , ! 1503: 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 , ! 1504: 01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 , ! 1505: 01 ,01 ,'"' ,01 ,01 ,01 ,01 ,01 , ! 1506: 01 ,01 ,01 ,01 ,',' ,'-' ,01 ,01 , ! 1507: '"' ,'"' ,'"' ,'"' ,'"' ,'"' ,'"' ,'"' , ! 1508: '"' ,'"' ,01 ,'"' ,01 ,01 ,01 ,01 , ! 1509: 01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' , ! 1510: 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' , ! 1511: 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' , ! 1512: 'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,01 , ! 1513: 01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' , ! 1514: 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' , ! 1515: 'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' , ! 1516: 'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,01 , ! 1517: 0}; ! 1518: char yyextra[] ={ ! 1519: 0,0,0,0,0,0,0,0, ! 1520: 0,0,0,0,0,0,0,0, ! 1521: 0,0,0,0,0,0,0,0, ! 1522: 0,0,0,0,0,0,0,0, ! 1523: 0,0,0,0,0,0,0,0, ! 1524: 0,0,0,0,0,0,0,0, ! 1525: 0,0,0,0,0,0,0,0, ! 1526: 0}; ! 1527: /* ncform 4.1 83/08/11 */ ! 1528: ! 1529: int yylineno =1; ! 1530: # define YYU(x) x ! 1531: # define NLSTATE yyprevious=YYNEWLINE ! 1532: char yytext[YYLMAX]; ! 1533: struct yysvf *yylstate [YYLMAX], **yylsp, **yyolsp; ! 1534: char yysbuf[YYLMAX]; ! 1535: char *yysptr = yysbuf; ! 1536: int *yyfnd; ! 1537: extern struct yysvf *yyestate; ! 1538: int yyprevious = YYNEWLINE; ! 1539: yylook(){ ! 1540: register struct yysvf *yystate, **lsp; ! 1541: register struct yywork *yyt; ! 1542: struct yysvf *yyz; ! 1543: int yych; ! 1544: struct yywork *yyr; ! 1545: # ifdef LEXDEBUG ! 1546: int debug; ! 1547: # endif ! 1548: char *yylastch; ! 1549: /* start off machines */ ! 1550: # ifdef LEXDEBUG ! 1551: debug = 0; ! 1552: # endif ! 1553: if (!yymorfg) ! 1554: yylastch = yytext; ! 1555: else { ! 1556: yymorfg=0; ! 1557: yylastch = yytext+yyleng; ! 1558: } ! 1559: for(;;){ ! 1560: lsp = yylstate; ! 1561: yyestate = yystate = yybgin; ! 1562: if (yyprevious==YYNEWLINE) yystate++; ! 1563: for (;;){ ! 1564: # ifdef LEXDEBUG ! 1565: if(debug)fprintf(yyout,"state %d\n",yystate-yysvec-1); ! 1566: # endif ! 1567: yyt = yystate->yystoff; ! 1568: if(yyt == yycrank){ /* may not be any transitions */ ! 1569: yyz = yystate->yyother; ! 1570: if(yyz == 0)break; ! 1571: if(yyz->yystoff == yycrank)break; ! 1572: } ! 1573: *yylastch++ = yych = input(); ! 1574: tryagain: ! 1575: # ifdef LEXDEBUG ! 1576: if(debug){ ! 1577: fprintf(yyout,"char "); ! 1578: allprint(yych); ! 1579: putchar('\n'); ! 1580: } ! 1581: # endif ! 1582: yyr = yyt; ! 1583: if ( (int)yyt > (int)yycrank){ ! 1584: yyt = yyr + yych; ! 1585: if (yyt <= yytop && yyt->verify+yysvec == yystate){ ! 1586: if(yyt->advance+yysvec == YYLERR) /* error transitions */ ! 1587: {unput(*--yylastch);break;} ! 1588: *lsp++ = yystate = yyt->advance+yysvec; ! 1589: goto contin; ! 1590: } ! 1591: } ! 1592: # ifdef YYOPTIM ! 1593: else if((int)yyt < (int)yycrank) { /* r < yycrank */ ! 1594: yyt = yyr = yycrank+(yycrank-yyt); ! 1595: # ifdef LEXDEBUG ! 1596: if(debug)fprintf(yyout,"compressed state\n"); ! 1597: # endif ! 1598: yyt = yyt + yych; ! 1599: if(yyt <= yytop && yyt->verify+yysvec == yystate){ ! 1600: if(yyt->advance+yysvec == YYLERR) /* error transitions */ ! 1601: {unput(*--yylastch);break;} ! 1602: *lsp++ = yystate = yyt->advance+yysvec; ! 1603: goto contin; ! 1604: } ! 1605: yyt = yyr + YYU(yymatch[yych]); ! 1606: # ifdef LEXDEBUG ! 1607: if(debug){ ! 1608: fprintf(yyout,"try fall back character "); ! 1609: allprint(YYU(yymatch[yych])); ! 1610: putchar('\n'); ! 1611: } ! 1612: # endif ! 1613: if(yyt <= yytop && yyt->verify+yysvec == yystate){ ! 1614: if(yyt->advance+yysvec == YYLERR) /* error transition */ ! 1615: {unput(*--yylastch);break;} ! 1616: *lsp++ = yystate = yyt->advance+yysvec; ! 1617: goto contin; ! 1618: } ! 1619: } ! 1620: if ((yystate = yystate->yyother) && (yyt= yystate->yystoff) != yycrank){ ! 1621: # ifdef LEXDEBUG ! 1622: if(debug)fprintf(yyout,"fall back to state %d\n",yystate-yysvec-1); ! 1623: # endif ! 1624: goto tryagain; ! 1625: } ! 1626: # endif ! 1627: else ! 1628: {unput(*--yylastch);break;} ! 1629: contin: ! 1630: # ifdef LEXDEBUG ! 1631: if(debug){ ! 1632: fprintf(yyout,"state %d char ",yystate-yysvec-1); ! 1633: allprint(yych); ! 1634: putchar('\n'); ! 1635: } ! 1636: # endif ! 1637: ; ! 1638: } ! 1639: # ifdef LEXDEBUG ! 1640: if(debug){ ! 1641: fprintf(yyout,"stopped at %d with ",*(lsp-1)-yysvec-1); ! 1642: allprint(yych); ! 1643: putchar('\n'); ! 1644: } ! 1645: # endif ! 1646: while (lsp-- > yylstate){ ! 1647: *yylastch-- = 0; ! 1648: if (*lsp != 0 && (yyfnd= (*lsp)->yystops) && *yyfnd > 0){ ! 1649: yyolsp = lsp; ! 1650: if(yyextra[*yyfnd]){ /* must backup */ ! 1651: while(yyback((*lsp)->yystops,-*yyfnd) != 1 && lsp > yylstate){ ! 1652: lsp--; ! 1653: unput(*yylastch--); ! 1654: } ! 1655: } ! 1656: yyprevious = YYU(*yylastch); ! 1657: yylsp = lsp; ! 1658: yyleng = yylastch-yytext+1; ! 1659: yytext[yyleng] = 0; ! 1660: # ifdef LEXDEBUG ! 1661: if(debug){ ! 1662: fprintf(yyout,"\nmatch "); ! 1663: sprint(yytext); ! 1664: fprintf(yyout," action %d\n",*yyfnd); ! 1665: } ! 1666: # endif ! 1667: return(*yyfnd++); ! 1668: } ! 1669: unput(*yylastch); ! 1670: } ! 1671: if (yytext[0] == 0 /* && feof(yyin) */) ! 1672: { ! 1673: yysptr=yysbuf; ! 1674: return(0); ! 1675: } ! 1676: yyprevious = yytext[0] = input(); ! 1677: if (yyprevious>0) ! 1678: output(yyprevious); ! 1679: yylastch=yytext; ! 1680: # ifdef LEXDEBUG ! 1681: if(debug)putchar('\n'); ! 1682: # endif ! 1683: } ! 1684: } ! 1685: yyback(p, m) ! 1686: int *p; ! 1687: { ! 1688: if (p==0) return(0); ! 1689: while (*p) ! 1690: { ! 1691: if (*p++ == m) ! 1692: return(1); ! 1693: } ! 1694: return(0); ! 1695: } ! 1696: /* the following are only used in the lex library */ ! 1697: yyinput(){ ! 1698: return(input()); ! 1699: } ! 1700: yyoutput(c) ! 1701: int c; { ! 1702: output(c); ! 1703: } ! 1704: yyunput(c) ! 1705: int c; { ! 1706: unput(c); ! 1707: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.