1 
   2 // this file has been automatically generated from 'D:/work/soulng-project/sngcpp/pp/PPLexer.lexer' using soulng lexer generator slg version 3.0.0
   3 
   4 #include <sngcpp/pp/PPLexer.hpp>
   5 #include <sngcpp/pp/PPKeywords.hpp>
   6 #include <soulng/lexer/Token.hpp>
   7 #include <sngcpp/pp/PPTokens.hpp>
   8 #include <sngcpp/pp/PPClassMap.hpp>
   9 
  10 using namespace soulng::lexer;
  11 using namespace PPTokens;
  12 
  13 PPLexer::PPLexer(const std::u32string& content_const std::string& fileName_int fileIndex_) : soulng::lexer::Lexer(content_fileName_fileIndex_)
  14     pp()
  15 {
  16     SetKeywordMap(PPKeywords::GetKeywordMap());
  17 }
  18 
  19 PPLexer::PPLexer(const char32_t* start_const char32_t* end_const std::string& fileName_int fileIndex_) : soulng::lexer::Lexer(start_end_fileName_fileIndex_)
  20     pp()
  21 {
  22     SetKeywordMap(PPKeywords::GetKeywordMap());
  23 }
  24 
  25 int PPLexer::NextState(int statechar32_t c)
  26 {
  27     int i = PPClassMap::GetClass(c);
  28     switch (state)
  29     {
  30         case 0:
  31         {
  32             switch (i)
  33             {
  34                 case 0:
  35                 {
  36                     return 1;
  37                 }
  38                 case 1:
  39                 {
  40                     return 2;
  41                 }
  42                 case 2:
  43                 {
  44                     return 3;
  45                 }
  46                 case 3:
  47                 {
  48                     return 4;
  49                 }
  50                 case 4:
  51                 {
  52                     return 5;
  53                 }
  54                 case 5:
  55                 case 15:
  56                 case 16:
  57                 case 20:
  58                 case 24:
  59                 case 25:
  60                 case 26:
  61                 case 27:
  62                 case 29:
  63                 case 30:
  64                 case 31:
  65                 case 33:
  66                 case 34:
  67                 case 35:
  68                 {
  69                     return 6;
  70                 }
  71                 case 7:
  72                 case 8:
  73                 {
  74                     return 7;
  75                 }
  76                 case 10:
  77                 {
  78                     return 8;
  79                 }
  80                 case 11:
  81                 {
  82                     return 9;
  83                 }
  84                 case 12:
  85                 {
  86                     return 10;
  87                 }
  88                 case 13:
  89                 {
  90                     return 11;
  91                 }
  92                 case 14:
  93                 {
  94                     return 12;
  95                 }
  96                 case 17:
  97                 {
  98                     return 13;
  99                 }
 100                 case 18:
 101                 {
 102                     return 14;
 103                 }
 104                 case 19:
 105                 {
 106                     return 15;
 107                 }
 108                 case 21:
 109                 {
 110                     return 16;
 111                 }
 112                 case 22:
 113                 {
 114                     return 17;
 115                 }
 116                 case 23:
 117                 {
 118                     return 18;
 119                 }
 120                 case 28:
 121                 case 32:
 122                 case 36:
 123                 {
 124                     return 19;
 125                 }
 126                 case 37:
 127                 {
 128                     return 20;
 129                 }
 130                 case 38:
 131                 {
 132                     return 21;
 133                 }
 134                 case 39:
 135                 {
 136                     return 22;
 137                 }
 138                 case 40:
 139                 {
 140                     return 23;
 141                 }
 142                 case 41:
 143                 {
 144                     return 24;
 145                 }
 146                 case 42:
 147                 {
 148                     return 25;
 149                 }
 150                 case 43:
 151                 {
 152                     return 26;
 153                 }
 154                 case 44:
 155                 {
 156                     return 27;
 157                 }
 158                 case 45:
 159                 {
 160                     return 28;
 161                 }
 162                 case 46:
 163                 {
 164                     return 29;
 165                 }
 166                 case 47:
 167                 {
 168                     return 30;
 169                 }
 170                 case 48:
 171                 {
 172                     return 31;
 173                 }
 174                 case 49:
 175                 {
 176                     return 32;
 177                 }
 178                 case 50:
 179                 {
 180                     return 33;
 181                 }
 182                 case 51:
 183                 {
 184                     return 34;
 185                 }
 186                 case 52:
 187                 {
 188                     return 35;
 189                 }
 190                 case 53:
 191                 {
 192                     return 36;
 193                 }
 194                 case 54:
 195                 {
 196                     return 37;
 197                 }
 198                 default:
 199                 {
 200                     return -1;
 201                 }
 202             }
 203         }
 204         case 37:
 205         {
 206             Lexeme prevMatch = token.match;
 207             token.match = lexeme;
 208             int tokenId = GetTokenId(61);
 209             if (tokenId == CONTINUE_TOKEN)
 210             {
 211                 token.id = tokenId;
 212                 return -1;
 213             }
 214             else if (tokenId != INVALID_TOKEN)
 215             {
 216                 token.id = tokenId;
 217             }
 218             else
 219             {
 220                 token.match = prevMatch;
 221             }
 222             return -1;
 223         }
 224         case 36:
 225         {
 226             Lexeme prevMatch = token.match;
 227             token.match = lexeme;
 228             int tokenId = GetTokenId(60);
 229             if (tokenId == CONTINUE_TOKEN)
 230             {
 231                 token.id = tokenId;
 232                 return -1;
 233             }
 234             else if (tokenId != INVALID_TOKEN)
 235             {
 236                 token.id = tokenId;
 237             }
 238             else
 239             {
 240                 token.match = prevMatch;
 241             }
 242             return -1;
 243         }
 244         case 35:
 245         {
 246             Lexeme prevMatch = token.match;
 247             token.match = lexeme;
 248             int tokenId = GetTokenId(58);
 249             if (tokenId == CONTINUE_TOKEN)
 250             {
 251                 token.id = tokenId;
 252                 return -1;
 253             }
 254             else if (tokenId != INVALID_TOKEN)
 255             {
 256                 token.id = tokenId;
 257             }
 258             else
 259             {
 260                 token.match = prevMatch;
 261             }
 262             return -1;
 263         }
 264         case 34:
 265         {
 266             Lexeme prevMatch = token.match;
 267             token.match = lexeme;
 268             int tokenId = GetTokenId(55);
 269             if (tokenId == CONTINUE_TOKEN)
 270             {
 271                 token.id = tokenId;
 272                 return -1;
 273             }
 274             else if (tokenId != INVALID_TOKEN)
 275             {
 276                 token.id = tokenId;
 277             }
 278             else
 279             {
 280                 token.match = prevMatch;
 281             }
 282             return -1;
 283         }
 284         case 33:
 285         {
 286             Lexeme prevMatch = token.match;
 287             token.match = lexeme;
 288             int tokenId = GetTokenId(54);
 289             if (tokenId == CONTINUE_TOKEN)
 290             {
 291                 token.id = tokenId;
 292                 return -1;
 293             }
 294             else if (tokenId != INVALID_TOKEN)
 295             {
 296                 token.id = tokenId;
 297             }
 298             else
 299             {
 300                 token.match = prevMatch;
 301             }
 302             return -1;
 303         }
 304         case 32:
 305         {
 306             Lexeme prevMatch = token.match;
 307             token.match = lexeme;
 308             int tokenId = GetTokenId(53);
 309             if (tokenId == CONTINUE_TOKEN)
 310             {
 311                 token.id = tokenId;
 312                 return -1;
 313             }
 314             else if (tokenId != INVALID_TOKEN)
 315             {
 316                 token.id = tokenId;
 317             }
 318             else
 319             {
 320                 token.match = prevMatch;
 321             }
 322             return -1;
 323         }
 324         case 31:
 325         {
 326             Lexeme prevMatch = token.match;
 327             token.match = lexeme;
 328             int tokenId = GetTokenId(49);
 329             if (tokenId == CONTINUE_TOKEN)
 330             {
 331                 token.id = tokenId;
 332                 return -1;
 333             }
 334             else if (tokenId != INVALID_TOKEN)
 335             {
 336                 token.id = tokenId;
 337             }
 338             else
 339             {
 340                 token.match = prevMatch;
 341             }
 342             return -1;
 343         }
 344         case 30:
 345         {
 346             Lexeme prevMatch = token.match;
 347             token.match = lexeme;
 348             int tokenId = GetTokenId(48);
 349             if (tokenId == CONTINUE_TOKEN)
 350             {
 351                 token.id = tokenId;
 352                 return -1;
 353             }
 354             else if (tokenId != INVALID_TOKEN)
 355             {
 356                 token.id = tokenId;
 357             }
 358             else
 359             {
 360                 token.match = prevMatch;
 361             }
 362             return -1;
 363         }
 364         case 29:
 365         {
 366             Lexeme prevMatch = token.match;
 367             token.match = lexeme;
 368             int tokenId = GetTokenId(52);
 369             if (tokenId == CONTINUE_TOKEN)
 370             {
 371                 token.id = tokenId;
 372                 return -1;
 373             }
 374             else if (tokenId != INVALID_TOKEN)
 375             {
 376                 token.id = tokenId;
 377             }
 378             else
 379             {
 380                 token.match = prevMatch;
 381             }
 382             switch (i)
 383             {
 384                 case 41:
 385                 {
 386                     return 38;
 387                 }
 388                 default:
 389                 {
 390                     return -1;
 391                 }
 392             }
 393         }
 394         case 38:
 395         {
 396             Lexeme prevMatch = token.match;
 397             token.match = lexeme;
 398             int tokenId = GetTokenId(33);
 399             if (tokenId == CONTINUE_TOKEN)
 400             {
 401                 token.id = tokenId;
 402                 return -1;
 403             }
 404             else if (tokenId != INVALID_TOKEN)
 405             {
 406                 token.id = tokenId;
 407             }
 408             else
 409             {
 410                 token.match = prevMatch;
 411             }
 412             return -1;
 413         }
 414         case 28:
 415         {
 416             Lexeme prevMatch = token.match;
 417             token.match = lexeme;
 418             int tokenId = GetTokenId(29);
 419             if (tokenId == CONTINUE_TOKEN)
 420             {
 421                 token.id = tokenId;
 422                 return -1;
 423             }
 424             else if (tokenId != INVALID_TOKEN)
 425             {
 426                 token.id = tokenId;
 427             }
 428             else
 429             {
 430                 token.match = prevMatch;
 431             }
 432             switch (i)
 433             {
 434                 case 41:
 435                 {
 436                     return 39;
 437                 }
 438                 case 45:
 439                 {
 440                     return 40;
 441                 }
 442                 default:
 443                 {
 444                     return -1;
 445                 }
 446             }
 447         }
 448         case 40:
 449         {
 450             Lexeme prevMatch = token.match;
 451             token.match = lexeme;
 452             int tokenId = GetTokenId(27);
 453             if (tokenId == CONTINUE_TOKEN)
 454             {
 455                 token.id = tokenId;
 456                 return -1;
 457             }
 458             else if (tokenId != INVALID_TOKEN)
 459             {
 460                 token.id = tokenId;
 461             }
 462             else
 463             {
 464                 token.match = prevMatch;
 465             }
 466             return -1;
 467         }
 468         case 39:
 469         {
 470             Lexeme prevMatch = token.match;
 471             token.match = lexeme;
 472             int tokenId = GetTokenId(24);
 473             if (tokenId == CONTINUE_TOKEN)
 474             {
 475                 token.id = tokenId;
 476                 return -1;
 477             }
 478             else if (tokenId != INVALID_TOKEN)
 479             {
 480                 token.id = tokenId;
 481             }
 482             else
 483             {
 484                 token.match = prevMatch;
 485             }
 486             return -1;
 487         }
 488         case 27:
 489         {
 490             Lexeme prevMatch = token.match;
 491             token.match = lexeme;
 492             int tokenId = GetTokenId(30);
 493             if (tokenId == CONTINUE_TOKEN)
 494             {
 495                 token.id = tokenId;
 496                 return -1;
 497             }
 498             else if (tokenId != INVALID_TOKEN)
 499             {
 500                 token.id = tokenId;
 501             }
 502             else
 503             {
 504                 token.match = prevMatch;
 505             }
 506             switch (i)
 507             {
 508                 case 41:
 509                 {
 510                     return 41;
 511                 }
 512                 default:
 513                 {
 514                     return -1;
 515                 }
 516             }
 517         }
 518         case 41:
 519         {
 520             Lexeme prevMatch = token.match;
 521             token.match = lexeme;
 522             int tokenId = GetTokenId(23);
 523             if (tokenId == CONTINUE_TOKEN)
 524             {
 525                 token.id = tokenId;
 526                 return -1;
 527             }
 528             else if (tokenId != INVALID_TOKEN)
 529             {
 530                 token.id = tokenId;
 531             }
 532             else
 533             {
 534                 token.match = prevMatch;
 535             }
 536             return -1;
 537         }
 538         case 26:
 539         {
 540             Lexeme prevMatch = token.match;
 541             token.match = lexeme;
 542             int tokenId = GetTokenId(31);
 543             if (tokenId == CONTINUE_TOKEN)
 544             {
 545                 token.id = tokenId;
 546                 return -1;
 547             }
 548             else if (tokenId != INVALID_TOKEN)
 549             {
 550                 token.id = tokenId;
 551             }
 552             else
 553             {
 554                 token.match = prevMatch;
 555             }
 556             switch (i)
 557             {
 558                 case 41:
 559                 {
 560                     return 42;
 561                 }
 562                 case 43:
 563                 {
 564                     return 43;
 565                 }
 566                 default:
 567                 {
 568                     return -1;
 569                 }
 570             }
 571         }
 572         case 43:
 573         {
 574             Lexeme prevMatch = token.match;
 575             token.match = lexeme;
 576             int tokenId = GetTokenId(28);
 577             if (tokenId == CONTINUE_TOKEN)
 578             {
 579                 token.id = tokenId;
 580                 return -1;
 581             }
 582             else if (tokenId != INVALID_TOKEN)
 583             {
 584                 token.id = tokenId;
 585             }
 586             else
 587             {
 588                 token.match = prevMatch;
 589             }
 590             return -1;
 591         }
 592         case 42:
 593         {
 594             Lexeme prevMatch = token.match;
 595             token.match = lexeme;
 596             int tokenId = GetTokenId(22);
 597             if (tokenId == CONTINUE_TOKEN)
 598             {
 599                 token.id = tokenId;
 600                 return -1;
 601             }
 602             else if (tokenId != INVALID_TOKEN)
 603             {
 604                 token.id = tokenId;
 605             }
 606             else
 607             {
 608                 token.match = prevMatch;
 609             }
 610             return -1;
 611         }
 612         case 25:
 613         {
 614             Lexeme prevMatch = token.match;
 615             token.match = lexeme;
 616             int tokenId = GetTokenId(45);
 617             if (tokenId == CONTINUE_TOKEN)
 618             {
 619                 token.id = tokenId;
 620                 return -1;
 621             }
 622             else if (tokenId != INVALID_TOKEN)
 623             {
 624                 token.id = tokenId;
 625             }
 626             else
 627             {
 628                 token.match = prevMatch;
 629             }
 630             switch (i)
 631             {
 632                 case 41:
 633                 {
 634                     return 44;
 635                 }
 636                 default:
 637                 {
 638                     return -1;
 639                 }
 640             }
 641         }
 642         case 44:
 643         {
 644             Lexeme prevMatch = token.match;
 645             token.match = lexeme;
 646             int tokenId = GetTokenId(17);
 647             if (tokenId == CONTINUE_TOKEN)
 648             {
 649                 token.id = tokenId;
 650                 return -1;
 651             }
 652             else if (tokenId != INVALID_TOKEN)
 653             {
 654                 token.id = tokenId;
 655             }
 656             else
 657             {
 658                 token.match = prevMatch;
 659             }
 660             return -1;
 661         }
 662         case 24:
 663         {
 664             Lexeme prevMatch = token.match;
 665             token.match = lexeme;
 666             int tokenId = GetTokenId(14);
 667             if (tokenId == CONTINUE_TOKEN)
 668             {
 669                 token.id = tokenId;
 670                 return -1;
 671             }
 672             else if (tokenId != INVALID_TOKEN)
 673             {
 674                 token.id = tokenId;
 675             }
 676             else
 677             {
 678                 token.match = prevMatch;
 679             }
 680             switch (i)
 681             {
 682                 case 41:
 683                 {
 684                     return 45;
 685                 }
 686                 default:
 687                 {
 688                     return -1;
 689                 }
 690             }
 691         }
 692         case 45:
 693         {
 694             Lexeme prevMatch = token.match;
 695             token.match = lexeme;
 696             int tokenId = GetTokenId(32);
 697             if (tokenId == CONTINUE_TOKEN)
 698             {
 699                 token.id = tokenId;
 700                 return -1;
 701             }
 702             else if (tokenId != INVALID_TOKEN)
 703             {
 704                 token.id = tokenId;
 705             }
 706             else
 707             {
 708                 token.match = prevMatch;
 709             }
 710             return -1;
 711         }
 712         case 23:
 713         {
 714             Lexeme prevMatch = token.match;
 715             token.match = lexeme;
 716             int tokenId = GetTokenId(13);
 717             if (tokenId == CONTINUE_TOKEN)
 718             {
 719                 token.id = tokenId;
 720                 return -1;
 721             }
 722             else if (tokenId != INVALID_TOKEN)
 723             {
 724                 token.id = tokenId;
 725             }
 726             else
 727             {
 728                 token.match = prevMatch;
 729             }
 730             return -1;
 731         }
 732         case 22:
 733         {
 734             Lexeme prevMatch = token.match;
 735             token.match = lexeme;
 736             int tokenId = GetTokenId(26);
 737             if (tokenId == CONTINUE_TOKEN)
 738             {
 739                 token.id = tokenId;
 740                 return -1;
 741             }
 742             else if (tokenId != INVALID_TOKEN)
 743             {
 744                 token.id = tokenId;
 745             }
 746             else
 747             {
 748                 token.match = prevMatch;
 749             }
 750             switch (i)
 751             {
 752                 case 39:
 753                 {
 754                     return 46;
 755                 }
 756                 default:
 757                 {
 758                     return -1;
 759                 }
 760             }
 761         }
 762         case 46:
 763         {
 764             Lexeme prevMatch = token.match;
 765             token.match = lexeme;
 766             int tokenId = GetTokenId(12);
 767             if (tokenId == CONTINUE_TOKEN)
 768             {
 769                 token.id = tokenId;
 770                 return -1;
 771             }
 772             else if (tokenId != INVALID_TOKEN)
 773             {
 774                 token.id = tokenId;
 775             }
 776             else
 777             {
 778                 token.match = prevMatch;
 779             }
 780             return -1;
 781         }
 782         case 21:
 783         {
 784             Lexeme prevMatch = token.match;
 785             token.match = lexeme;
 786             int tokenId = GetTokenId(11);
 787             if (tokenId == CONTINUE_TOKEN)
 788             {
 789                 token.id = tokenId;
 790                 return -1;
 791             }
 792             else if (tokenId != INVALID_TOKEN)
 793             {
 794                 token.id = tokenId;
 795             }
 796             else
 797             {
 798                 token.match = prevMatch;
 799             }
 800             return -1;
 801         }
 802         case 20:
 803         {
 804             Lexeme prevMatch = token.match;
 805             token.match = lexeme;
 806             int tokenId = GetTokenId(5);
 807             if (tokenId == CONTINUE_TOKEN)
 808             {
 809                 token.id = tokenId;
 810                 return -1;
 811             }
 812             else if (tokenId != INVALID_TOKEN)
 813             {
 814                 token.id = tokenId;
 815             }
 816             else
 817             {
 818                 token.match = prevMatch;
 819             }
 820             switch (i)
 821             {
 822                 case 2:
 823                 {
 824                     return 47;
 825                 }
 826                 case 5:
 827                 case 6:
 828                 case 15:
 829                 case 16:
 830                 case 17:
 831                 case 18:
 832                 case 19:
 833                 case 20:
 834                 case 24:
 835                 case 25:
 836                 case 26:
 837                 case 27:
 838                 case 28:
 839                 case 29:
 840                 case 30:
 841                 case 31:
 842                 case 32:
 843                 case 33:
 844                 case 34:
 845                 case 35:
 846                 case 36:
 847                 case 37:
 848                 {
 849                     return 48;
 850                 }
 851                 default:
 852                 {
 853                     return -1;
 854                 }
 855             }
 856         }
 857         case 48:
 858         {
 859             Lexeme prevMatch = token.match;
 860             token.match = lexeme;
 861             int tokenId = GetTokenId(5);
 862             if (tokenId == CONTINUE_TOKEN)
 863             {
 864                 token.id = tokenId;
 865                 return -1;
 866             }
 867             else if (tokenId != INVALID_TOKEN)
 868             {
 869                 token.id = tokenId;
 870             }
 871             else
 872             {
 873                 token.match = prevMatch;
 874             }
 875             switch (i)
 876             {
 877                 case 5:
 878                 case 6:
 879                 case 15:
 880                 case 16:
 881                 case 17:
 882                 case 18:
 883                 case 19:
 884                 case 20:
 885                 case 24:
 886                 case 25:
 887                 case 26:
 888                 case 27:
 889                 case 28:
 890                 case 29:
 891                 case 30:
 892                 case 31:
 893                 case 32:
 894                 case 33:
 895                 case 34:
 896                 case 35:
 897                 case 36:
 898                 case 37:
 899                 {
 900                     return 48;
 901                 }
 902                 default:
 903                 {
 904                     return -1;
 905                 }
 906             }
 907         }
 908         case 47:
 909         {
 910             switch (i)
 911             {
 912                 case 2:
 913                 {
 914                     return 49;
 915                 }
 916                 case 3:
 917                 case 4:
 918                 case 5:
 919                 case 6:
 920                 case 7:
 921                 case 8:
 922                 case 9:
 923                 case 10:
 924                 case 11:
 925                 case 12:
 926                 case 13:
 927                 case 14:
 928                 case 15:
 929                 case 16:
 930                 case 17:
 931                 case 18:
 932                 case 19:
 933                 case 20:
 934                 case 21:
 935                 case 22:
 936                 case 23:
 937                 case 24:
 938                 case 25:
 939                 case 26:
 940                 case 27:
 941                 case 28:
 942                 case 29:
 943                 case 30:
 944                 case 31:
 945                 case 32:
 946                 case 33:
 947                 case 34:
 948                 case 35:
 949                 case 36:
 950                 case 37:
 951                 case 38:
 952                 case 39:
 953                 case 40:
 954                 case 41:
 955                 case 42:
 956                 case 43:
 957                 case 44:
 958                 case 45:
 959                 case 46:
 960                 case 47:
 961                 case 48:
 962                 case 49:
 963                 case 50:
 964                 case 51:
 965                 case 52:
 966                 case 53:
 967                 case 54:
 968                 {
 969                     return 50;
 970                 }
 971                 default:
 972                 {
 973                     return -1;
 974                 }
 975             }
 976         }
 977         case 50:
 978         {
 979             switch (i)
 980             {
 981                 case 2:
 982                 {
 983                     return 49;
 984                 }
 985                 case 3:
 986                 case 4:
 987                 case 5:
 988                 case 6:
 989                 case 7:
 990                 case 8:
 991                 case 9:
 992                 case 10:
 993                 case 11:
 994                 case 12:
 995                 case 13:
 996                 case 14:
 997                 case 15:
 998                 case 16:
 999                 case 17:
1000                 case 18:
1001                 case 19:
1002                 case 20:
1003                 case 21:
1004                 case 22:
1005                 case 23:
1006                 case 24:
1007                 case 25:
1008                 case 26:
1009                 case 27:
1010                 case 28:
1011                 case 29:
1012                 case 30:
1013                 case 31:
1014                 case 32:
1015                 case 33:
1016                 case 34:
1017                 case 35:
1018                 case 36:
1019                 case 37:
1020                 case 38:
1021                 case 39:
1022                 case 40:
1023                 case 41:
1024                 case 42:
1025                 case 43:
1026                 case 44:
1027                 case 45:
1028                 case 46:
1029                 case 47:
1030                 case 48:
1031                 case 49:
1032                 case 50:
1033                 case 51:
1034                 case 52:
1035                 case 53:
1036                 case 54:
1037                 {
1038                     return 50;
1039                 }
1040                 default:
1041                 {
1042                     return -1;
1043                 }
1044             }
1045         }
1046         case 49:
1047         {
1048             Lexeme prevMatch = token.match;
1049             token.match = lexeme;
1050             int tokenId = GetTokenId(10);
1051             if (tokenId == CONTINUE_TOKEN)
1052             {
1053                 token.id = tokenId;
1054                 return -1;
1055             }
1056             else if (tokenId != INVALID_TOKEN)
1057             {
1058                 token.id = tokenId;
1059             }
1060             else
1061             {
1062                 token.match = prevMatch;
1063             }
1064             return -1;
1065         }
1066         case 19:
1067         {
1068             Lexeme prevMatch = token.match;
1069             token.match = lexeme;
1070             int tokenId = GetTokenId(8);
1071             if (tokenId == CONTINUE_TOKEN)
1072             {
1073                 token.id = tokenId;
1074                 return -1;
1075             }
1076             else if (tokenId != INVALID_TOKEN)
1077             {
1078                 token.id = tokenId;
1079             }
1080             else
1081             {
1082                 token.match = prevMatch;
1083             }
1084             switch (i)
1085             {
1086                 case 28:
1087                 case 32:
1088                 case 36:
1089                 {
1090                     return 19;
1091                 }
1092                 case 12:
1093                 {
1094                     return 51;
1095                 }
1096                 case 15:
1097                 case 16:
1098                 case 17:
1099                 case 18:
1100                 case 19:
1101                 case 20:
1102                 case 24:
1103                 case 25:
1104                 case 26:
1105                 case 27:
1106                 case 29:
1107                 case 33:
1108                 case 34:
1109                 case 35:
1110                 case 37:
1111                 {
1112                     return 52;
1113                 }
1114                 case 21:
1115                 {
1116                     return 53;
1117                 }
1118                 case 30:
1119                 case 31:
1120                 {
1121                     return 54;
1122                 }
1123                 default:
1124                 {
1125                     return -1;
1126                 }
1127             }
1128         }
1129         case 54:
1130         {
1131             Lexeme prevMatch = token.match;
1132             token.match = lexeme;
1133             int tokenId = GetTokenId(8);
1134             if (tokenId == CONTINUE_TOKEN)
1135             {
1136                 token.id = tokenId;
1137                 return -1;
1138             }
1139             else if (tokenId != INVALID_TOKEN)
1140             {
1141                 token.id = tokenId;
1142             }
1143             else
1144             {
1145                 token.match = prevMatch;
1146             }
1147             switch (i)
1148             {
1149                 case 15:
1150                 case 16:
1151                 case 17:
1152                 case 18:
1153                 case 19:
1154                 case 20:
1155                 case 24:
1156                 case 25:
1157                 case 26:
1158                 case 27:
1159                 case 29:
1160                 case 33:
1161                 case 34:
1162                 case 35:
1163                 case 37:
1164                 {
1165                     return 52;
1166                 }
1167                 case 21:
1168                 {
1169                     return 53;
1170                 }
1171                 case 30:
1172                 case 31:
1173                 {
1174                     return 54;
1175                 }
1176                 case 13:
1177                 {
1178                     return 55;
1179                 }
1180                 case 14:
1181                 {
1182                     return 56;
1183                 }
1184                 default:
1185                 {
1186                     return -1;
1187                 }
1188             }
1189         }
1190         case 56:
1191         {
1192             Lexeme prevMatch = token.match;
1193             token.match = lexeme;
1194             int tokenId = GetTokenId(8);
1195             if (tokenId == CONTINUE_TOKEN)
1196             {
1197                 token.id = tokenId;
1198                 return -1;
1199             }
1200             else if (tokenId != INVALID_TOKEN)
1201             {
1202                 token.id = tokenId;
1203             }
1204             else
1205             {
1206                 token.match = prevMatch;
1207             }
1208             switch (i)
1209             {
1210                 case 15:
1211                 case 16:
1212                 case 17:
1213                 case 18:
1214                 case 19:
1215                 case 20:
1216                 case 24:
1217                 case 25:
1218                 case 26:
1219                 case 27:
1220                 case 29:
1221                 case 33:
1222                 case 34:
1223                 case 35:
1224                 case 37:
1225                 {
1226                     return 52;
1227                 }
1228                 case 21:
1229                 {
1230                     return 53;
1231                 }
1232                 case 30:
1233                 case 31:
1234                 {
1235                     return 54;
1236                 }
1237                 default:
1238                 {
1239                     return -1;
1240                 }
1241             }
1242         }
1243         case 55:
1244         {
1245             Lexeme prevMatch = token.match;
1246             token.match = lexeme;
1247             int tokenId = GetTokenId(8);
1248             if (tokenId == CONTINUE_TOKEN)
1249             {
1250                 token.id = tokenId;
1251                 return -1;
1252             }
1253             else if (tokenId != INVALID_TOKEN)
1254             {
1255                 token.id = tokenId;
1256             }
1257             else
1258             {
1259                 token.match = prevMatch;
1260             }
1261             switch (i)
1262             {
1263                 case 15:
1264                 case 16:
1265                 case 17:
1266                 case 18:
1267                 case 19:
1268                 case 20:
1269                 case 24:
1270                 case 25:
1271                 case 26:
1272                 case 27:
1273                 case 29:
1274                 case 33:
1275                 case 34:
1276                 case 35:
1277                 case 37:
1278                 {
1279                     return 52;
1280                 }
1281                 case 21:
1282                 {
1283                     return 53;
1284                 }
1285                 case 30:
1286                 case 31:
1287                 {
1288                     return 54;
1289                 }
1290                 default:
1291                 {
1292                     return -1;
1293                 }
1294             }
1295         }
1296         case 53:
1297         {
1298             switch (i)
1299             {
1300                 case 17:
1301                 {
1302                     return 57;
1303                 }
1304                 case 18:
1305                 {
1306                     return 58;
1307                 }
1308                 default:
1309                 {
1310                     return -1;
1311                 }
1312             }
1313         }
1314         case 58:
1315         {
1316             switch (i)
1317             {
1318                 case 28:
1319                 case 29:
1320                 case 30:
1321                 case 31:
1322                 case 32:
1323                 case 33:
1324                 case 34:
1325                 case 35:
1326                 case 36:
1327                 {
1328                     return 59;
1329                 }
1330                 default:
1331                 {
1332                     return -1;
1333                 }
1334             }
1335         }
1336         case 59:
1337         {
1338             switch (i)
1339             {
1340                 case 28:
1341                 case 29:
1342                 case 30:
1343                 case 31:
1344                 case 32:
1345                 case 33:
1346                 case 34:
1347                 case 35:
1348                 case 36:
1349                 {
1350                     return 60;
1351                 }
1352                 default:
1353                 {
1354                     return -1;
1355                 }
1356             }
1357         }
1358         case 60:
1359         {
1360             switch (i)
1361             {
1362                 case 28:
1363                 case 29:
1364                 case 30:
1365                 case 31:
1366                 case 32:
1367                 case 33:
1368                 case 34:
1369                 case 35:
1370                 case 36:
1371                 {
1372                     return 61;
1373                 }
1374                 default:
1375                 {
1376                     return -1;
1377                 }
1378             }
1379         }
1380         case 61:
1381         {
1382             switch (i)
1383             {
1384                 case 28:
1385                 case 29:
1386                 case 30:
1387                 case 31:
1388                 case 32:
1389                 case 33:
1390                 case 34:
1391                 case 35:
1392                 case 36:
1393                 {
1394                     return 62;
1395                 }
1396                 default:
1397                 {
1398                     return -1;
1399                 }
1400             }
1401         }
1402         case 62:
1403         {
1404             switch (i)
1405             {
1406                 case 28:
1407                 case 29:
1408                 case 30:
1409                 case 31:
1410                 case 32:
1411                 case 33:
1412                 case 34:
1413                 case 35:
1414                 case 36:
1415                 {
1416                     return 63;
1417                 }
1418                 default:
1419                 {
1420                     return -1;
1421                 }
1422             }
1423         }
1424         case 63:
1425         {
1426             switch (i)
1427             {
1428                 case 28:
1429                 case 29:
1430                 case 30:
1431                 case 31:
1432                 case 32:
1433                 case 33:
1434                 case 34:
1435                 case 35:
1436                 case 36:
1437                 {
1438                     return 64;
1439                 }
1440                 default:
1441                 {
1442                     return -1;
1443                 }
1444             }
1445         }
1446         case 64:
1447         {
1448             switch (i)
1449             {
1450                 case 28:
1451                 case 29:
1452                 case 30:
1453                 case 31:
1454                 case 32:
1455                 case 33:
1456                 case 34:
1457                 case 35:
1458                 case 36:
1459                 {
1460                     return 65;
1461                 }
1462                 default:
1463                 {
1464                     return -1;
1465                 }
1466             }
1467         }
1468         case 65:
1469         {
1470             switch (i)
1471             {
1472                 case 28:
1473                 case 29:
1474                 case 30:
1475                 case 31:
1476                 case 32:
1477                 case 33:
1478                 case 34:
1479                 case 35:
1480                 case 36:
1481                 {
1482                     return 66;
1483                 }
1484                 default:
1485                 {
1486                     return -1;
1487                 }
1488             }
1489         }
1490         case 66:
1491         {
1492             Lexeme prevMatch = token.match;
1493             token.match = lexeme;
1494             int tokenId = GetTokenId(8);
1495             if (tokenId == CONTINUE_TOKEN)
1496             {
1497                 token.id = tokenId;
1498                 return -1;
1499             }
1500             else if (tokenId != INVALID_TOKEN)
1501             {
1502                 token.id = tokenId;
1503             }
1504             else
1505             {
1506                 token.match = prevMatch;
1507             }
1508             switch (i)
1509             {
1510                 case 15:
1511                 case 16:
1512                 case 17:
1513                 case 18:
1514                 case 19:
1515                 case 20:
1516                 case 24:
1517                 case 25:
1518                 case 26:
1519                 case 27:
1520                 case 29:
1521                 case 33:
1522                 case 34:
1523                 case 35:
1524                 case 37:
1525                 {
1526                     return 52;
1527                 }
1528                 case 21:
1529                 {
1530                     return 53;
1531                 }
1532                 case 30:
1533                 case 31:
1534                 {
1535                     return 54;
1536                 }
1537                 default:
1538                 {
1539                     return -1;
1540                 }
1541             }
1542         }
1543         case 57:
1544         {
1545             switch (i)
1546             {
1547                 case 28:
1548                 case 29:
1549                 case 30:
1550                 case 31:
1551                 case 32:
1552                 case 33:
1553                 case 34:
1554                 case 35:
1555                 case 36:
1556                 {
1557                     return 67;
1558                 }
1559                 default:
1560                 {
1561                     return -1;
1562                 }
1563             }
1564         }
1565         case 67:
1566         {
1567             switch (i)
1568             {
1569                 case 28:
1570                 case 29:
1571                 case 30:
1572                 case 31:
1573                 case 32:
1574                 case 33:
1575                 case 34:
1576                 case 35:
1577                 case 36:
1578                 {
1579                     return 68;
1580                 }
1581                 default:
1582                 {
1583                     return -1;
1584                 }
1585             }
1586         }
1587         case 68:
1588         {
1589             switch (i)
1590             {
1591                 case 28:
1592                 case 29:
1593                 case 30:
1594                 case 31:
1595                 case 32:
1596                 case 33:
1597                 case 34:
1598                 case 35:
1599                 case 36:
1600                 {
1601                     return 69;
1602                 }
1603                 default:
1604                 {
1605                     return -1;
1606                 }
1607             }
1608         }
1609         case 69:
1610         {
1611             switch (i)
1612             {
1613                 case 28:
1614                 case 29:
1615                 case 30:
1616                 case 31:
1617                 case 32:
1618                 case 33:
1619                 case 34:
1620                 case 35:
1621                 case 36:
1622                 {
1623                     return 70;
1624                 }
1625                 default:
1626                 {
1627                     return -1;
1628                 }
1629             }
1630         }
1631         case 70:
1632         {
1633             Lexeme prevMatch = token.match;
1634             token.match = lexeme;
1635             int tokenId = GetTokenId(8);
1636             if (tokenId == CONTINUE_TOKEN)
1637             {
1638                 token.id = tokenId;
1639                 return -1;
1640             }
1641             else if (tokenId != INVALID_TOKEN)
1642             {
1643                 token.id = tokenId;
1644             }
1645             else
1646             {
1647                 token.match = prevMatch;
1648             }
1649             switch (i)
1650             {
1651                 case 15:
1652                 case 16:
1653                 case 17:
1654                 case 18:
1655                 case 19:
1656                 case 20:
1657                 case 24:
1658                 case 25:
1659                 case 26:
1660                 case 27:
1661                 case 29:
1662                 case 33:
1663                 case 34:
1664                 case 35:
1665                 case 37:
1666                 {
1667                     return 52;
1668                 }
1669                 case 21:
1670                 {
1671                     return 53;
1672                 }
1673                 case 30:
1674                 case 31:
1675                 {
1676                     return 54;
1677                 }
1678                 default:
1679                 {
1680                     return -1;
1681                 }
1682             }
1683         }
1684         case 52:
1685         {
1686             Lexeme prevMatch = token.match;
1687             token.match = lexeme;
1688             int tokenId = GetTokenId(8);
1689             if (tokenId == CONTINUE_TOKEN)
1690             {
1691                 token.id = tokenId;
1692                 return -1;
1693             }
1694             else if (tokenId != INVALID_TOKEN)
1695             {
1696                 token.id = tokenId;
1697             }
1698             else
1699             {
1700                 token.match = prevMatch;
1701             }
1702             switch (i)
1703             {
1704                 case 15:
1705                 case 16:
1706                 case 17:
1707                 case 18:
1708                 case 19:
1709                 case 20:
1710                 case 24:
1711                 case 25:
1712                 case 26:
1713                 case 27:
1714                 case 29:
1715                 case 33:
1716                 case 34:
1717                 case 35:
1718                 case 37:
1719                 {
1720                     return 52;
1721                 }
1722                 case 21:
1723                 {
1724                     return 53;
1725                 }
1726                 case 30:
1727                 case 31:
1728                 {
1729                     return 54;
1730                 }
1731                 default:
1732                 {
1733                     return -1;
1734                 }
1735             }
1736         }
1737         case 51:
1738         {
1739             Lexeme prevMatch = token.match;
1740             token.match = lexeme;
1741             int tokenId = GetTokenId(8);
1742             if (tokenId == CONTINUE_TOKEN)
1743             {
1744                 token.id = tokenId;
1745                 return -1;
1746             }
1747             else if (tokenId != INVALID_TOKEN)
1748             {
1749                 token.id = tokenId;
1750             }
1751             else
1752             {
1753                 token.match = prevMatch;
1754             }
1755             switch (i)
1756             {
1757                 case 15:
1758                 case 16:
1759                 case 17:
1760                 case 18:
1761                 case 19:
1762                 case 20:
1763                 case 24:
1764                 case 25:
1765                 case 26:
1766                 case 27:
1767                 case 29:
1768                 case 33:
1769                 case 34:
1770                 case 35:
1771                 case 37:
1772                 {
1773                     return 52;
1774                 }
1775                 case 21:
1776                 {
1777                     return 53;
1778                 }
1779                 case 30:
1780                 case 31:
1781                 {
1782                     return 54;
1783                 }
1784                 default:
1785                 {
1786                     return -1;
1787                 }
1788             }
1789         }
1790         case 18:
1791         {
1792             Lexeme prevMatch = token.match;
1793             token.match = lexeme;
1794             int tokenId = GetTokenId(25);
1795             if (tokenId == CONTINUE_TOKEN)
1796             {
1797                 token.id = tokenId;
1798                 return -1;
1799             }
1800             else if (tokenId != INVALID_TOKEN)
1801             {
1802                 token.id = tokenId;
1803             }
1804             else
1805             {
1806                 token.match = prevMatch;
1807             }
1808             return -1;
1809         }
1810         case 17:
1811         {
1812             switch (i)
1813             {
1814                 case 2:
1815                 case 3:
1816                 case 4:
1817                 case 5:
1818                 case 6:
1819                 case 7:
1820                 case 8:
1821                 case 9:
1822                 case 10:
1823                 case 11:
1824                 case 12:
1825                 case 13:
1826                 case 14:
1827                 case 15:
1828                 case 16:
1829                 case 17:
1830                 case 18:
1831                 case 19:
1832                 case 20:
1833                 case 23:
1834                 case 24:
1835                 case 25:
1836                 case 26:
1837                 case 27:
1838                 case 28:
1839                 case 29:
1840                 case 30:
1841                 case 31:
1842                 case 32:
1843                 case 33:
1844                 case 34:
1845                 case 35:
1846                 case 36:
1847                 case 37:
1848                 case 38:
1849                 case 39:
1850                 case 40:
1851                 case 41:
1852                 case 42:
1853                 case 43:
1854                 case 44:
1855                 case 45:
1856                 case 46:
1857                 case 47:
1858                 case 48:
1859                 case 49:
1860                 case 50:
1861                 case 51:
1862                 case 52:
1863                 case 53:
1864                 case 54:
1865                 {
1866                     return 71;
1867                 }
1868                 case 21:
1869                 {
1870                     return 72;
1871                 }
1872                 case 22:
1873                 {
1874                     return 73;
1875                 }
1876                 default:
1877                 {
1878                     return -1;
1879                 }
1880             }
1881         }
1882         case 73:
1883         {
1884             Lexeme prevMatch = token.match;
1885             token.match = lexeme;
1886             int tokenId = GetTokenId(9);
1887             if (tokenId == CONTINUE_TOKEN)
1888             {
1889                 token.id = tokenId;
1890                 return -1;
1891             }
1892             else if (tokenId != INVALID_TOKEN)
1893             {
1894                 token.id = tokenId;
1895             }
1896             else
1897             {
1898                 token.match = prevMatch;
1899             }
1900             return -1;
1901         }
1902         case 72:
1903         {
1904             switch (i)
1905             {
1906                 case 2:
1907                 case 21:
1908                 case 22:
1909                 case 23:
1910                 case 24:
1911                 case 25:
1912                 case 26:
1913                 case 27:
1914                 case 33:
1915                 case 34:
1916                 case 35:
1917                 {
1918                     return 74;
1919                 }
1920                 case 17:
1921                 {
1922                     return 75;
1923                 }
1924                 case 18:
1925                 {
1926                     return 76;
1927                 }
1928                 case 20:
1929                 {
1930                     return 77;
1931                 }
1932                 case 36:
1933                 {
1934                     return 78;
1935                 }
1936                 default:
1937                 {
1938                     return -1;
1939                 }
1940             }
1941         }
1942         case 78:
1943         {
1944             switch (i)
1945             {
1946                 case 2:
1947                 case 3:
1948                 case 4:
1949                 case 5:
1950                 case 6:
1951                 case 7:
1952                 case 8:
1953                 case 9:
1954                 case 10:
1955                 case 11:
1956                 case 12:
1957                 case 13:
1958                 case 14:
1959                 case 15:
1960                 case 16:
1961                 case 17:
1962                 case 18:
1963                 case 19:
1964                 case 20:
1965                 case 23:
1966                 case 24:
1967                 case 25:
1968                 case 26:
1969                 case 27:
1970                 case 28:
1971                 case 29:
1972                 case 30:
1973                 case 31:
1974                 case 32:
1975                 case 33:
1976                 case 34:
1977                 case 35:
1978                 case 37:
1979                 case 38:
1980                 case 39:
1981                 case 40:
1982                 case 41:
1983                 case 42:
1984                 case 43:
1985                 case 44:
1986                 case 45:
1987                 case 46:
1988                 case 47:
1989                 case 48:
1990                 case 49:
1991                 case 50:
1992                 case 51:
1993                 case 52:
1994                 case 53:
1995                 case 54:
1996                 {
1997                     return 71;
1998                 }
1999                 case 21:
2000                 {
2001                     return 72;
2002                 }
2003                 case 22:
2004                 {
2005                     return 73;
2006                 }
2007                 case 36:
2008                 {
2009                     return 79;
2010                 }
2011                 default:
2012                 {
2013                     return -1;
2014                 }
2015             }
2016         }
2017         case 79:
2018         {
2019             switch (i)
2020             {
2021                 case 2:
2022                 case 3:
2023                 case 4:
2024                 case 5:
2025                 case 6:
2026                 case 7:
2027                 case 8:
2028                 case 9:
2029                 case 10:
2030                 case 11:
2031                 case 12:
2032                 case 13:
2033                 case 14:
2034                 case 15:
2035                 case 16:
2036                 case 17:
2037                 case 18:
2038                 case 19:
2039                 case 20:
2040                 case 23:
2041                 case 24:
2042                 case 25:
2043                 case 26:
2044                 case 27:
2045                 case 28:
2046                 case 29:
2047                 case 30:
2048                 case 31:
2049                 case 32:
2050                 case 33:
2051                 case 34:
2052                 case 35:
2053                 case 37:
2054                 case 38:
2055                 case 39:
2056                 case 40:
2057                 case 41:
2058                 case 42:
2059                 case 43:
2060                 case 44:
2061                 case 45:
2062                 case 46:
2063                 case 47:
2064                 case 48:
2065                 case 49:
2066                 case 50:
2067                 case 51:
2068                 case 52:
2069                 case 53:
2070                 case 54:
2071                 {
2072                     return 71;
2073                 }
2074                 case 21:
2075                 {
2076                     return 72;
2077                 }
2078                 case 22:
2079                 {
2080                     return 73;
2081                 }
2082                 case 36:
2083                 {
2084                     return 80;
2085                 }
2086                 default:
2087                 {
2088                     return -1;
2089                 }
2090             }
2091         }
2092         case 80:
2093         {
2094             switch (i)
2095             {
2096                 case 2:
2097                 case 3:
2098                 case 4:
2099                 case 5:
2100                 case 6:
2101                 case 7:
2102                 case 8:
2103                 case 9:
2104                 case 10:
2105                 case 11:
2106                 case 12:
2107                 case 13:
2108                 case 14:
2109                 case 15:
2110                 case 16:
2111                 case 17:
2112                 case 18:
2113                 case 19:
2114                 case 20:
2115                 case 23:
2116                 case 24:
2117                 case 25:
2118                 case 26:
2119                 case 27:
2120                 case 28:
2121                 case 29:
2122                 case 30:
2123                 case 31:
2124                 case 32:
2125                 case 33:
2126                 case 34:
2127                 case 35:
2128                 case 36:
2129                 case 37:
2130                 case 38:
2131                 case 39:
2132                 case 40:
2133                 case 41:
2134                 case 42:
2135                 case 43:
2136                 case 44:
2137                 case 45:
2138                 case 46:
2139                 case 47:
2140                 case 48:
2141                 case 49:
2142                 case 50:
2143                 case 51:
2144                 case 52:
2145                 case 53:
2146                 case 54:
2147                 {
2148                     return 71;
2149                 }
2150                 case 21:
2151                 {
2152                     return 72;
2153                 }
2154                 case 22:
2155                 {
2156                     return 73;
2157                 }
2158                 default:
2159                 {
2160                     return -1;
2161                 }
2162             }
2163         }
2164         case 77:
2165         {
2166             switch (i)
2167             {
2168                 case 28:
2169                 case 29:
2170                 case 30:
2171                 case 31:
2172                 case 32:
2173                 case 33:
2174                 case 34:
2175                 case 35:
2176                 case 36:
2177                 {
2178                     return 81;
2179                 }
2180                 default:
2181                 {
2182                     return -1;
2183                 }
2184             }
2185         }
2186         case 81:
2187         {
2188             switch (i)
2189             {
2190                 case 2:
2191                 case 3:
2192                 case 4:
2193                 case 5:
2194                 case 6:
2195                 case 7:
2196                 case 8:
2197                 case 9:
2198                 case 10:
2199                 case 11:
2200                 case 12:
2201                 case 13:
2202                 case 14:
2203                 case 15:
2204                 case 16:
2205                 case 17:
2206                 case 18:
2207                 case 19:
2208                 case 20:
2209                 case 23:
2210                 case 24:
2211                 case 25:
2212                 case 26:
2213                 case 27:
2214                 case 37:
2215                 case 38:
2216                 case 39:
2217                 case 40:
2218                 case 41:
2219                 case 42:
2220                 case 43:
2221                 case 44:
2222                 case 45:
2223                 case 46:
2224                 case 47:
2225                 case 48:
2226                 case 49:
2227                 case 50:
2228                 case 51:
2229                 case 52:
2230                 case 53:
2231                 case 54:
2232                 {
2233                     return 71;
2234                 }
2235                 case 21:
2236                 {
2237                     return 72;
2238                 }
2239                 case 22:
2240                 {
2241                     return 73;
2242                 }
2243                 case 28:
2244                 case 29:
2245                 case 30:
2246                 case 31:
2247                 case 32:
2248                 case 33:
2249                 case 34:
2250                 case 35:
2251                 case 36:
2252                 {
2253                     return 81;
2254                 }
2255                 default:
2256                 {
2257                     return -1;
2258                 }
2259             }
2260         }
2261         case 76:
2262         {
2263             switch (i)
2264             {
2265                 case 28:
2266                 case 29:
2267                 case 30:
2268                 case 31:
2269                 case 32:
2270                 case 33:
2271                 case 34:
2272                 case 35:
2273                 case 36:
2274                 {
2275                     return 82;
2276                 }
2277                 default:
2278                 {
2279                     return -1;
2280                 }
2281             }
2282         }
2283         case 82:
2284         {
2285             switch (i)
2286             {
2287                 case 28:
2288                 case 29:
2289                 case 30:
2290                 case 31:
2291                 case 32:
2292                 case 33:
2293                 case 34:
2294                 case 35:
2295                 case 36:
2296                 {
2297                     return 83;
2298                 }
2299                 default:
2300                 {
2301                     return -1;
2302                 }
2303             }
2304         }
2305         case 83:
2306         {
2307             switch (i)
2308             {
2309                 case 28:
2310                 case 29:
2311                 case 30:
2312                 case 31:
2313                 case 32:
2314                 case 33:
2315                 case 34:
2316                 case 35:
2317                 case 36:
2318                 {
2319                     return 84;
2320                 }
2321                 default:
2322                 {
2323                     return -1;
2324                 }
2325             }
2326         }
2327         case 84:
2328         {
2329             switch (i)
2330             {
2331                 case 28:
2332                 case 29:
2333                 case 30:
2334                 case 31:
2335                 case 32:
2336                 case 33:
2337                 case 34:
2338                 case 35:
2339                 case 36:
2340                 {
2341                     return 85;
2342                 }
2343                 default:
2344                 {
2345                     return -1;
2346                 }
2347             }
2348         }
2349         case 85:
2350         {
2351             switch (i)
2352             {
2353                 case 28:
2354                 case 29:
2355                 case 30:
2356                 case 31:
2357                 case 32:
2358                 case 33:
2359                 case 34:
2360                 case 35:
2361                 case 36:
2362                 {
2363                     return 86;
2364                 }
2365                 default:
2366                 {
2367                     return -1;
2368                 }
2369             }
2370         }
2371         case 86:
2372         {
2373             switch (i)
2374             {
2375                 case 28:
2376                 case 29:
2377                 case 30:
2378                 case 31:
2379                 case 32:
2380                 case 33:
2381                 case 34:
2382                 case 35:
2383                 case 36:
2384                 {
2385                     return 87;
2386                 }
2387                 default:
2388                 {
2389                     return -1;
2390                 }
2391             }
2392         }
2393         case 87:
2394         {
2395             switch (i)
2396             {
2397                 case 28:
2398                 case 29:
2399                 case 30:
2400                 case 31:
2401                 case 32:
2402                 case 33:
2403                 case 34:
2404                 case 35:
2405                 case 36:
2406                 {
2407                     return 88;
2408                 }
2409                 default:
2410                 {
2411                     return -1;
2412                 }
2413             }
2414         }
2415         case 88:
2416         {
2417             switch (i)
2418             {
2419                 case 28:
2420                 case 29:
2421                 case 30:
2422                 case 31:
2423                 case 32:
2424                 case 33:
2425                 case 34:
2426                 case 35:
2427                 case 36:
2428                 {
2429                     return 89;
2430                 }
2431                 default:
2432                 {
2433                     return -1;
2434                 }
2435             }
2436         }
2437         case 89:
2438         {
2439             switch (i)
2440             {
2441                 case 2:
2442                 case 3:
2443                 case 4:
2444                 case 5:
2445                 case 6:
2446                 case 7:
2447                 case 8:
2448                 case 9:
2449                 case 10:
2450                 case 11:
2451                 case 12:
2452                 case 13:
2453                 case 14:
2454                 case 15:
2455                 case 16:
2456                 case 17:
2457                 case 18:
2458                 case 19:
2459                 case 20:
2460                 case 23:
2461                 case 24:
2462                 case 25:
2463                 case 26:
2464                 case 27:
2465                 case 28:
2466                 case 29:
2467                 case 30:
2468                 case 31:
2469                 case 32:
2470                 case 33:
2471                 case 34:
2472                 case 35:
2473                 case 36:
2474                 case 37:
2475                 case 38:
2476                 case 39:
2477                 case 40:
2478                 case 41:
2479                 case 42:
2480                 case 43:
2481                 case 44:
2482                 case 45:
2483                 case 46:
2484                 case 47:
2485                 case 48:
2486                 case 49:
2487                 case 50:
2488                 case 51:
2489                 case 52:
2490                 case 53:
2491                 case 54:
2492                 {
2493                     return 71;
2494                 }
2495                 case 21:
2496                 {
2497                     return 72;
2498                 }
2499                 case 22:
2500                 {
2501                     return 73;
2502                 }
2503                 default:
2504                 {
2505                     return -1;
2506                 }
2507             }
2508         }
2509         case 75:
2510         {
2511             switch (i)
2512             {
2513                 case 28:
2514                 case 29:
2515                 case 30:
2516                 case 31:
2517                 case 32:
2518                 case 33:
2519                 case 34:
2520                 case 35:
2521                 case 36:
2522                 {
2523                     return 90;
2524                 }
2525                 default:
2526                 {
2527                     return -1;
2528                 }
2529             }
2530         }
2531         case 90:
2532         {
2533             switch (i)
2534             {
2535                 case 28:
2536                 case 29:
2537                 case 30:
2538                 case 31:
2539                 case 32:
2540                 case 33:
2541                 case 34:
2542                 case 35:
2543                 case 36:
2544                 {
2545                     return 91;
2546                 }
2547                 default:
2548                 {
2549                     return -1;
2550                 }
2551             }
2552         }
2553         case 91:
2554         {
2555             switch (i)
2556             {
2557                 case 28:
2558                 case 29:
2559                 case 30:
2560                 case 31:
2561                 case 32:
2562                 case 33:
2563                 case 34:
2564                 case 35:
2565                 case 36:
2566                 {
2567                     return 92;
2568                 }
2569                 default:
2570                 {
2571                     return -1;
2572                 }
2573             }
2574         }
2575         case 92:
2576         {
2577             switch (i)
2578             {
2579                 case 28:
2580                 case 29:
2581                 case 30:
2582                 case 31:
2583                 case 32:
2584                 case 33:
2585                 case 34:
2586                 case 35:
2587                 case 36:
2588                 {
2589                     return 93;
2590                 }
2591                 default:
2592                 {
2593                     return -1;
2594                 }
2595             }
2596         }
2597         case 93:
2598         {
2599             switch (i)
2600             {
2601                 case 2:
2602                 case 3:
2603                 case 4:
2604                 case 5:
2605                 case 6:
2606                 case 7:
2607                 case 8:
2608                 case 9:
2609                 case 10:
2610                 case 11:
2611                 case 12:
2612                 case 13:
2613                 case 14:
2614                 case 15:
2615                 case 16:
2616                 case 17:
2617                 case 18:
2618                 case 19:
2619                 case 20:
2620                 case 23:
2621                 case 24:
2622                 case 25:
2623                 case 26:
2624                 case 27:
2625                 case 28:
2626                 case 29:
2627                 case 30:
2628                 case 31:
2629                 case 32:
2630                 case 33:
2631                 case 34:
2632                 case 35:
2633                 case 36:
2634                 case 37:
2635                 case 38:
2636                 case 39:
2637                 case 40:
2638                 case 41:
2639                 case 42:
2640                 case 43:
2641                 case 44:
2642                 case 45:
2643                 case 46:
2644                 case 47:
2645                 case 48:
2646                 case 49:
2647                 case 50:
2648                 case 51:
2649                 case 52:
2650                 case 53:
2651                 case 54:
2652                 {
2653                     return 71;
2654                 }
2655                 case 21:
2656                 {
2657                     return 72;
2658                 }
2659                 case 22:
2660                 {
2661                     return 73;
2662                 }
2663                 default:
2664                 {
2665                     return -1;
2666                 }
2667             }
2668         }
2669         case 74:
2670         {
2671             switch (i)
2672             {
2673                 case 2:
2674                 case 3:
2675                 case 4:
2676                 case 5:
2677                 case 6:
2678                 case 7:
2679                 case 8:
2680                 case 9:
2681                 case 10:
2682                 case 11:
2683                 case 12:
2684                 case 13:
2685                 case 14:
2686                 case 15:
2687                 case 16:
2688                 case 17:
2689                 case 18:
2690                 case 19:
2691                 case 20:
2692                 case 23:
2693                 case 24:
2694                 case 25:
2695                 case 26:
2696                 case 27:
2697                 case 28:
2698                 case 29:
2699                 case 30:
2700                 case 31:
2701                 case 32:
2702                 case 33:
2703                 case 34:
2704                 case 35:
2705                 case 36:
2706                 case 37:
2707                 case 38:
2708                 case 39:
2709                 case 40:
2710                 case 41:
2711                 case 42:
2712                 case 43:
2713                 case 44:
2714                 case 45:
2715                 case 46:
2716                 case 47:
2717                 case 48:
2718                 case 49:
2719                 case 50:
2720                 case 51:
2721                 case 52:
2722                 case 53:
2723                 case 54:
2724                 {
2725                     return 71;
2726                 }
2727                 case 21:
2728                 {
2729                     return 72;
2730                 }
2731                 case 22:
2732                 {
2733                     return 73;
2734                 }
2735                 default:
2736                 {
2737                     return -1;
2738                 }
2739             }
2740         }
2741         case 71:
2742         {
2743             switch (i)
2744             {
2745                 case 2:
2746                 case 3:
2747                 case 4:
2748                 case 5:
2749                 case 6:
2750                 case 7:
2751                 case 8:
2752                 case 9:
2753                 case 10:
2754                 case 11:
2755                 case 12:
2756                 case 13:
2757                 case 14:
2758                 case 15:
2759                 case 16:
2760                 case 17:
2761                 case 18:
2762                 case 19:
2763                 case 20:
2764                 case 23:
2765                 case 24:
2766                 case 25:
2767                 case 26:
2768                 case 27:
2769                 case 28:
2770                 case 29:
2771                 case 30:
2772                 case 31:
2773                 case 32:
2774                 case 33:
2775                 case 34:
2776                 case 35:
2777                 case 36:
2778                 case 37:
2779                 case 38:
2780                 case 39:
2781                 case 40:
2782                 case 41:
2783                 case 42:
2784                 case 43:
2785                 case 44:
2786                 case 45:
2787                 case 46:
2788                 case 47:
2789                 case 48:
2790                 case 49:
2791                 case 50:
2792                 case 51:
2793                 case 52:
2794                 case 53:
2795                 case 54:
2796                 {
2797                     return 71;
2798                 }
2799                 case 21:
2800                 {
2801                     return 72;
2802                 }
2803                 case 22:
2804                 {
2805                     return 73;
2806                 }
2807                 default:
2808                 {
2809                     return -1;
2810                 }
2811             }
2812         }
2813         case 16:
2814         {
2815             switch (i)
2816             {
2817                 case 0:
2818                 {
2819                     return 94;
2820                 }
2821                 case 1:
2822                 {
2823                     return 95;
2824                 }
2825                 default:
2826                 {
2827                     return -1;
2828                 }
2829             }
2830         }
2831         case 95:
2832         {
2833             Lexeme prevMatch = token.match;
2834             token.match = lexeme;
2835             int tokenId = GetTokenId(1);
2836             if (tokenId == CONTINUE_TOKEN)
2837             {
2838                 token.id = tokenId;
2839                 return -1;
2840             }
2841             else if (tokenId != INVALID_TOKEN)
2842             {
2843                 token.id = tokenId;
2844             }
2845             else
2846             {
2847                 token.match = prevMatch;
2848             }
2849             return -1;
2850         }
2851         case 94:
2852         {
2853             Lexeme prevMatch = token.match;
2854             token.match = lexeme;
2855             int tokenId = GetTokenId(1);
2856             if (tokenId == CONTINUE_TOKEN)
2857             {
2858                 token.id = tokenId;
2859                 return -1;
2860             }
2861             else if (tokenId != INVALID_TOKEN)
2862             {
2863                 token.id = tokenId;
2864             }
2865             else
2866             {
2867                 token.match = prevMatch;
2868             }
2869             switch (i)
2870             {
2871                 case 1:
2872                 {
2873                     return 96;
2874                 }
2875                 default:
2876                 {
2877                     return -1;
2878                 }
2879             }
2880         }
2881         case 96:
2882         {
2883             Lexeme prevMatch = token.match;
2884             token.match = lexeme;
2885             int tokenId = GetTokenId(1);
2886             if (tokenId == CONTINUE_TOKEN)
2887             {
2888                 token.id = tokenId;
2889                 return -1;
2890             }
2891             else if (tokenId != INVALID_TOKEN)
2892             {
2893                 token.id = tokenId;
2894             }
2895             else
2896             {
2897                 token.match = prevMatch;
2898             }
2899             return -1;
2900         }
2901         case 15:
2902         {
2903             Lexeme prevMatch = token.match;
2904             token.match = lexeme;
2905             int tokenId = GetTokenId(5);
2906             if (tokenId == CONTINUE_TOKEN)
2907             {
2908                 token.id = tokenId;
2909                 return -1;
2910             }
2911             else if (tokenId != INVALID_TOKEN)
2912             {
2913                 token.id = tokenId;
2914             }
2915             else
2916             {
2917                 token.match = prevMatch;
2918             }
2919             switch (i)
2920             {
2921                 case 22:
2922                 {
2923                     return 17;
2924                 }
2925                 case 5:
2926                 case 6:
2927                 case 15:
2928                 case 16:
2929                 case 17:
2930                 case 18:
2931                 case 19:
2932                 case 20:
2933                 case 24:
2934                 case 25:
2935                 case 26:
2936                 case 27:
2937                 case 28:
2938                 case 29:
2939                 case 30:
2940                 case 31:
2941                 case 32:
2942                 case 33:
2943                 case 34:
2944                 case 35:
2945                 case 36:
2946                 {
2947                     return 48;
2948                 }
2949                 case 2:
2950                 {
2951                     return 97;
2952                 }
2953                 case 37:
2954                 {
2955                     return 98;
2956                 }
2957                 default:
2958                 {
2959                     return -1;
2960                 }
2961             }
2962         }
2963         case 98:
2964         {
2965             Lexeme prevMatch = token.match;
2966             token.match = lexeme;
2967             int tokenId = GetTokenId(5);
2968             if (tokenId == CONTINUE_TOKEN)
2969             {
2970                 token.id = tokenId;
2971                 return -1;
2972             }
2973             else if (tokenId != INVALID_TOKEN)
2974             {
2975                 token.id = tokenId;
2976             }
2977             else
2978             {
2979                 token.match = prevMatch;
2980             }
2981             switch (i)
2982             {
2983                 case 2:
2984                 {
2985                     return 47;
2986                 }
2987                 case 5:
2988                 case 6:
2989                 case 15:
2990                 case 16:
2991                 case 17:
2992                 case 18:
2993                 case 19:
2994                 case 20:
2995                 case 24:
2996                 case 25:
2997                 case 26:
2998                 case 27:
2999                 case 28:
3000                 case 29:
3001                 case 30:
3002                 case 31:
3003                 case 32:
3004                 case 33:
3005                 case 34:
3006                 case 35:
3007                 case 36:
3008                 case 37:
3009                 {
3010                     return 48;
3011                 }
3012                 default:
3013                 {
3014                     return -1;
3015                 }
3016             }
3017         }
3018         case 97:
3019         {
3020             switch (i)
3021             {
3022                 case 2:
3023                 {
3024                     return 99;
3025                 }
3026                 case 3:
3027                 case 4:
3028                 case 5:
3029                 case 6:
3030                 case 7:
3031                 case 8:
3032                 case 9:
3033                 case 10:
3034                 case 11:
3035                 case 12:
3036                 case 13:
3037                 case 14:
3038                 case 15:
3039                 case 16:
3040                 case 17:
3041                 case 18:
3042                 case 19:
3043                 case 20:
3044                 case 22:
3045                 case 23:
3046                 case 24:
3047                 case 25:
3048                 case 26:
3049                 case 27:
3050                 case 28:
3051                 case 29:
3052                 case 30:
3053                 case 31:
3054                 case 32:
3055                 case 33:
3056                 case 34:
3057                 case 35:
3058                 case 36:
3059                 case 37:
3060                 case 38:
3061                 case 39:
3062                 case 40:
3063                 case 41:
3064                 case 42:
3065                 case 43:
3066                 case 44:
3067                 case 45:
3068                 case 46:
3069                 case 47:
3070                 case 48:
3071                 case 49:
3072                 case 50:
3073                 case 51:
3074                 case 52:
3075                 case 53:
3076                 case 54:
3077                 {
3078                     return 100;
3079                 }
3080                 case 21:
3081                 {
3082                     return 101;
3083                 }
3084                 default:
3085                 {
3086                     return -1;
3087                 }
3088             }
3089         }
3090         case 101:
3091         {
3092             switch (i)
3093             {
3094                 case 2:
3095                 case 21:
3096                 case 22:
3097                 case 23:
3098                 case 24:
3099                 case 25:
3100                 case 26:
3101                 case 27:
3102                 case 33:
3103                 case 34:
3104                 case 35:
3105                 {
3106                     return 102;
3107                 }
3108                 case 17:
3109                 {
3110                     return 103;
3111                 }
3112                 case 18:
3113                 {
3114                     return 104;
3115                 }
3116                 case 20:
3117                 {
3118                     return 105;
3119                 }
3120                 case 36:
3121                 {
3122                     return 106;
3123                 }
3124                 default:
3125                 {
3126                     return -1;
3127                 }
3128             }
3129         }
3130         case 106:
3131         {
3132             switch (i)
3133             {
3134                 case 2:
3135                 {
3136                     return 99;
3137                 }
3138                 case 3:
3139                 case 4:
3140                 case 5:
3141                 case 6:
3142                 case 7:
3143                 case 8:
3144                 case 9:
3145                 case 10:
3146                 case 11:
3147                 case 12:
3148                 case 13:
3149                 case 14:
3150                 case 15:
3151                 case 16:
3152                 case 17:
3153                 case 18:
3154                 case 19:
3155                 case 20:
3156                 case 22:
3157                 case 23:
3158                 case 24:
3159                 case 25:
3160                 case 26:
3161                 case 27:
3162                 case 28:
3163                 case 29:
3164                 case 30:
3165                 case 31:
3166                 case 32:
3167                 case 33:
3168                 case 34:
3169                 case 35:
3170                 case 37:
3171                 case 38:
3172                 case 39:
3173                 case 40:
3174                 case 41:
3175                 case 42:
3176                 case 43:
3177                 case 44:
3178                 case 45:
3179                 case 46:
3180                 case 47:
3181                 case 48:
3182                 case 49:
3183                 case 50:
3184                 case 51:
3185                 case 52:
3186                 case 53:
3187                 case 54:
3188                 {
3189                     return 100;
3190                 }
3191                 case 21:
3192                 {
3193                     return 101;
3194                 }
3195                 case 36:
3196                 {
3197                     return 107;
3198                 }
3199                 default:
3200                 {
3201                     return -1;
3202                 }
3203             }
3204         }
3205         case 107:
3206         {
3207             switch (i)
3208             {
3209                 case 2:
3210                 {
3211                     return 99;
3212                 }
3213                 case 3:
3214                 case 4:
3215                 case 5:
3216                 case 6:
3217                 case 7:
3218                 case 8:
3219                 case 9:
3220                 case 10:
3221                 case 11:
3222                 case 12:
3223                 case 13:
3224                 case 14:
3225                 case 15:
3226                 case 16:
3227                 case 17:
3228                 case 18:
3229                 case 19:
3230                 case 20:
3231                 case 22:
3232                 case 23:
3233                 case 24:
3234                 case 25:
3235                 case 26:
3236                 case 27:
3237                 case 28:
3238                 case 29:
3239                 case 30:
3240                 case 31:
3241                 case 32:
3242                 case 33:
3243                 case 34:
3244                 case 35:
3245                 case 37:
3246                 case 38:
3247                 case 39:
3248                 case 40:
3249                 case 41:
3250                 case 42:
3251                 case 43:
3252                 case 44:
3253                 case 45:
3254                 case 46:
3255                 case 47:
3256                 case 48:
3257                 case 49:
3258                 case 50:
3259                 case 51:
3260                 case 52:
3261                 case 53:
3262                 case 54:
3263                 {
3264                     return 100;
3265                 }
3266                 case 21:
3267                 {
3268                     return 101;
3269                 }
3270                 case 36:
3271                 {
3272                     return 108;
3273                 }
3274                 default:
3275                 {
3276                     return -1;
3277                 }
3278             }
3279         }
3280         case 108:
3281         {
3282             switch (i)
3283             {
3284                 case 2:
3285                 {
3286                     return 99;
3287                 }
3288                 case 3:
3289                 case 4:
3290                 case 5:
3291                 case 6:
3292                 case 7:
3293                 case 8:
3294                 case 9:
3295                 case 10:
3296                 case 11:
3297                 case 12:
3298                 case 13:
3299                 case 14:
3300                 case 15:
3301                 case 16:
3302                 case 17:
3303                 case 18:
3304                 case 19:
3305                 case 20:
3306                 case 22:
3307                 case 23:
3308                 case 24:
3309                 case 25:
3310                 case 26:
3311                 case 27:
3312                 case 28:
3313                 case 29:
3314                 case 30:
3315                 case 31:
3316                 case 32:
3317                 case 33:
3318                 case 34:
3319                 case 35:
3320                 case 36:
3321                 case 37:
3322                 case 38:
3323                 case 39:
3324                 case 40:
3325                 case 41:
3326                 case 42:
3327                 case 43:
3328                 case 44:
3329                 case 45:
3330                 case 46:
3331                 case 47:
3332                 case 48:
3333                 case 49:
3334                 case 50:
3335                 case 51:
3336                 case 52:
3337                 case 53:
3338                 case 54:
3339                 {
3340                     return 100;
3341                 }
3342                 case 21:
3343                 {
3344                     return 101;
3345                 }
3346                 default:
3347                 {
3348                     return -1;
3349                 }
3350             }
3351         }
3352         case 105:
3353         {
3354             switch (i)
3355             {
3356                 case 28:
3357                 case 29:
3358                 case 30:
3359                 case 31:
3360                 case 32:
3361                 case 33:
3362                 case 34:
3363                 case 35:
3364                 case 36:
3365                 {
3366                     return 109;
3367                 }
3368                 default:
3369                 {
3370                     return -1;
3371                 }
3372             }
3373         }
3374         case 109:
3375         {
3376             switch (i)
3377             {
3378                 case 2:
3379                 {
3380                     return 99;
3381                 }
3382                 case 3:
3383                 case 4:
3384                 case 5:
3385                 case 6:
3386                 case 7:
3387                 case 8:
3388                 case 9:
3389                 case 10:
3390                 case 11:
3391                 case 12:
3392                 case 13:
3393                 case 14:
3394                 case 15:
3395                 case 16:
3396                 case 17:
3397                 case 18:
3398                 case 19:
3399                 case 20:
3400                 case 22:
3401                 case 23:
3402                 case 24:
3403                 case 25:
3404                 case 26:
3405                 case 27:
3406                 case 37:
3407                 case 38:
3408                 case 39:
3409                 case 40:
3410                 case 41:
3411                 case 42:
3412                 case 43:
3413                 case 44:
3414                 case 45:
3415                 case 46:
3416                 case 47:
3417                 case 48:
3418                 case 49:
3419                 case 50:
3420                 case 51:
3421                 case 52:
3422                 case 53:
3423                 case 54:
3424                 {
3425                     return 100;
3426                 }
3427                 case 21:
3428                 {
3429                     return 101;
3430                 }
3431                 case 28:
3432                 case 29:
3433                 case 30:
3434                 case 31:
3435                 case 32:
3436                 case 33:
3437                 case 34:
3438                 case 35:
3439                 case 36:
3440                 {
3441                     return 109;
3442                 }
3443                 default:
3444                 {
3445                     return -1;
3446                 }
3447             }
3448         }
3449         case 104:
3450         {
3451             switch (i)
3452             {
3453                 case 28:
3454                 case 29:
3455                 case 30:
3456                 case 31:
3457                 case 32:
3458                 case 33:
3459                 case 34:
3460                 case 35:
3461                 case 36:
3462                 {
3463                     return 110;
3464                 }
3465                 default:
3466                 {
3467                     return -1;
3468                 }
3469             }
3470         }
3471         case 110:
3472         {
3473             switch (i)
3474             {
3475                 case 28:
3476                 case 29:
3477                 case 30:
3478                 case 31:
3479                 case 32:
3480                 case 33:
3481                 case 34:
3482                 case 35:
3483                 case 36:
3484                 {
3485                     return 111;
3486                 }
3487                 default:
3488                 {
3489                     return -1;
3490                 }
3491             }
3492         }
3493         case 111:
3494         {
3495             switch (i)
3496             {
3497                 case 28:
3498                 case 29:
3499                 case 30:
3500                 case 31:
3501                 case 32:
3502                 case 33:
3503                 case 34:
3504                 case 35:
3505                 case 36:
3506                 {
3507                     return 112;
3508                 }
3509                 default:
3510                 {
3511                     return -1;
3512                 }
3513             }
3514         }
3515         case 112:
3516         {
3517             switch (i)
3518             {
3519                 case 28:
3520                 case 29:
3521                 case 30:
3522                 case 31:
3523                 case 32:
3524                 case 33:
3525                 case 34:
3526                 case 35:
3527                 case 36:
3528                 {
3529                     return 113;
3530                 }
3531                 default:
3532                 {
3533                     return -1;
3534                 }
3535             }
3536         }
3537         case 113:
3538         {
3539             switch (i)
3540             {
3541                 case 28:
3542                 case 29:
3543                 case 30:
3544                 case 31:
3545                 case 32:
3546                 case 33:
3547                 case 34:
3548                 case 35:
3549                 case 36:
3550                 {
3551                     return 114;
3552                 }
3553                 default:
3554                 {
3555                     return -1;
3556                 }
3557             }
3558         }
3559         case 114:
3560         {
3561             switch (i)
3562             {
3563                 case 28:
3564                 case 29:
3565                 case 30:
3566                 case 31:
3567                 case 32:
3568                 case 33:
3569                 case 34:
3570                 case 35:
3571                 case 36:
3572                 {
3573                     return 115;
3574                 }
3575                 default:
3576                 {
3577                     return -1;
3578                 }
3579             }
3580         }
3581         case 115:
3582         {
3583             switch (i)
3584             {
3585                 case 28:
3586                 case 29:
3587                 case 30:
3588                 case 31:
3589                 case 32:
3590                 case 33:
3591                 case 34:
3592                 case 35:
3593                 case 36:
3594                 {
3595                     return 116;
3596                 }
3597                 default:
3598                 {
3599                     return -1;
3600                 }
3601             }
3602         }
3603         case 116:
3604         {
3605             switch (i)
3606             {
3607                 case 28:
3608                 case 29:
3609                 case 30:
3610                 case 31:
3611                 case 32:
3612                 case 33:
3613                 case 34:
3614                 case 35:
3615                 case 36:
3616                 {
3617                     return 117;
3618                 }
3619                 default:
3620                 {
3621                     return -1;
3622                 }
3623             }
3624         }
3625         case 117:
3626         {
3627             switch (i)
3628             {
3629                 case 2:
3630                 {
3631                     return 99;
3632                 }
3633                 case 3:
3634                 case 4:
3635                 case 5:
3636                 case 6:
3637                 case 7:
3638                 case 8:
3639                 case 9:
3640                 case 10:
3641                 case 11:
3642                 case 12:
3643                 case 13:
3644                 case 14:
3645                 case 15:
3646                 case 16:
3647                 case 17:
3648                 case 18:
3649                 case 19:
3650                 case 20:
3651                 case 22:
3652                 case 23:
3653                 case 24:
3654                 case 25:
3655                 case 26:
3656                 case 27:
3657                 case 28:
3658                 case 29:
3659                 case 30:
3660                 case 31:
3661                 case 32:
3662                 case 33:
3663                 case 34:
3664                 case 35:
3665                 case 36:
3666                 case 37:
3667                 case 38:
3668                 case 39:
3669                 case 40:
3670                 case 41:
3671                 case 42:
3672                 case 43:
3673                 case 44:
3674                 case 45:
3675                 case 46:
3676                 case 47:
3677                 case 48:
3678                 case 49:
3679                 case 50:
3680                 case 51:
3681                 case 52:
3682                 case 53:
3683                 case 54:
3684                 {
3685                     return 100;
3686                 }
3687                 case 21:
3688                 {
3689                     return 101;
3690                 }
3691                 default:
3692                 {
3693                     return -1;
3694                 }
3695             }
3696         }
3697         case 103:
3698         {
3699             switch (i)
3700             {
3701                 case 28:
3702                 case 29:
3703                 case 30:
3704                 case 31:
3705                 case 32:
3706                 case 33:
3707                 case 34:
3708                 case 35:
3709                 case 36:
3710                 {
3711                     return 118;
3712                 }
3713                 default:
3714                 {
3715                     return -1;
3716                 }
3717             }
3718         }
3719         case 118:
3720         {
3721             switch (i)
3722             {
3723                 case 28:
3724                 case 29:
3725                 case 30:
3726                 case 31:
3727                 case 32:
3728                 case 33:
3729                 case 34:
3730                 case 35:
3731                 case 36:
3732                 {
3733                     return 119;
3734                 }
3735                 default:
3736                 {
3737                     return -1;
3738                 }
3739             }
3740         }
3741         case 119:
3742         {
3743             switch (i)
3744             {
3745                 case 28:
3746                 case 29:
3747                 case 30:
3748                 case 31:
3749                 case 32:
3750                 case 33:
3751                 case 34:
3752                 case 35:
3753                 case 36:
3754                 {
3755                     return 120;
3756                 }
3757                 default:
3758                 {
3759                     return -1;
3760                 }
3761             }
3762         }
3763         case 120:
3764         {
3765             switch (i)
3766             {
3767                 case 28:
3768                 case 29:
3769                 case 30:
3770                 case 31:
3771                 case 32:
3772                 case 33:
3773                 case 34:
3774                 case 35:
3775                 case 36:
3776                 {
3777                     return 121;
3778                 }
3779                 default:
3780                 {
3781                     return -1;
3782                 }
3783             }
3784         }
3785         case 121:
3786         {
3787             switch (i)
3788             {
3789                 case 2:
3790                 {
3791                     return 99;
3792                 }
3793                 case 3:
3794                 case 4:
3795                 case 5:
3796                 case 6:
3797                 case 7:
3798                 case 8:
3799                 case 9:
3800                 case 10:
3801                 case 11:
3802                 case 12:
3803                 case 13:
3804                 case 14:
3805                 case 15:
3806                 case 16:
3807                 case 17:
3808                 case 18:
3809                 case 19:
3810                 case 20:
3811                 case 22:
3812                 case 23:
3813                 case 24:
3814                 case 25:
3815                 case 26:
3816                 case 27:
3817                 case 28:
3818                 case 29:
3819                 case 30:
3820                 case 31:
3821                 case 32:
3822                 case 33:
3823                 case 34:
3824                 case 35:
3825                 case 36:
3826                 case 37:
3827                 case 38:
3828                 case 39:
3829                 case 40:
3830                 case 41:
3831                 case 42:
3832                 case 43:
3833                 case 44:
3834                 case 45:
3835                 case 46:
3836                 case 47:
3837                 case 48:
3838                 case 49:
3839                 case 50:
3840                 case 51:
3841                 case 52:
3842                 case 53:
3843                 case 54:
3844                 {
3845                     return 100;
3846                 }
3847                 case 21:
3848                 {
3849                     return 101;
3850                 }
3851                 default:
3852                 {
3853                     return -1;
3854                 }
3855             }
3856         }
3857         case 102:
3858         {
3859             switch (i)
3860             {
3861                 case 2:
3862                 {
3863                     return 99;
3864                 }
3865                 case 3:
3866                 case 4:
3867                 case 5:
3868                 case 6:
3869                 case 7:
3870                 case 8:
3871                 case 9:
3872                 case 10:
3873                 case 11:
3874                 case 12:
3875                 case 13:
3876                 case 14:
3877                 case 15:
3878                 case 16:
3879                 case 17:
3880                 case 18:
3881                 case 19:
3882                 case 20:
3883                 case 22:
3884                 case 23:
3885                 case 24:
3886                 case 25:
3887                 case 26:
3888                 case 27:
3889                 case 28:
3890                 case 29:
3891                 case 30:
3892                 case 31:
3893                 case 32:
3894                 case 33:
3895                 case 34:
3896                 case 35:
3897                 case 36:
3898                 case 37:
3899                 case 38:
3900                 case 39:
3901                 case 40:
3902                 case 41:
3903                 case 42:
3904                 case 43:
3905                 case 44:
3906                 case 45:
3907                 case 46:
3908                 case 47:
3909                 case 48:
3910                 case 49:
3911                 case 50:
3912                 case 51:
3913                 case 52:
3914                 case 53:
3915                 case 54:
3916                 {
3917                     return 100;
3918                 }
3919                 case 21:
3920                 {
3921                     return 101;
3922                 }
3923                 default:
3924                 {
3925                     return -1;
3926                 }
3927             }
3928         }
3929         case 100:
3930         {
3931             switch (i)
3932             {
3933                 case 2:
3934                 {
3935                     return 99;
3936                 }
3937                 case 3:
3938                 case 4:
3939                 case 5:
3940                 case 6:
3941                 case 7:
3942                 case 8:
3943                 case 9:
3944                 case 10:
3945                 case 11:
3946                 case 12:
3947                 case 13:
3948                 case 14:
3949                 case 15:
3950                 case 16:
3951                 case 17:
3952                 case 18:
3953                 case 19:
3954                 case 20:
3955                 case 22:
3956                 case 23:
3957                 case 24:
3958                 case 25:
3959                 case 26:
3960                 case 27:
3961                 case 28:
3962                 case 29:
3963                 case 30:
3964                 case 31:
3965                 case 32:
3966                 case 33:
3967                 case 34:
3968                 case 35:
3969                 case 36:
3970                 case 37:
3971                 case 38:
3972                 case 39:
3973                 case 40:
3974                 case 41:
3975                 case 42:
3976                 case 43:
3977                 case 44:
3978                 case 45:
3979                 case 46:
3980                 case 47:
3981                 case 48:
3982                 case 49:
3983                 case 50:
3984                 case 51:
3985                 case 52:
3986                 case 53:
3987                 case 54:
3988                 {
3989                     return 100;
3990                 }
3991                 case 21:
3992                 {
3993                     return 101;
3994                 }
3995                 default:
3996                 {
3997                     return -1;
3998                 }
3999             }
4000         }
4001         case 99:
4002         {
4003             Lexeme prevMatch = token.match;
4004             token.match = lexeme;
4005             int tokenId = GetTokenId(10);
4006             if (tokenId == CONTINUE_TOKEN)
4007             {
4008                 token.id = tokenId;
4009                 return -1;
4010             }
4011             else if (tokenId != INVALID_TOKEN)
4012             {
4013                 token.id = tokenId;
4014             }
4015             else
4016             {
4017                 token.match = prevMatch;
4018             }
4019             return -1;
4020         }
4021         case 14:
4022         {
4023             Lexeme prevMatch = token.match;
4024             token.match = lexeme;
4025             int tokenId = GetTokenId(5);
4026             if (tokenId == CONTINUE_TOKEN)
4027             {
4028                 token.id = tokenId;
4029                 return -1;
4030             }
4031             else if (tokenId != INVALID_TOKEN)
4032             {
4033                 token.id = tokenId;
4034             }
4035             else
4036             {
4037                 token.match = prevMatch;
4038             }
4039             switch (i)
4040             {
4041                 case 22:
4042                 {
4043                     return 17;
4044                 }
4045                 case 5:
4046                 case 6:
4047                 case 15:
4048                 case 16:
4049                 case 17:
4050                 case 18:
4051                 case 19:
4052                 case 20:
4053                 case 24:
4054                 case 25:
4055                 case 26:
4056                 case 27:
4057                 case 28:
4058                 case 29:
4059                 case 30:
4060                 case 31:
4061                 case 32:
4062                 case 33:
4063                 case 34:
4064                 case 35:
4065                 case 36:
4066                 {
4067                     return 48;
4068                 }
4069                 case 2:
4070                 {
4071                     return 97;
4072                 }
4073                 case 37:
4074                 {
4075                     return 98;
4076                 }
4077                 default:
4078                 {
4079                     return -1;
4080                 }
4081             }
4082         }
4083         case 13:
4084         {
4085             Lexeme prevMatch = token.match;
4086             token.match = lexeme;
4087             int tokenId = GetTokenId(5);
4088             if (tokenId == CONTINUE_TOKEN)
4089             {
4090                 token.id = tokenId;
4091                 return -1;
4092             }
4093             else if (tokenId != INVALID_TOKEN)
4094             {
4095                 token.id = tokenId;
4096             }
4097             else
4098             {
4099                 token.match = prevMatch;
4100             }
4101             switch (i)
4102             {
4103                 case 22:
4104                 {
4105                     return 17;
4106                 }
4107                 case 5:
4108                 case 6:
4109                 case 15:
4110                 case 16:
4111                 case 17:
4112                 case 18:
4113                 case 19:
4114                 case 20:
4115                 case 24:
4116                 case 25:
4117                 case 26:
4118                 case 27:
4119                 case 28:
4120                 case 29:
4121                 case 30:
4122                 case 31:
4123                 case 33:
4124                 case 34:
4125                 case 35:
4126                 case 36:
4127                 {
4128                     return 48;
4129                 }
4130                 case 2:
4131                 {
4132                     return 97;
4133                 }
4134                 case 37:
4135                 {
4136                     return 98;
4137                 }
4138                 case 32:
4139                 {
4140                     return 122;
4141                 }
4142                 default:
4143                 {
4144                     return -1;
4145                 }
4146             }
4147         }
4148         case 122:
4149         {
4150             Lexeme prevMatch = token.match;
4151             token.match = lexeme;
4152             int tokenId = GetTokenId(5);
4153             if (tokenId == CONTINUE_TOKEN)
4154             {
4155                 token.id = tokenId;
4156                 return -1;
4157             }
4158             else if (tokenId != INVALID_TOKEN)
4159             {
4160                 token.id = tokenId;
4161             }
4162             else
4163             {
4164                 token.match = prevMatch;
4165             }
4166             switch (i)
4167             {
4168                 case 5:
4169                 case 6:
4170                 case 15:
4171                 case 16:
4172                 case 17:
4173                 case 18:
4174                 case 19:
4175                 case 20:
4176                 case 24:
4177                 case 25:
4178                 case 26:
4179                 case 27:
4180                 case 28:
4181                 case 29:
4182                 case 30:
4183                 case 31:
4184                 case 32:
4185                 case 33:
4186                 case 34:
4187                 case 35:
4188                 case 36:
4189                 {
4190                     return 48;
4191                 }
4192                 case 2:
4193                 {
4194                     return 97;
4195                 }
4196                 case 37:
4197                 {
4198                     return 98;
4199                 }
4200                 default:
4201                 {
4202                     return -1;
4203                 }
4204             }
4205         }
4206         case 12:
4207         {
4208             Lexeme prevMatch = token.match;
4209             token.match = lexeme;
4210             int tokenId = GetTokenId(42);
4211             if (tokenId == CONTINUE_TOKEN)
4212             {
4213                 token.id = tokenId;
4214                 return -1;
4215             }
4216             else if (tokenId != INVALID_TOKEN)
4217             {
4218                 token.id = tokenId;
4219             }
4220             else
4221             {
4222                 token.match = prevMatch;
4223             }
4224             switch (i)
4225             {
4226                 case 11:
4227                 {
4228                     return 123;
4229                 }
4230                 case 14:
4231                 {
4232                     return 124;
4233                 }
4234                 case 41:
4235                 {
4236                     return 125;
4237                 }
4238                 default:
4239                 {
4240                     return -1;
4241                 }
4242             }
4243         }
4244         case 125:
4245         {
4246             Lexeme prevMatch = token.match;
4247             token.match = lexeme;
4248             int tokenId = GetTokenId(19);
4249             if (tokenId == CONTINUE_TOKEN)
4250             {
4251                 token.id = tokenId;
4252                 return -1;
4253             }
4254             else if (tokenId != INVALID_TOKEN)
4255             {
4256                 token.id = tokenId;
4257             }
4258             else
4259             {
4260                 token.match = prevMatch;
4261             }
4262             return -1;
4263         }
4264         case 124:
4265         {
4266             Lexeme prevMatch = token.match;
4267             token.match = lexeme;
4268             int tokenId = GetTokenId(51);
4269             if (tokenId == CONTINUE_TOKEN)
4270             {
4271                 token.id = tokenId;
4272                 return -1;
4273             }
4274             else if (tokenId != INVALID_TOKEN)
4275             {
4276                 token.id = tokenId;
4277             }
4278             else
4279             {
4280                 token.match = prevMatch;
4281             }
4282             return -1;
4283         }
4284         case 123:
4285         {
4286             Lexeme prevMatch = token.match;
4287             token.match = lexeme;
4288             int tokenId = GetTokenId(57);
4289             if (tokenId == CONTINUE_TOKEN)
4290             {
4291                 token.id = tokenId;
4292                 return -1;
4293             }
4294             else if (tokenId != INVALID_TOKEN)
4295             {
4296                 token.id = tokenId;
4297             }
4298             else
4299             {
4300                 token.match = prevMatch;
4301             }
4302             switch (i)
4303             {
4304                 case 4:
4305                 {
4306                     return 126;
4307                 }
4308                 default:
4309                 {
4310                     return -1;
4311                 }
4312             }
4313         }
4314         case 126:
4315         {
4316             Lexeme prevMatch = token.match;
4317             token.match = lexeme;
4318             int tokenId = GetTokenId(47);
4319             if (tokenId == CONTINUE_TOKEN)
4320             {
4321                 token.id = tokenId;
4322                 return -1;
4323             }
4324             else if (tokenId != INVALID_TOKEN)
4325             {
4326                 token.id = tokenId;
4327             }
4328             else
4329             {
4330                 token.match = prevMatch;
4331             }
4332             return -1;
4333         }
4334         case 11:
4335         {
4336             Lexeme prevMatch = token.match;
4337             token.match = lexeme;
4338             int tokenId = GetTokenId(41);
4339             if (tokenId == CONTINUE_TOKEN)
4340             {
4341                 token.id = tokenId;
4342                 return -1;
4343             }
4344             else if (tokenId != INVALID_TOKEN)
4345             {
4346                 token.id = tokenId;
4347             }
4348             else
4349             {
4350                 token.match = prevMatch;
4351             }
4352             switch (i)
4353             {
4354                 case 13:
4355                 {
4356                     return 127;
4357                 }
4358                 case 41:
4359                 {
4360                     return 128;
4361                 }
4362                 default:
4363                 {
4364                     return -1;
4365                 }
4366             }
4367         }
4368         case 128:
4369         {
4370             Lexeme prevMatch = token.match;
4371             token.match = lexeme;
4372             int tokenId = GetTokenId(18);
4373             if (tokenId == CONTINUE_TOKEN)
4374             {
4375                 token.id = tokenId;
4376                 return -1;
4377             }
4378             else if (tokenId != INVALID_TOKEN)
4379             {
4380                 token.id = tokenId;
4381             }
4382             else
4383             {
4384                 token.match = prevMatch;
4385             }
4386             return -1;
4387         }
4388         case 127:
4389         {
4390             Lexeme prevMatch = token.match;
4391             token.match = lexeme;
4392             int tokenId = GetTokenId(50);
4393             if (tokenId == CONTINUE_TOKEN)
4394             {
4395                 token.id = tokenId;
4396                 return -1;
4397             }
4398             else if (tokenId != INVALID_TOKEN)
4399             {
4400                 token.id = tokenId;
4401             }
4402             else
4403             {
4404                 token.match = prevMatch;
4405             }
4406             return -1;
4407         }
4408         case 10:
4409         {
4410             Lexeme prevMatch = token.match;
4411             token.match = lexeme;
4412             int tokenId = GetTokenId(56);
4413             if (tokenId == CONTINUE_TOKEN)
4414             {
4415                 token.id = tokenId;
4416                 return -1;
4417             }
4418             else if (tokenId != INVALID_TOKEN)
4419             {
4420                 token.id = tokenId;
4421             }
4422             else
4423             {
4424                 token.match = prevMatch;
4425             }
4426             switch (i)
4427             {
4428                 case 4:
4429                 {
4430                     return 129;
4431                 }
4432                 case 12:
4433                 {
4434                     return 130;
4435                 }
4436                 case 28:
4437                 case 32:
4438                 case 36:
4439                 {
4440                     return 131;
4441                 }
4442                 default:
4443                 {
4444                     return -1;
4445                 }
4446             }
4447         }
4448         case 131:
4449         {
4450             Lexeme prevMatch = token.match;
4451             token.match = lexeme;
4452             int tokenId = GetTokenId(8);
4453             if (tokenId == CONTINUE_TOKEN)
4454             {
4455                 token.id = tokenId;
4456                 return -1;
4457             }
4458             else if (tokenId != INVALID_TOKEN)
4459             {
4460                 token.id = tokenId;
4461             }
4462             else
4463             {
4464                 token.match = prevMatch;
4465             }
4466             switch (i)
4467             {
4468                 case 15:
4469                 case 16:
4470                 case 17:
4471                 case 18:
4472                 case 19:
4473                 case 20:
4474                 case 24:
4475                 case 25:
4476                 case 26:
4477                 case 27:
4478                 case 29:
4479                 case 33:
4480                 case 34:
4481                 case 35:
4482                 case 37:
4483                 {
4484                     return 52;
4485                 }
4486                 case 21:
4487                 {
4488                     return 53;
4489                 }
4490                 case 30:
4491                 case 31:
4492                 {
4493                     return 54;
4494                 }
4495                 case 28:
4496                 case 32:
4497                 case 36:
4498                 {
4499                     return 131;
4500                 }
4501                 default:
4502                 {
4503                     return -1;
4504                 }
4505             }
4506         }
4507         case 130:
4508         {
4509             switch (i)
4510             {
4511                 case 12:
4512                 {
4513                     return 132;
4514                 }
4515                 default:
4516                 {
4517                     return -1;
4518                 }
4519             }
4520         }
4521         case 132:
4522         {
4523             Lexeme prevMatch = token.match;
4524             token.match = lexeme;
4525             int tokenId = GetTokenId(59);
4526             if (tokenId == CONTINUE_TOKEN)
4527             {
4528                 token.id = tokenId;
4529                 return -1;
4530             }
4531             else if (tokenId != INVALID_TOKEN)
4532             {
4533                 token.id = tokenId;
4534             }
4535             else
4536             {
4537                 token.match = prevMatch;
4538             }
4539             return -1;
4540         }
4541         case 129:
4542         {
4543             Lexeme prevMatch = token.match;
4544             token.match = lexeme;
4545             int tokenId = GetTokenId(46);
4546             if (tokenId == CONTINUE_TOKEN)
4547             {
4548                 token.id = tokenId;
4549                 return -1;
4550             }
4551             else if (tokenId != INVALID_TOKEN)
4552             {
4553                 token.id = tokenId;
4554             }
4555             else
4556             {
4557                 token.match = prevMatch;
4558             }
4559             return -1;
4560         }
4561         case 9:
4562         {
4563             Lexeme prevMatch = token.match;
4564             token.match = lexeme;
4565             int tokenId = GetTokenId(38);
4566             if (tokenId == CONTINUE_TOKEN)
4567             {
4568                 token.id = tokenId;
4569                 return -1;
4570             }
4571             else if (tokenId != INVALID_TOKEN)
4572             {
4573                 token.id = tokenId;
4574             }
4575             else
4576             {
4577                 token.match = prevMatch;
4578             }
4579             switch (i)
4580             {
4581                 case 11:
4582                 {
4583                     return 133;
4584                 }
4585                 case 41:
4586                 {
4587                     return 134;
4588                 }
4589                 default:
4590                 {
4591                     return -1;
4592                 }
4593             }
4594         }
4595         case 134:
4596         {
4597             Lexeme prevMatch = token.match;
4598             token.match = lexeme;
4599             int tokenId = GetTokenId(35);
4600             if (tokenId == CONTINUE_TOKEN)
4601             {
4602                 token.id = tokenId;
4603                 return -1;
4604             }
4605             else if (tokenId != INVALID_TOKEN)
4606             {
4607                 token.id = tokenId;
4608             }
4609             else
4610             {
4611                 token.match = prevMatch;
4612             }
4613             return -1;
4614         }
4615         case 133:
4616         {
4617             Lexeme prevMatch = token.match;
4618             token.match = lexeme;
4619             int tokenId = GetTokenId(40);
4620             if (tokenId == CONTINUE_TOKEN)
4621             {
4622                 token.id = tokenId;
4623                 return -1;
4624             }
4625             else if (tokenId != INVALID_TOKEN)
4626             {
4627                 token.id = tokenId;
4628             }
4629             else
4630             {
4631                 token.match = prevMatch;
4632             }
4633             switch (i)
4634             {
4635                 case 41:
4636                 {
4637                     return 135;
4638                 }
4639                 default:
4640                 {
4641                     return -1;
4642                 }
4643             }
4644         }
4645         case 135:
4646         {
4647             Lexeme prevMatch = token.match;
4648             token.match = lexeme;
4649             int tokenId = GetTokenId(20);
4650             if (tokenId == CONTINUE_TOKEN)
4651             {
4652                 token.id = tokenId;
4653                 return -1;
4654             }
4655             else if (tokenId != INVALID_TOKEN)
4656             {
4657                 token.id = tokenId;
4658             }
4659             else
4660             {
4661                 token.match = prevMatch;
4662             }
4663             return -1;
4664         }
4665         case 8:
4666         {
4667             Lexeme prevMatch = token.match;
4668             token.match = lexeme;
4669             int tokenId = GetTokenId(37);
4670             if (tokenId == CONTINUE_TOKEN)
4671             {
4672                 token.id = tokenId;
4673                 return -1;
4674             }
4675             else if (tokenId != INVALID_TOKEN)
4676             {
4677                 token.id = tokenId;
4678             }
4679             else
4680             {
4681                 token.match = prevMatch;
4682             }
4683             switch (i)
4684             {
4685                 case 2:
4686                 case 3:
4687                 case 4:
4688                 case 5:
4689                 case 6:
4690                 case 7:
4691                 case 8:
4692                 case 9:
4693                 case 12:
4694                 case 13:
4695                 case 14:
4696                 case 15:
4697                 case 16:
4698                 case 17:
4699                 case 18:
4700                 case 19:
4701                 case 20:
4702                 case 21:
4703                 case 22:
4704                 case 23:
4705                 case 24:
4706                 case 25:
4707                 case 26:
4708                 case 27:
4709                 case 28:
4710                 case 29:
4711                 case 30:
4712                 case 31:
4713                 case 32:
4714                 case 33:
4715                 case 34:
4716                 case 35:
4717                 case 36:
4718                 case 37:
4719                 case 38:
4720                 case 39:
4721                 case 40:
4722                 case 42:
4723                 case 43:
4724                 case 44:
4725                 case 45:
4726                 case 46:
4727                 case 47:
4728                 case 48:
4729                 case 49:
4730                 case 50:
4731                 case 51:
4732                 case 52:
4733                 case 53:
4734                 case 54:
4735                 {
4736                     return 136;
4737                 }
4738                 case 10:
4739                 {
4740                     return 137;
4741                 }
4742                 case 11:
4743                 {
4744                     return 138;
4745                 }
4746                 case 41:
4747                 {
4748                     return 139;
4749                 }
4750                 default:
4751                 {
4752                     return -1;
4753                 }
4754             }
4755         }
4756         case 139:
4757         {
4758             Lexeme prevMatch = token.match;
4759             token.match = lexeme;
4760             int tokenId = GetTokenId(34);
4761             if (tokenId == CONTINUE_TOKEN)
4762             {
4763                 token.id = tokenId;
4764                 return -1;
4765             }
4766             else if (tokenId != INVALID_TOKEN)
4767             {
4768                 token.id = tokenId;
4769             }
4770             else
4771             {
4772                 token.match = prevMatch;
4773             }
4774             switch (i)
4775             {
4776                 case 2:
4777                 case 3:
4778                 case 4:
4779                 case 5:
4780                 case 6:
4781                 case 7:
4782                 case 8:
4783                 case 9:
4784                 case 10:
4785                 case 12:
4786                 case 13:
4787                 case 14:
4788                 case 15:
4789                 case 16:
4790                 case 17:
4791                 case 18:
4792                 case 19:
4793                 case 20:
4794                 case 21:
4795                 case 22:
4796                 case 23:
4797                 case 24:
4798                 case 25:
4799                 case 26:
4800                 case 27:
4801                 case 28:
4802                 case 29:
4803                 case 30:
4804                 case 31:
4805                 case 32:
4806                 case 33:
4807                 case 34:
4808                 case 35:
4809                 case 36:
4810                 case 37:
4811                 case 38:
4812                 case 39:
4813                 case 40:
4814                 case 41:
4815                 case 42:
4816                 case 43:
4817                 case 44:
4818                 case 45:
4819                 case 46:
4820                 case 47:
4821                 case 48:
4822                 case 49:
4823                 case 50:
4824                 case 51:
4825                 case 52:
4826                 case 53:
4827                 case 54:
4828                 {
4829                     return 136;
4830                 }
4831                 case 11:
4832                 {
4833                     return 140;
4834                 }
4835                 default:
4836                 {
4837                     return -1;
4838                 }
4839             }
4840         }
4841         case 140:
4842         {
4843             Lexeme prevMatch = token.match;
4844             token.match = lexeme;
4845             int tokenId = GetTokenId(6);
4846             if (tokenId == CONTINUE_TOKEN)
4847             {
4848                 token.id = tokenId;
4849                 return -1;
4850             }
4851             else if (tokenId != INVALID_TOKEN)
4852             {
4853                 token.id = tokenId;
4854             }
4855             else
4856             {
4857                 token.match = prevMatch;
4858             }
4859             return -1;
4860         }
4861         case 138:
4862         {
4863             Lexeme prevMatch = token.match;
4864             token.match = lexeme;
4865             int tokenId = GetTokenId(6);
4866             if (tokenId == CONTINUE_TOKEN)
4867             {
4868                 token.id = tokenId;
4869                 return -1;
4870             }
4871             else if (tokenId != INVALID_TOKEN)
4872             {
4873                 token.id = tokenId;
4874             }
4875             else
4876             {
4877                 token.match = prevMatch;
4878             }
4879             return -1;
4880         }
4881         case 137:
4882         {
4883             Lexeme prevMatch = token.match;
4884             token.match = lexeme;
4885             int tokenId = GetTokenId(39);
4886             if (tokenId == CONTINUE_TOKEN)
4887             {
4888                 token.id = tokenId;
4889                 return -1;
4890             }
4891             else if (tokenId != INVALID_TOKEN)
4892             {
4893                 token.id = tokenId;
4894             }
4895             else
4896             {
4897                 token.match = prevMatch;
4898             }
4899             switch (i)
4900             {
4901                 case 2:
4902                 case 3:
4903                 case 4:
4904                 case 5:
4905                 case 6:
4906                 case 7:
4907                 case 8:
4908                 case 9:
4909                 case 10:
4910                 case 12:
4911                 case 13:
4912                 case 14:
4913                 case 15:
4914                 case 16:
4915                 case 17:
4916                 case 18:
4917                 case 19:
4918                 case 20:
4919                 case 21:
4920                 case 22:
4921                 case 23:
4922                 case 24:
4923                 case 25:
4924                 case 26:
4925                 case 27:
4926                 case 28:
4927                 case 29:
4928                 case 30:
4929                 case 31:
4930                 case 32:
4931                 case 33:
4932                 case 34:
4933                 case 35:
4934                 case 36:
4935                 case 37:
4936                 case 38:
4937                 case 39:
4938                 case 40:
4939                 case 42:
4940                 case 43:
4941                 case 44:
4942                 case 45:
4943                 case 46:
4944                 case 47:
4945                 case 48:
4946                 case 49:
4947                 case 50:
4948                 case 51:
4949                 case 52:
4950                 case 53:
4951                 case 54:
4952                 {
4953                     return 136;
4954                 }
4955                 case 11:
4956                 {
4957                     return 138;
4958                 }
4959                 case 41:
4960                 {
4961                     return 141;
4962                 }
4963                 default:
4964                 {
4965                     return -1;
4966                 }
4967             }
4968         }
4969         case 141:
4970         {
4971             Lexeme prevMatch = token.match;
4972             token.match = lexeme;
4973             int tokenId = GetTokenId(21);
4974             if (tokenId == CONTINUE_TOKEN)
4975             {
4976                 token.id = tokenId;
4977                 return -1;
4978             }
4979             else if (tokenId != INVALID_TOKEN)
4980             {
4981                 token.id = tokenId;
4982             }
4983             else
4984             {
4985                 token.match = prevMatch;
4986             }
4987             switch (i)
4988             {
4989                 case 2:
4990                 case 3:
4991                 case 4:
4992                 case 5:
4993                 case 6:
4994                 case 7:
4995                 case 8:
4996                 case 9:
4997                 case 10:
4998                 case 12:
4999                 case 13:
5000                 case 14:
5001                 case 15:
5002                 case 16:
5003                 case 17:
5004                 case 18:
5005                 case 19:
5006                 case 20:
5007                 case 21:
5008                 case 22:
5009                 case 23:
5010                 case 24:
5011                 case 25:
5012                 case 26:
5013                 case 27:
5014                 case 28:
5015                 case 29:
5016                 case 30:
5017                 case 31:
5018                 case 32:
5019                 case 33:
5020                 case 34:
5021                 case 35:
5022                 case 36:
5023                 case 37:
5024                 case 38:
5025                 case 39:
5026                 case 40:
5027                 case 41:
5028                 case 42:
5029                 case 43:
5030                 case 44:
5031                 case 45:
5032                 case 46:
5033                 case 47:
5034                 case 48:
5035                 case 49:
5036                 case 50:
5037                 case 51:
5038                 case 52:
5039                 case 53:
5040                 case 54:
5041                 {
5042                     return 136;
5043                 }
5044                 case 11:
5045                 {
5046                     return 138;
5047                 }
5048                 default:
5049                 {
5050                     return -1;
5051                 }
5052             }
5053         }
5054         case 136:
5055         {
5056             switch (i)
5057             {
5058                 case 2:
5059                 case 3:
5060                 case 4:
5061                 case 5:
5062                 case 6:
5063                 case 7:
5064                 case 8:
5065                 case 9:
5066                 case 10:
5067                 case 12:
5068                 case 13:
5069                 case 14:
5070                 case 15:
5071                 case 16:
5072                 case 17:
5073                 case 18:
5074                 case 19:
5075                 case 20:
5076                 case 21:
5077                 case 22:
5078                 case 23:
5079                 case 24:
5080                 case 25:
5081                 case 26:
5082                 case 27:
5083                 case 28:
5084                 case 29:
5085                 case 30:
5086                 case 31:
5087                 case 32:
5088                 case 33:
5089                 case 34:
5090                 case 35:
5091                 case 36:
5092                 case 37:
5093                 case 38:
5094                 case 39:
5095                 case 40:
5096                 case 41:
5097                 case 42:
5098                 case 43:
5099                 case 44:
5100                 case 45:
5101                 case 46:
5102                 case 47:
5103                 case 48:
5104                 case 49:
5105                 case 50:
5106                 case 51:
5107                 case 52:
5108                 case 53:
5109                 case 54:
5110                 {
5111                     return 136;
5112                 }
5113                 case 11:
5114                 {
5115                     return 138;
5116                 }
5117                 default:
5118                 {
5119                     return -1;
5120                 }
5121             }
5122         }
5123         case 7:
5124         {
5125             Lexeme prevMatch = token.match;
5126             token.match = lexeme;
5127             int tokenId = GetTokenId(0);
5128             if (tokenId == CONTINUE_TOKEN)
5129             {
5130                 token.id = tokenId;
5131                 return -1;
5132             }
5133             else if (tokenId != INVALID_TOKEN)
5134             {
5135                 token.id = tokenId;
5136             }
5137             else
5138             {
5139                 token.match = prevMatch;
5140             }
5141             switch (i)
5142             {
5143                 case 7:
5144                 case 8:
5145                 {
5146                     return 7;
5147                 }
5148                 default:
5149                 {
5150                     return -1;
5151                 }
5152             }
5153         }
5154         case 6:
5155         {
5156             Lexeme prevMatch = token.match;
5157             token.match = lexeme;
5158             int tokenId = GetTokenId(5);
5159             if (tokenId == CONTINUE_TOKEN)
5160             {
5161                 token.id = tokenId;
5162                 return -1;
5163             }
5164             else if (tokenId != INVALID_TOKEN)
5165             {
5166                 token.id = tokenId;
5167             }
5168             else
5169             {
5170                 token.match = prevMatch;
5171             }
5172             switch (i)
5173             {
5174                 case 5:
5175                 case 6:
5176                 case 15:
5177                 case 16:
5178                 case 17:
5179                 case 18:
5180                 case 19:
5181                 case 20:
5182                 case 24:
5183                 case 25:
5184                 case 26:
5185                 case 27:
5186                 case 28:
5187                 case 29:
5188                 case 30:
5189                 case 31:
5190                 case 32:
5191                 case 33:
5192                 case 34:
5193                 case 35:
5194                 case 36:
5195                 case 37:
5196                 {
5197                     return 48;
5198                 }
5199                 default:
5200                 {
5201                     return -1;
5202                 }
5203             }
5204         }
5205         case 5:
5206         {
5207             Lexeme prevMatch = token.match;
5208             token.match = lexeme;
5209             int tokenId = GetTokenId(43);
5210             if (tokenId == CONTINUE_TOKEN)
5211             {
5212                 token.id = tokenId;
5213                 return -1;
5214             }
5215             else if (tokenId != INVALID_TOKEN)
5216             {
5217                 token.id = tokenId;
5218             }
5219             else
5220             {
5221                 token.match = prevMatch;
5222             }
5223             switch (i)
5224             {
5225                 case 41:
5226                 {
5227                     return 142;
5228                 }
5229                 default:
5230                 {
5231                     return -1;
5232                 }
5233             }
5234         }
5235         case 142:
5236         {
5237             Lexeme prevMatch = token.match;
5238             token.match = lexeme;
5239             int tokenId = GetTokenId(15);
5240             if (tokenId == CONTINUE_TOKEN)
5241             {
5242                 token.id = tokenId;
5243                 return -1;
5244             }
5245             else if (tokenId != INVALID_TOKEN)
5246             {
5247                 token.id = tokenId;
5248             }
5249             else
5250             {
5251                 token.match = prevMatch;
5252             }
5253             return -1;
5254         }
5255         case 4:
5256         {
5257             Lexeme prevMatch = token.match;
5258             token.match = lexeme;
5259             int tokenId = GetTokenId(44);
5260             if (tokenId == CONTINUE_TOKEN)
5261             {
5262                 token.id = tokenId;
5263                 return -1;
5264             }
5265             else if (tokenId != INVALID_TOKEN)
5266             {
5267                 token.id = tokenId;
5268             }
5269             else
5270             {
5271                 token.match = prevMatch;
5272             }
5273             switch (i)
5274             {
5275                 case 3:
5276                 {
5277                     return 143;
5278                 }
5279                 case 4:
5280                 {
5281                     return 144;
5282                 }
5283                 case 41:
5284                 {
5285                     return 145;
5286                 }
5287                 default:
5288                 {
5289                     return -1;
5290                 }
5291             }
5292         }
5293         case 145:
5294         {
5295             Lexeme prevMatch = token.match;
5296             token.match = lexeme;
5297             int tokenId = GetTokenId(16);
5298             if (tokenId == CONTINUE_TOKEN)
5299             {
5300                 token.id = tokenId;
5301                 return -1;
5302             }
5303             else if (tokenId != INVALID_TOKEN)
5304             {
5305                 token.id = tokenId;
5306             }
5307             else
5308             {
5309                 token.match = prevMatch;
5310             }
5311             return -1;
5312         }
5313         case 144:
5314         {
5315             switch (i)
5316             {
5317                 case 0:
5318                 case 1:
5319                 case 2:
5320                 case 3:
5321                 case 5:
5322                 case 6:
5323                 case 7:
5324                 case 8:
5325                 case 9:
5326                 case 10:
5327                 case 11:
5328                 case 12:
5329                 case 13:
5330                 case 14:
5331                 case 15:
5332                 case 16:
5333                 case 17:
5334                 case 18:
5335                 case 19:
5336                 case 20:
5337                 case 21:
5338                 case 22:
5339                 case 23:
5340                 case 24:
5341                 case 25:
5342                 case 26:
5343                 case 27:
5344                 case 28:
5345                 case 29:
5346                 case 30:
5347                 case 31:
5348                 case 32:
5349                 case 33:
5350                 case 34:
5351                 case 35:
5352                 case 36:
5353                 case 37:
5354                 case 38:
5355                 case 39:
5356                 case 40:
5357                 case 41:
5358                 case 42:
5359                 case 43:
5360                 case 44:
5361                 case 45:
5362                 case 46:
5363                 case 47:
5364                 case 48:
5365                 case 49:
5366                 case 50:
5367                 case 51:
5368                 case 52:
5369                 case 53:
5370                 case 54:
5371                 {
5372                     return 146;
5373                 }
5374                 case 4:
5375                 {
5376                     return 147;
5377                 }
5378                 default:
5379                 {
5380                     return -1;
5381                 }
5382             }
5383         }
5384         case 147:
5385         {
5386             switch (i)
5387             {
5388                 case 4:
5389                 {
5390                     return 147;
5391                 }
5392                 case 0:
5393                 case 1:
5394                 case 2:
5395                 case 5:
5396                 case 6:
5397                 case 7:
5398                 case 8:
5399                 case 9:
5400                 case 10:
5401                 case 11:
5402                 case 12:
5403                 case 13:
5404                 case 14:
5405                 case 15:
5406                 case 16:
5407                 case 17:
5408                 case 18:
5409                 case 19:
5410                 case 20:
5411                 case 21:
5412                 case 22:
5413                 case 23:
5414                 case 24:
5415                 case 25:
5416                 case 26:
5417                 case 27:
5418                 case 28:
5419                 case 29:
5420                 case 30:
5421                 case 31:
5422                 case 32:
5423                 case 33:
5424                 case 34:
5425                 case 35:
5426                 case 36:
5427                 case 37:
5428                 case 38:
5429                 case 39:
5430                 case 40:
5431                 case 41:
5432                 case 42:
5433                 case 43:
5434                 case 44:
5435                 case 45:
5436                 case 46:
5437                 case 47:
5438                 case 48:
5439                 case 49:
5440                 case 50:
5441                 case 51:
5442                 case 52:
5443                 case 53:
5444                 case 54:
5445                 {
5446                     return 148;
5447                 }
5448                 case 3:
5449                 {
5450                     return 149;
5451                 }
5452                 default:
5453                 {
5454                     return -1;
5455                 }
5456             }
5457         }
5458         case 149:
5459         {
5460             Lexeme prevMatch = token.match;
5461             token.match = lexeme;
5462             int tokenId = GetTokenId(2);
5463             if (tokenId == CONTINUE_TOKEN)
5464             {
5465                 token.id = tokenId;
5466                 return -1;
5467             }
5468             else if (tokenId != INVALID_TOKEN)
5469             {
5470                 token.id = tokenId;
5471             }
5472             else
5473             {
5474                 token.match = prevMatch;
5475             }
5476             switch (i)
5477             {
5478                 case 0:
5479                 case 1:
5480                 case 2:
5481                 case 3:
5482                 case 5:
5483                 case 6:
5484                 case 7:
5485                 case 8:
5486                 case 9:
5487                 case 10:
5488                 case 11:
5489                 case 12:
5490                 case 13:
5491                 case 14:
5492                 case 15:
5493                 case 16:
5494                 case 17:
5495                 case 18:
5496                 case 19:
5497                 case 20:
5498                 case 21:
5499                 case 22:
5500                 case 23:
5501                 case 24:
5502                 case 25:
5503                 case 26:
5504                 case 27:
5505                 case 28:
5506                 case 29:
5507                 case 30:
5508                 case 31:
5509                 case 32:
5510                 case 33:
5511                 case 34:
5512                 case 35:
5513                 case 36:
5514                 case 37:
5515                 case 38:
5516                 case 39:
5517                 case 40:
5518                 case 41:
5519                 case 42:
5520                 case 43:
5521                 case 44:
5522                 case 45:
5523                 case 46:
5524                 case 47:
5525                 case 48:
5526                 case 49:
5527                 case 50:
5528                 case 51:
5529                 case 52:
5530                 case 53:
5531                 case 54:
5532                 {
5533                     return 146;
5534                 }
5535                 case 4:
5536                 {
5537                     return 147;
5538                 }
5539                 default:
5540                 {
5541                     return -1;
5542                 }
5543             }
5544         }
5545         case 148:
5546         {
5547             switch (i)
5548             {
5549                 case 0:
5550                 case 1:
5551                 case 2:
5552                 case 3:
5553                 case 5:
5554                 case 6:
5555                 case 7:
5556                 case 8:
5557                 case 9:
5558                 case 10:
5559                 case 11:
5560                 case 12:
5561                 case 13:
5562                 case 14:
5563                 case 15:
5564                 case 16:
5565                 case 17:
5566                 case 18:
5567                 case 19:
5568                 case 20:
5569                 case 21:
5570                 case 22:
5571                 case 23:
5572                 case 24:
5573                 case 25:
5574                 case 26:
5575                 case 27:
5576                 case 28:
5577                 case 29:
5578                 case 30:
5579                 case 31:
5580                 case 32:
5581                 case 33:
5582                 case 34:
5583                 case 35:
5584                 case 36:
5585                 case 37:
5586                 case 38:
5587                 case 39:
5588                 case 40:
5589                 case 41:
5590                 case 42:
5591                 case 43:
5592                 case 44:
5593                 case 45:
5594                 case 46:
5595                 case 47:
5596                 case 48:
5597                 case 49:
5598                 case 50:
5599                 case 51:
5600                 case 52:
5601                 case 53:
5602                 case 54:
5603                 {
5604                     return 146;
5605                 }
5606                 case 4:
5607                 {
5608                     return 147;
5609                 }
5610                 default:
5611                 {
5612                     return -1;
5613                 }
5614             }
5615         }
5616         case 146:
5617         {
5618             switch (i)
5619             {
5620                 case 0:
5621                 case 1:
5622                 case 2:
5623                 case 3:
5624                 case 5:
5625                 case 6:
5626                 case 7:
5627                 case 8:
5628                 case 9:
5629                 case 10:
5630                 case 11:
5631                 case 12:
5632                 case 13:
5633                 case 14:
5634                 case 15:
5635                 case 16:
5636                 case 17:
5637                 case 18:
5638                 case 19:
5639                 case 20:
5640                 case 21:
5641                 case 22:
5642                 case 23:
5643                 case 24:
5644                 case 25:
5645                 case 26:
5646                 case 27:
5647                 case 28:
5648                 case 29:
5649                 case 30:
5650                 case 31:
5651                 case 32:
5652                 case 33:
5653                 case 34:
5654                 case 35:
5655                 case 36:
5656                 case 37:
5657                 case 38:
5658                 case 39:
5659                 case 40:
5660                 case 41:
5661                 case 42:
5662                 case 43:
5663                 case 44:
5664                 case 45:
5665                 case 46:
5666                 case 47:
5667                 case 48:
5668                 case 49:
5669                 case 50:
5670                 case 51:
5671                 case 52:
5672                 case 53:
5673                 case 54:
5674                 {
5675                     return 146;
5676                 }
5677                 case 4:
5678                 {
5679                     return 147;
5680                 }
5681                 default:
5682                 {
5683                     return -1;
5684                 }
5685             }
5686         }
5687         case 143:
5688         {
5689             switch (i)
5690             {
5691                 case 0:
5692                 {
5693                     return 150;
5694                 }
5695                 case 1:
5696                 {
5697                     return 151;
5698                 }
5699                 case 2:
5700                 case 3:
5701                 case 4:
5702                 case 5:
5703                 case 6:
5704                 case 7:
5705                 case 8:
5706                 case 9:
5707                 case 10:
5708                 case 11:
5709                 case 12:
5710                 case 13:
5711                 case 14:
5712                 case 15:
5713                 case 16:
5714                 case 17:
5715                 case 18:
5716                 case 19:
5717                 case 20:
5718                 case 21:
5719                 case 22:
5720                 case 23:
5721                 case 24:
5722                 case 25:
5723                 case 26:
5724                 case 27:
5725                 case 28:
5726                 case 29:
5727                 case 30:
5728                 case 31:
5729                 case 32:
5730                 case 33:
5731                 case 34:
5732                 case 35:
5733                 case 36:
5734                 case 37:
5735                 case 38:
5736                 case 39:
5737                 case 40:
5738                 case 41:
5739                 case 42:
5740                 case 43:
5741                 case 44:
5742                 case 45:
5743                 case 46:
5744                 case 47:
5745                 case 48:
5746                 case 49:
5747                 case 50:
5748                 case 51:
5749                 case 52:
5750                 case 53:
5751                 case 54:
5752                 {
5753                     return 152;
5754                 }
5755                 default:
5756                 {
5757                     return -1;
5758                 }
5759             }
5760         }
5761         case 152:
5762         {
5763             switch (i)
5764             {
5765                 case 0:
5766                 {
5767                     return 150;
5768                 }
5769                 case 1:
5770                 {
5771                     return 151;
5772                 }
5773                 case 2:
5774                 case 3:
5775                 case 4:
5776                 case 5:
5777                 case 6:
5778                 case 7:
5779                 case 8:
5780                 case 9:
5781                 case 10:
5782                 case 11:
5783                 case 12:
5784                 case 13:
5785                 case 14:
5786                 case 15:
5787                 case 16:
5788                 case 17:
5789                 case 18:
5790                 case 19:
5791                 case 20:
5792                 case 21:
5793                 case 22:
5794                 case 23:
5795                 case 24:
5796                 case 25:
5797                 case 26:
5798                 case 27:
5799                 case 28:
5800                 case 29:
5801                 case 30:
5802                 case 31:
5803                 case 32:
5804                 case 33:
5805                 case 34:
5806                 case 35:
5807                 case 36:
5808                 case 37:
5809                 case 38:
5810                 case 39:
5811                 case 40:
5812                 case 41:
5813                 case 42:
5814                 case 43:
5815                 case 44:
5816                 case 45:
5817                 case 46:
5818                 case 47:
5819                 case 48:
5820                 case 49:
5821                 case 50:
5822                 case 51:
5823                 case 52:
5824                 case 53:
5825                 case 54:
5826                 {
5827                     return 152;
5828                 }
5829                 default:
5830                 {
5831                     return -1;
5832                 }
5833             }
5834         }
5835         case 151:
5836         {
5837             Lexeme prevMatch = token.match;
5838             token.match = lexeme;
5839             int tokenId = GetTokenId(3);
5840             if (tokenId == CONTINUE_TOKEN)
5841             {
5842                 token.id = tokenId;
5843                 return -1;
5844             }
5845             else if (tokenId != INVALID_TOKEN)
5846             {
5847                 token.id = tokenId;
5848             }
5849             else
5850             {
5851                 token.match = prevMatch;
5852             }
5853             return -1;
5854         }
5855         case 150:
5856         {
5857             Lexeme prevMatch = token.match;
5858             token.match = lexeme;
5859             int tokenId = GetTokenId(3);
5860             if (tokenId == CONTINUE_TOKEN)
5861             {
5862                 token.id = tokenId;
5863                 return -1;
5864             }
5865             else if (tokenId != INVALID_TOKEN)
5866             {
5867                 token.id = tokenId;
5868             }
5869             else
5870             {
5871                 token.match = prevMatch;
5872             }
5873             switch (i)
5874             {
5875                 case 1:
5876                 {
5877                     return 153;
5878                 }
5879                 default:
5880                 {
5881                     return -1;
5882                 }
5883             }
5884         }
5885         case 153:
5886         {
5887             Lexeme prevMatch = token.match;
5888             token.match = lexeme;
5889             int tokenId = GetTokenId(3);
5890             if (tokenId == CONTINUE_TOKEN)
5891             {
5892                 token.id = tokenId;
5893                 return -1;
5894             }
5895             else if (tokenId != INVALID_TOKEN)
5896             {
5897                 token.id = tokenId;
5898             }
5899             else
5900             {
5901                 token.match = prevMatch;
5902             }
5903             return -1;
5904         }
5905         case 3:
5906         {
5907             switch (i)
5908             {
5909                 case 2:
5910                 {
5911                     return 154;
5912                 }
5913                 case 3:
5914                 case 4:
5915                 case 5:
5916                 case 6:
5917                 case 7:
5918                 case 8:
5919                 case 9:
5920                 case 10:
5921                 case 11:
5922                 case 12:
5923                 case 13:
5924                 case 14:
5925                 case 15:
5926                 case 16:
5927                 case 17:
5928                 case 18:
5929                 case 19:
5930                 case 20:
5931                 case 22:
5932                 case 23:
5933                 case 24:
5934                 case 25:
5935                 case 26:
5936                 case 27:
5937                 case 28:
5938                 case 29:
5939                 case 30:
5940                 case 31:
5941                 case 32:
5942                 case 33:
5943                 case 34:
5944                 case 35:
5945                 case 36:
5946                 case 37:
5947                 case 38:
5948                 case 39:
5949                 case 40:
5950                 case 41:
5951                 case 42:
5952                 case 43:
5953                 case 44:
5954                 case 45:
5955                 case 46:
5956                 case 47:
5957                 case 48:
5958                 case 49:
5959                 case 50:
5960                 case 51:
5961                 case 52:
5962                 case 53:
5963                 case 54:
5964                 {
5965                     return 155;
5966                 }
5967                 case 21:
5968                 {
5969                     return 156;
5970                 }
5971                 default:
5972                 {
5973                     return -1;
5974                 }
5975             }
5976         }
5977         case 156:
5978         {
5979             switch (i)
5980             {
5981                 case 2:
5982                 {
5983                     return 157;
5984                 }
5985                 case 3:
5986                 case 4:
5987                 case 5:
5988                 case 6:
5989                 case 7:
5990                 case 8:
5991                 case 9:
5992                 case 10:
5993                 case 11:
5994                 case 12:
5995                 case 13:
5996                 case 14:
5997                 case 15:
5998                 case 16:
5999                 case 19:
6000                 case 28:
6001                 case 29:
6002                 case 30:
6003                 case 31:
6004                 case 32:
6005                 case 37:
6006                 case 38:
6007                 case 39:
6008                 case 40:
6009                 case 41:
6010                 case 42:
6011                 case 43:
6012                 case 44:
6013                 case 45:
6014                 case 46:
6015                 case 47:
6016                 case 48:
6017                 case 49:
6018                 case 50:
6019                 case 51:
6020                 case 52:
6021                 case 53:
6022                 case 54:
6023                 {
6024                     return 158;
6025                 }
6026                 case 17:
6027                 {
6028                     return 159;
6029                 }
6030                 case 18:
6031                 {
6032                     return 160;
6033                 }
6034                 case 20:
6035                 {
6036                     return 161;
6037                 }
6038                 case 21:
6039                 case 22:
6040                 case 23:
6041                 case 24:
6042                 case 25:
6043                 case 26:
6044                 case 27:
6045                 case 33:
6046                 case 34:
6047                 case 35:
6048                 {
6049                     return 162;
6050                 }
6051                 case 36:
6052                 {
6053                     return 163;
6054                 }
6055                 default:
6056                 {
6057                     return -1;
6058                 }
6059             }
6060         }
6061         case 163:
6062         {
6063             switch (i)
6064             {
6065                 case 2:
6066                 {
6067                     return 154;
6068                 }
6069                 case 3:
6070                 case 4:
6071                 case 5:
6072                 case 6:
6073                 case 7:
6074                 case 8:
6075                 case 9:
6076                 case 10:
6077                 case 11:
6078                 case 12:
6079                 case 13:
6080                 case 14:
6081                 case 15:
6082                 case 16:
6083                 case 17:
6084                 case 18:
6085                 case 19:
6086                 case 20:
6087                 case 22:
6088                 case 23:
6089                 case 24:
6090                 case 25:
6091                 case 26:
6092                 case 27:
6093                 case 28:
6094                 case 29:
6095                 case 30:
6096                 case 31:
6097                 case 32:
6098                 case 33:
6099                 case 34:
6100                 case 35:
6101                 case 37:
6102                 case 38:
6103                 case 39:
6104                 case 40:
6105                 case 41:
6106                 case 42:
6107                 case 43:
6108                 case 44:
6109                 case 45:
6110                 case 46:
6111                 case 47:
6112                 case 48:
6113                 case 49:
6114                 case 50:
6115                 case 51:
6116                 case 52:
6117                 case 53:
6118                 case 54:
6119                 {
6120                     return 155;
6121                 }
6122                 case 21:
6123                 {
6124                     return 156;
6125                 }
6126                 case 36:
6127                 {
6128                     return 164;
6129                 }
6130                 default:
6131                 {
6132                     return -1;
6133                 }
6134             }
6135         }
6136         case 164:
6137         {
6138             switch (i)
6139             {
6140                 case 2:
6141                 {
6142                     return 154;
6143                 }
6144                 case 3:
6145                 case 4:
6146                 case 5:
6147                 case 6:
6148                 case 7:
6149                 case 8:
6150                 case 9:
6151                 case 10:
6152                 case 11:
6153                 case 12:
6154                 case 13:
6155                 case 14:
6156                 case 15:
6157                 case 16:
6158                 case 17:
6159                 case 18:
6160                 case 19:
6161                 case 20:
6162                 case 22:
6163                 case 23:
6164                 case 24:
6165                 case 25:
6166                 case 26:
6167                 case 27:
6168                 case 28:
6169                 case 29:
6170                 case 30:
6171                 case 31:
6172                 case 32:
6173                 case 33:
6174                 case 34:
6175                 case 35:
6176                 case 37:
6177                 case 38:
6178                 case 39:
6179                 case 40:
6180                 case 41:
6181                 case 42:
6182                 case 43:
6183                 case 44:
6184                 case 45:
6185                 case 46:
6186                 case 47:
6187                 case 48:
6188                 case 49:
6189                 case 50:
6190                 case 51:
6191                 case 52:
6192                 case 53:
6193                 case 54:
6194                 {
6195                     return 155;
6196                 }
6197                 case 21:
6198                 {
6199                     return 156;
6200                 }
6201                 case 36:
6202                 {
6203                     return 165;
6204                 }
6205                 default:
6206                 {
6207                     return -1;
6208                 }
6209             }
6210         }
6211         case 165:
6212         {
6213             switch (i)
6214             {
6215                 case 2:
6216                 {
6217                     return 154;
6218                 }
6219                 case 3:
6220                 case 4:
6221                 case 5:
6222                 case 6:
6223                 case 7:
6224                 case 8:
6225                 case 9:
6226                 case 10:
6227                 case 11:
6228                 case 12:
6229                 case 13:
6230                 case 14:
6231                 case 15:
6232                 case 16:
6233                 case 17:
6234                 case 18:
6235                 case 19:
6236                 case 20:
6237                 case 22:
6238                 case 23:
6239                 case 24:
6240                 case 25:
6241                 case 26:
6242                 case 27:
6243                 case 28:
6244                 case 29:
6245                 case 30:
6246                 case 31:
6247                 case 32:
6248                 case 33:
6249                 case 34:
6250                 case 35:
6251                 case 36:
6252                 case 37:
6253                 case 38:
6254                 case 39:
6255                 case 40:
6256                 case 41:
6257                 case 42:
6258                 case 43:
6259                 case 44:
6260                 case 45:
6261                 case 46:
6262                 case 47:
6263                 case 48:
6264                 case 49:
6265                 case 50:
6266                 case 51:
6267                 case 52:
6268                 case 53:
6269                 case 54:
6270                 {
6271                     return 155;
6272                 }
6273                 case 21:
6274                 {
6275                     return 156;
6276                 }
6277                 default:
6278                 {
6279                     return -1;
6280                 }
6281             }
6282         }
6283         case 162:
6284         {
6285             switch (i)
6286             {
6287                 case 2:
6288                 {
6289                     return 154;
6290                 }
6291                 case 3:
6292                 case 4:
6293                 case 5:
6294                 case 6:
6295                 case 7:
6296                 case 8:
6297                 case 9:
6298                 case 10:
6299                 case 11:
6300                 case 12:
6301                 case 13:
6302                 case 14:
6303                 case 15:
6304                 case 16:
6305                 case 17:
6306                 case 18:
6307                 case 19:
6308                 case 20:
6309                 case 22:
6310                 case 23:
6311                 case 24:
6312                 case 25:
6313                 case 26:
6314                 case 27:
6315                 case 28:
6316                 case 29:
6317                 case 30:
6318                 case 31:
6319                 case 32:
6320                 case 33:
6321                 case 34:
6322                 case 35:
6323                 case 36:
6324                 case 37:
6325                 case 38:
6326                 case 39:
6327                 case 40:
6328                 case 41:
6329                 case 42:
6330                 case 43:
6331                 case 44:
6332                 case 45:
6333                 case 46:
6334                 case 47:
6335                 case 48:
6336                 case 49:
6337                 case 50:
6338                 case 51:
6339                 case 52:
6340                 case 53:
6341                 case 54:
6342                 {
6343                     return 155;
6344                 }
6345                 case 21:
6346                 {
6347                     return 156;
6348                 }
6349                 default:
6350                 {
6351                     return -1;
6352                 }
6353             }
6354         }
6355         case 161:
6356         {
6357             switch (i)
6358             {
6359                 case 3:
6360                 case 4:
6361                 case 5:
6362                 case 6:
6363                 case 7:
6364                 case 8:
6365                 case 9:
6366                 case 10:
6367                 case 11:
6368                 case 12:
6369                 case 13:
6370                 case 14:
6371                 case 15:
6372                 case 16:
6373                 case 17:
6374                 case 18:
6375                 case 19:
6376                 case 20:
6377                 case 21:
6378                 case 22:
6379                 case 23:
6380                 case 24:
6381                 case 25:
6382                 case 26:
6383                 case 27:
6384                 case 37:
6385                 case 38:
6386                 case 39:
6387                 case 40:
6388                 case 41:
6389                 case 42:
6390                 case 43:
6391                 case 44:
6392                 case 45:
6393                 case 46:
6394                 case 47:
6395                 case 48:
6396                 case 49:
6397                 case 50:
6398                 case 51:
6399                 case 52:
6400                 case 53:
6401                 case 54:
6402                 {
6403                     return 158;
6404                 }
6405                 case 2:
6406                 {
6407                     return 166;
6408                 }
6409                 case 28:
6410                 case 29:
6411                 case 30:
6412                 case 31:
6413                 case 32:
6414                 case 33:
6415                 case 34:
6416                 case 35:
6417                 case 36:
6418                 {
6419                     return 167;
6420                 }
6421                 default:
6422                 {
6423                     return -1;
6424                 }
6425             }
6426         }
6427         case 167:
6428         {
6429             switch (i)
6430             {
6431                 case 2:
6432                 {
6433                     return 154;
6434                 }
6435                 case 3:
6436                 case 4:
6437                 case 5:
6438                 case 6:
6439                 case 7:
6440                 case 8:
6441                 case 9:
6442                 case 10:
6443                 case 11:
6444                 case 12:
6445                 case 13:
6446                 case 14:
6447                 case 15:
6448                 case 16:
6449                 case 17:
6450                 case 18:
6451                 case 19:
6452                 case 20:
6453                 case 22:
6454                 case 23:
6455                 case 24:
6456                 case 25:
6457                 case 26:
6458                 case 27:
6459                 case 37:
6460                 case 38:
6461                 case 39:
6462                 case 40:
6463                 case 41:
6464                 case 42:
6465                 case 43:
6466                 case 44:
6467                 case 45:
6468                 case 46:
6469                 case 47:
6470                 case 48:
6471                 case 49:
6472                 case 50:
6473                 case 51:
6474                 case 52:
6475                 case 53:
6476                 case 54:
6477                 {
6478                     return 155;
6479                 }
6480                 case 21:
6481                 {
6482                     return 156;
6483                 }
6484                 case 28:
6485                 case 29:
6486                 case 30:
6487                 case 31:
6488                 case 32:
6489                 case 33:
6490                 case 34:
6491                 case 35:
6492                 case 36:
6493                 {
6494                     return 167;
6495                 }
6496                 default:
6497                 {
6498                     return -1;
6499                 }
6500             }
6501         }
6502         case 166:
6503         {
6504             Lexeme prevMatch = token.match;
6505             token.match = lexeme;
6506             int tokenId = GetTokenId(7);
6507             if (tokenId == CONTINUE_TOKEN)
6508             {
6509                 token.id = tokenId;
6510                 return -1;
6511             }
6512             else if (tokenId != INVALID_TOKEN)
6513             {
6514                 token.id = tokenId;
6515             }
6516             else
6517             {
6518                 token.match = prevMatch;
6519             }
6520             return -1;
6521         }
6522         case 160:
6523         {
6524             switch (i)
6525             {
6526                 case 3:
6527                 case 4:
6528                 case 5:
6529                 case 6:
6530                 case 7:
6531                 case 8:
6532                 case 9:
6533                 case 10:
6534                 case 11:
6535                 case 12:
6536                 case 13:
6537                 case 14:
6538                 case 15:
6539                 case 16:
6540                 case 17:
6541                 case 18:
6542                 case 19:
6543                 case 20:
6544                 case 21:
6545                 case 22:
6546                 case 23:
6547                 case 24:
6548                 case 25:
6549                 case 26:
6550                 case 27:
6551                 case 37:
6552                 case 38:
6553                 case 39:
6554                 case 40:
6555                 case 41:
6556                 case 42:
6557                 case 43:
6558                 case 44:
6559                 case 45:
6560                 case 46:
6561                 case 47:
6562                 case 48:
6563                 case 49:
6564                 case 50:
6565                 case 51:
6566                 case 52:
6567                 case 53:
6568                 case 54:
6569                 {
6570                     return 158;
6571                 }
6572                 case 2:
6573                 {
6574                     return 166;
6575                 }
6576                 case 28:
6577                 case 29:
6578                 case 30:
6579                 case 31:
6580                 case 32:
6581                 case 33:
6582                 case 34:
6583                 case 35:
6584                 case 36:
6585                 {
6586                     return 168;
6587                 }
6588                 default:
6589                 {
6590                     return -1;
6591                 }
6592             }
6593         }
6594         case 168:
6595         {
6596             switch (i)
6597             {
6598                 case 3:
6599                 case 4:
6600                 case 5:
6601                 case 6:
6602                 case 7:
6603                 case 8:
6604                 case 9:
6605                 case 10:
6606                 case 11:
6607                 case 12:
6608                 case 13:
6609                 case 14:
6610                 case 15:
6611                 case 16:
6612                 case 17:
6613                 case 18:
6614                 case 19:
6615                 case 20:
6616                 case 21:
6617                 case 22:
6618                 case 23:
6619                 case 24:
6620                 case 25:
6621                 case 26:
6622                 case 27:
6623                 case 37:
6624                 case 38:
6625                 case 39:
6626                 case 40:
6627                 case 41:
6628                 case 42:
6629                 case 43:
6630                 case 44:
6631                 case 45:
6632                 case 46:
6633                 case 47:
6634                 case 48:
6635                 case 49:
6636                 case 50:
6637                 case 51:
6638                 case 52:
6639                 case 53:
6640                 case 54:
6641                 {
6642                     return 158;
6643                 }
6644                 case 2:
6645                 {
6646                     return 166;
6647                 }
6648                 case 28:
6649                 case 29:
6650                 case 30:
6651                 case 31:
6652                 case 32:
6653                 case 33:
6654                 case 34:
6655                 case 35:
6656                 case 36:
6657                 {
6658                     return 169;
6659                 }
6660                 default:
6661                 {
6662                     return -1;
6663                 }
6664             }
6665         }
6666         case 169:
6667         {
6668             switch (i)
6669             {
6670                 case 3:
6671                 case 4:
6672                 case 5:
6673                 case 6:
6674                 case 7:
6675                 case 8:
6676                 case 9:
6677                 case 10:
6678                 case 11:
6679                 case 12:
6680                 case 13:
6681                 case 14:
6682                 case 15:
6683                 case 16:
6684                 case 17:
6685                 case 18:
6686                 case 19:
6687                 case 20:
6688                 case 21:
6689                 case 22:
6690                 case 23:
6691                 case 24:
6692                 case 25:
6693                 case 26:
6694                 case 27:
6695                 case 37:
6696                 case 38:
6697                 case 39:
6698                 case 40:
6699                 case 41:
6700                 case 42:
6701                 case 43:
6702                 case 44:
6703                 case 45:
6704                 case 46:
6705                 case 47:
6706                 case 48:
6707                 case 49:
6708                 case 50:
6709                 case 51:
6710                 case 52:
6711                 case 53:
6712                 case 54:
6713                 {
6714                     return 158;
6715                 }
6716                 case 2:
6717                 {
6718                     return 166;
6719                 }
6720                 case 28:
6721                 case 29:
6722                 case 30:
6723                 case 31:
6724                 case 32:
6725                 case 33:
6726                 case 34:
6727                 case 35:
6728                 case 36:
6729                 {
6730                     return 170;
6731                 }
6732                 default:
6733                 {
6734                     return -1;
6735                 }
6736             }
6737         }
6738         case 170:
6739         {
6740             switch (i)
6741             {
6742                 case 3:
6743                 case 4:
6744                 case 5:
6745                 case 6:
6746                 case 7:
6747                 case 8:
6748                 case 9:
6749                 case 10:
6750                 case 11:
6751                 case 12:
6752                 case 13:
6753                 case 14:
6754                 case 15:
6755                 case 16:
6756                 case 17:
6757                 case 18:
6758                 case 19:
6759                 case 20:
6760                 case 21:
6761                 case 22:
6762                 case 23:
6763                 case 24:
6764                 case 25:
6765                 case 26:
6766                 case 27:
6767                 case 37:
6768                 case 38:
6769                 case 39:
6770                 case 40:
6771                 case 41:
6772                 case 42:
6773                 case 43:
6774                 case 44:
6775                 case 45:
6776                 case 46:
6777                 case 47:
6778                 case 48:
6779                 case 49:
6780                 case 50:
6781                 case 51:
6782                 case 52:
6783                 case 53:
6784                 case 54:
6785                 {
6786                     return 158;
6787                 }
6788                 case 2:
6789                 {
6790                     return 166;
6791                 }
6792                 case 28:
6793                 case 29:
6794                 case 30:
6795                 case 31:
6796                 case 32:
6797                 case 33:
6798                 case 34:
6799                 case 35:
6800                 case 36:
6801                 {
6802                     return 171;
6803                 }
6804                 default:
6805                 {
6806                     return -1;
6807                 }
6808             }
6809         }
6810         case 171:
6811         {
6812             switch (i)
6813             {
6814                 case 3:
6815                 case 4:
6816                 case 5:
6817                 case 6:
6818                 case 7:
6819                 case 8:
6820                 case 9:
6821                 case 10:
6822                 case 11:
6823                 case 12:
6824                 case 13:
6825                 case 14:
6826                 case 15:
6827                 case 16:
6828                 case 17:
6829                 case 18:
6830                 case 19:
6831                 case 20:
6832                 case 21:
6833                 case 22:
6834                 case 23:
6835                 case 24:
6836                 case 25:
6837                 case 26:
6838                 case 27:
6839                 case 37:
6840                 case 38:
6841                 case 39:
6842                 case 40:
6843                 case 41:
6844                 case 42:
6845                 case 43:
6846                 case 44:
6847                 case 45:
6848                 case 46:
6849                 case 47:
6850                 case 48:
6851                 case 49:
6852                 case 50:
6853                 case 51:
6854                 case 52:
6855                 case 53:
6856                 case 54:
6857                 {
6858                     return 158;
6859                 }
6860                 case 2:
6861                 {
6862                     return 166;
6863                 }
6864                 case 28:
6865                 case 29:
6866                 case 30:
6867                 case 31:
6868                 case 32:
6869                 case 33:
6870                 case 34:
6871                 case 35:
6872                 case 36:
6873                 {
6874                     return 172;
6875                 }
6876                 default:
6877                 {
6878                     return -1;
6879                 }
6880             }
6881         }
6882         case 172:
6883         {
6884             switch (i)
6885             {
6886                 case 3:
6887                 case 4:
6888                 case 5:
6889                 case 6:
6890                 case 7:
6891                 case 8:
6892                 case 9:
6893                 case 10:
6894                 case 11:
6895                 case 12:
6896                 case 13:
6897                 case 14:
6898                 case 15:
6899                 case 16:
6900                 case 17:
6901                 case 18:
6902                 case 19:
6903                 case 20:
6904                 case 21:
6905                 case 22:
6906                 case 23:
6907                 case 24:
6908                 case 25:
6909                 case 26:
6910                 case 27:
6911                 case 37:
6912                 case 38:
6913                 case 39:
6914                 case 40:
6915                 case 41:
6916                 case 42:
6917                 case 43:
6918                 case 44:
6919                 case 45:
6920                 case 46:
6921                 case 47:
6922                 case 48:
6923                 case 49:
6924                 case 50:
6925                 case 51:
6926                 case 52:
6927                 case 53:
6928                 case 54:
6929                 {
6930                     return 158;
6931                 }
6932                 case 2:
6933                 {
6934                     return 166;
6935                 }
6936                 case 28:
6937                 case 29:
6938                 case 30:
6939                 case 31:
6940                 case 32:
6941                 case 33:
6942                 case 34:
6943                 case 35:
6944                 case 36:
6945                 {
6946                     return 173;
6947                 }
6948                 default:
6949                 {
6950                     return -1;
6951                 }
6952             }
6953         }
6954         case 173:
6955         {
6956             switch (i)
6957             {
6958                 case 3:
6959                 case 4:
6960                 case 5:
6961                 case 6:
6962                 case 7:
6963                 case 8:
6964                 case 9:
6965                 case 10:
6966                 case 11:
6967                 case 12:
6968                 case 13:
6969                 case 14:
6970                 case 15:
6971                 case 16:
6972                 case 17:
6973                 case 18:
6974                 case 19:
6975                 case 20:
6976                 case 21:
6977                 case 22:
6978                 case 23:
6979                 case 24:
6980                 case 25:
6981                 case 26:
6982                 case 27:
6983                 case 37:
6984                 case 38:
6985                 case 39:
6986                 case 40:
6987                 case 41:
6988                 case 42:
6989                 case 43:
6990                 case 44:
6991                 case 45:
6992                 case 46:
6993                 case 47:
6994                 case 48:
6995                 case 49:
6996                 case 50:
6997                 case 51:
6998                 case 52:
6999                 case 53:
7000                 case 54:
7001                 {
7002                     return 158;
7003                 }
7004                 case 2:
7005                 {
7006                     return 166;
7007                 }
7008                 case 28:
7009                 case 29:
7010                 case 30:
7011                 case 31:
7012                 case 32:
7013                 case 33:
7014                 case 34:
7015                 case 35:
7016                 case 36:
7017                 {
7018                     return 174;
7019                 }
7020                 default:
7021                 {
7022                     return -1;
7023                 }
7024             }
7025         }
7026         case 174:
7027         {
7028             switch (i)
7029             {
7030                 case 3:
7031                 case 4:
7032                 case 5:
7033                 case 6:
7034                 case 7:
7035                 case 8:
7036                 case 9:
7037                 case 10:
7038                 case 11:
7039                 case 12:
7040                 case 13:
7041                 case 14:
7042                 case 15:
7043                 case 16:
7044                 case 17:
7045                 case 18:
7046                 case 19:
7047                 case 20:
7048                 case 21:
7049                 case 22:
7050                 case 23:
7051                 case 24:
7052                 case 25:
7053                 case 26:
7054                 case 27:
7055                 case 37:
7056                 case 38:
7057                 case 39:
7058                 case 40:
7059                 case 41:
7060                 case 42:
7061                 case 43:
7062                 case 44:
7063                 case 45:
7064                 case 46:
7065                 case 47:
7066                 case 48:
7067                 case 49:
7068                 case 50:
7069                 case 51:
7070                 case 52:
7071                 case 53:
7072                 case 54:
7073                 {
7074                     return 158;
7075                 }
7076                 case 2:
7077                 {
7078                     return 166;
7079                 }
7080                 case 28:
7081                 case 29:
7082                 case 30:
7083                 case 31:
7084                 case 32:
7085                 case 33:
7086                 case 34:
7087                 case 35:
7088                 case 36:
7089                 {
7090                     return 175;
7091                 }
7092                 default:
7093                 {
7094                     return -1;
7095                 }
7096             }
7097         }
7098         case 175:
7099         {
7100             switch (i)
7101             {
7102                 case 2:
7103                 {
7104                     return 154;
7105                 }
7106                 case 3:
7107                 case 4:
7108                 case 5:
7109                 case 6:
7110                 case 7:
7111                 case 8:
7112                 case 9:
7113                 case 10:
7114                 case 11:
7115                 case 12:
7116                 case 13:
7117                 case 14:
7118                 case 15:
7119                 case 16:
7120                 case 17:
7121                 case 18:
7122                 case 19:
7123                 case 20:
7124                 case 22:
7125                 case 23:
7126                 case 24:
7127                 case 25:
7128                 case 26:
7129                 case 27:
7130                 case 28:
7131                 case 29:
7132                 case 30:
7133                 case 31:
7134                 case 32:
7135                 case 33:
7136                 case 34:
7137                 case 35:
7138                 case 36:
7139                 case 37:
7140                 case 38:
7141                 case 39:
7142                 case 40:
7143                 case 41:
7144                 case 42:
7145                 case 43:
7146                 case 44:
7147                 case 45:
7148                 case 46:
7149                 case 47:
7150                 case 48:
7151                 case 49:
7152                 case 50:
7153                 case 51:
7154                 case 52:
7155                 case 53:
7156                 case 54:
7157                 {
7158                     return 155;
7159                 }
7160                 case 21:
7161                 {
7162                     return 156;
7163                 }
7164                 default:
7165                 {
7166                     return -1;
7167                 }
7168             }
7169         }
7170         case 159:
7171         {
7172             switch (i)
7173             {
7174                 case 3:
7175                 case 4:
7176                 case 5:
7177                 case 6:
7178                 case 7:
7179                 case 8:
7180                 case 9:
7181                 case 10:
7182                 case 11:
7183                 case 12:
7184                 case 13:
7185                 case 14:
7186                 case 15:
7187                 case 16:
7188                 case 17:
7189                 case 18:
7190                 case 19:
7191                 case 20:
7192                 case 21:
7193                 case 22:
7194                 case 23:
7195                 case 24:
7196                 case 25:
7197                 case 26:
7198                 case 27:
7199                 case 37:
7200                 case 38:
7201                 case 39:
7202                 case 40:
7203                 case 41:
7204                 case 42:
7205                 case 43:
7206                 case 44:
7207                 case 45:
7208                 case 46:
7209                 case 47:
7210                 case 48:
7211                 case 49:
7212                 case 50:
7213                 case 51:
7214                 case 52:
7215                 case 53:
7216                 case 54:
7217                 {
7218                     return 158;
7219                 }
7220                 case 2:
7221                 {
7222                     return 166;
7223                 }
7224                 case 28:
7225                 case 29:
7226                 case 30:
7227                 case 31:
7228                 case 32:
7229                 case 33:
7230                 case 34:
7231                 case 35:
7232                 case 36:
7233                 {
7234                     return 176;
7235                 }
7236                 default:
7237                 {
7238                     return -1;
7239                 }
7240             }
7241         }
7242         case 176:
7243         {
7244             switch (i)
7245             {
7246                 case 3:
7247                 case 4:
7248                 case 5:
7249                 case 6:
7250                 case 7:
7251                 case 8:
7252                 case 9:
7253                 case 10:
7254                 case 11:
7255                 case 12:
7256                 case 13:
7257                 case 14:
7258                 case 15:
7259                 case 16:
7260                 case 17:
7261                 case 18:
7262                 case 19:
7263                 case 20:
7264                 case 21:
7265                 case 22:
7266                 case 23:
7267                 case 24:
7268                 case 25:
7269                 case 26:
7270                 case 27:
7271                 case 37:
7272                 case 38:
7273                 case 39:
7274                 case 40:
7275                 case 41:
7276                 case 42:
7277                 case 43:
7278                 case 44:
7279                 case 45:
7280                 case 46:
7281                 case 47:
7282                 case 48:
7283                 case 49:
7284                 case 50:
7285                 case 51:
7286                 case 52:
7287                 case 53:
7288                 case 54:
7289                 {
7290                     return 158;
7291                 }
7292                 case 2:
7293                 {
7294                     return 166;
7295                 }
7296                 case 28:
7297                 case 29:
7298                 case 30:
7299                 case 31:
7300                 case 32:
7301                 case 33:
7302                 case 34:
7303                 case 35:
7304                 case 36:
7305                 {
7306                     return 177;
7307                 }
7308                 default:
7309                 {
7310                     return -1;
7311                 }
7312             }
7313         }
7314         case 177:
7315         {
7316             switch (i)
7317             {
7318                 case 3:
7319                 case 4:
7320                 case 5:
7321                 case 6:
7322                 case 7:
7323                 case 8:
7324                 case 9:
7325                 case 10:
7326                 case 11:
7327                 case 12:
7328                 case 13:
7329                 case 14:
7330                 case 15:
7331                 case 16:
7332                 case 17:
7333                 case 18:
7334                 case 19:
7335                 case 20:
7336                 case 21:
7337                 case 22:
7338                 case 23:
7339                 case 24:
7340                 case 25:
7341                 case 26:
7342                 case 27:
7343                 case 37:
7344                 case 38:
7345                 case 39:
7346                 case 40:
7347                 case 41:
7348                 case 42:
7349                 case 43:
7350                 case 44:
7351                 case 45:
7352                 case 46:
7353                 case 47:
7354                 case 48:
7355                 case 49:
7356                 case 50:
7357                 case 51:
7358                 case 52:
7359                 case 53:
7360                 case 54:
7361                 {
7362                     return 158;
7363                 }
7364                 case 2:
7365                 {
7366                     return 166;
7367                 }
7368                 case 28:
7369                 case 29:
7370                 case 30:
7371                 case 31:
7372                 case 32:
7373                 case 33:
7374                 case 34:
7375                 case 35:
7376                 case 36:
7377                 {
7378                     return 178;
7379                 }
7380                 default:
7381                 {
7382                     return -1;
7383                 }
7384             }
7385         }
7386         case 178:
7387         {
7388             switch (i)
7389             {
7390                 case 3:
7391                 case 4:
7392                 case 5:
7393                 case 6:
7394                 case 7:
7395                 case 8:
7396                 case 9:
7397                 case 10:
7398                 case 11:
7399                 case 12:
7400                 case 13:
7401                 case 14:
7402                 case 15:
7403                 case 16:
7404                 case 17:
7405                 case 18:
7406                 case 19:
7407                 case 20:
7408                 case 21:
7409                 case 22:
7410                 case 23:
7411                 case 24:
7412                 case 25:
7413                 case 26:
7414                 case 27:
7415                 case 37:
7416                 case 38:
7417                 case 39:
7418                 case 40:
7419                 case 41:
7420                 case 42:
7421                 case 43:
7422                 case 44:
7423                 case 45:
7424                 case 46:
7425                 case 47:
7426                 case 48:
7427                 case 49:
7428                 case 50:
7429                 case 51:
7430                 case 52:
7431                 case 53:
7432                 case 54:
7433                 {
7434                     return 158;
7435                 }
7436                 case 2:
7437                 {
7438                     return 166;
7439                 }
7440                 case 28:
7441                 case 29:
7442                 case 30:
7443                 case 31:
7444                 case 32:
7445                 case 33:
7446                 case 34:
7447                 case 35:
7448                 case 36:
7449                 {
7450                     return 179;
7451                 }
7452                 default:
7453                 {
7454                     return -1;
7455                 }
7456             }
7457         }
7458         case 179:
7459         {
7460             switch (i)
7461             {
7462                 case 2:
7463                 {
7464                     return 154;
7465                 }
7466                 case 3:
7467                 case 4:
7468                 case 5:
7469                 case 6:
7470                 case 7:
7471                 case 8:
7472                 case 9:
7473                 case 10:
7474                 case 11:
7475                 case 12:
7476                 case 13:
7477                 case 14:
7478                 case 15:
7479                 case 16:
7480                 case 17:
7481                 case 18:
7482                 case 19:
7483                 case 20:
7484                 case 22:
7485                 case 23:
7486                 case 24:
7487                 case 25:
7488                 case 26:
7489                 case 27:
7490                 case 28:
7491                 case 29:
7492                 case 30:
7493                 case 31:
7494                 case 32:
7495                 case 33:
7496                 case 34:
7497                 case 35:
7498                 case 36:
7499                 case 37:
7500                 case 38:
7501                 case 39:
7502                 case 40:
7503                 case 41:
7504                 case 42:
7505                 case 43:
7506                 case 44:
7507                 case 45:
7508                 case 46:
7509                 case 47:
7510                 case 48:
7511                 case 49:
7512                 case 50:
7513                 case 51:
7514                 case 52:
7515                 case 53:
7516                 case 54:
7517                 {
7518                     return 155;
7519                 }
7520                 case 21:
7521                 {
7522                     return 156;
7523                 }
7524                 default:
7525                 {
7526                     return -1;
7527                 }
7528             }
7529         }
7530         case 158:
7531         {
7532             switch (i)
7533             {
7534                 case 3:
7535                 case 4:
7536                 case 5:
7537                 case 6:
7538                 case 7:
7539                 case 8:
7540                 case 9:
7541                 case 10:
7542                 case 11:
7543                 case 12:
7544                 case 13:
7545                 case 14:
7546                 case 15:
7547                 case 16:
7548                 case 17:
7549                 case 18:
7550                 case 19:
7551                 case 20:
7552                 case 21:
7553                 case 22:
7554                 case 23:
7555                 case 24:
7556                 case 25:
7557                 case 26:
7558                 case 27:
7559                 case 28:
7560                 case 29:
7561                 case 30:
7562                 case 31:
7563                 case 32:
7564                 case 33:
7565                 case 34:
7566                 case 35:
7567                 case 36:
7568                 case 37:
7569                 case 38:
7570                 case 39:
7571                 case 40:
7572                 case 41:
7573                 case 42:
7574                 case 43:
7575                 case 44:
7576                 case 45:
7577                 case 46:
7578                 case 47:
7579                 case 48:
7580                 case 49:
7581                 case 50:
7582                 case 51:
7583                 case 52:
7584                 case 53:
7585                 case 54:
7586                 {
7587                     return 158;
7588                 }
7589                 case 2:
7590                 {
7591                     return 166;
7592                 }
7593                 default:
7594                 {
7595                     return -1;
7596                 }
7597             }
7598         }
7599         case 157:
7600         {
7601             Lexeme prevMatch = token.match;
7602             token.match = lexeme;
7603             int tokenId = GetTokenId(7);
7604             if (tokenId == CONTINUE_TOKEN)
7605             {
7606                 token.id = tokenId;
7607                 return -1;
7608             }
7609             else if (tokenId != INVALID_TOKEN)
7610             {
7611                 token.id = tokenId;
7612             }
7613             else
7614             {
7615                 token.match = prevMatch;
7616             }
7617             switch (i)
7618             {
7619                 case 2:
7620                 {
7621                     return 99;
7622                 }
7623                 case 3:
7624                 case 4:
7625                 case 5:
7626                 case 6:
7627                 case 7:
7628                 case 8:
7629                 case 9:
7630                 case 10:
7631                 case 11:
7632                 case 12:
7633                 case 13:
7634                 case 14:
7635                 case 15:
7636                 case 16:
7637                 case 17:
7638                 case 18:
7639                 case 19:
7640                 case 20:
7641                 case 22:
7642                 case 23:
7643                 case 24:
7644                 case 25:
7645                 case 26:
7646                 case 27:
7647                 case 28:
7648                 case 29:
7649                 case 30:
7650                 case 31:
7651                 case 32:
7652                 case 33:
7653                 case 34:
7654                 case 35:
7655                 case 36:
7656                 case 37:
7657                 case 38:
7658                 case 39:
7659                 case 40:
7660                 case 41:
7661                 case 42:
7662                 case 43:
7663                 case 44:
7664                 case 45:
7665                 case 46:
7666                 case 47:
7667                 case 48:
7668                 case 49:
7669                 case 50:
7670                 case 51:
7671                 case 52:
7672                 case 53:
7673                 case 54:
7674                 {
7675                     return 100;
7676                 }
7677                 case 21:
7678                 {
7679                     return 101;
7680                 }
7681                 default:
7682                 {
7683                     return -1;
7684                 }
7685             }
7686         }
7687         case 155:
7688         {
7689             switch (i)
7690             {
7691                 case 2:
7692                 {
7693                     return 154;
7694                 }
7695                 case 3:
7696                 case 4:
7697                 case 5:
7698                 case 6:
7699                 case 7:
7700                 case 8:
7701                 case 9:
7702                 case 10:
7703                 case 11:
7704                 case 12:
7705                 case 13:
7706                 case 14:
7707                 case 15:
7708                 case 16:
7709                 case 17:
7710                 case 18:
7711                 case 19:
7712                 case 20:
7713                 case 22:
7714                 case 23:
7715                 case 24:
7716                 case 25:
7717                 case 26:
7718                 case 27:
7719                 case 28:
7720                 case 29:
7721                 case 30:
7722                 case 31:
7723                 case 32:
7724                 case 33:
7725                 case 34:
7726                 case 35:
7727                 case 36:
7728                 case 37:
7729                 case 38:
7730                 case 39:
7731                 case 40:
7732                 case 41:
7733                 case 42:
7734                 case 43:
7735                 case 44:
7736                 case 45:
7737                 case 46:
7738                 case 47:
7739                 case 48:
7740                 case 49:
7741                 case 50:
7742                 case 51:
7743                 case 52:
7744                 case 53:
7745                 case 54:
7746                 {
7747                     return 155;
7748                 }
7749                 case 21:
7750                 {
7751                     return 156;
7752                 }
7753                 default:
7754                 {
7755                     return -1;
7756                 }
7757             }
7758         }
7759         case 154:
7760         {
7761             Lexeme prevMatch = token.match;
7762             token.match = lexeme;
7763             int tokenId = GetTokenId(7);
7764             if (tokenId == CONTINUE_TOKEN)
7765             {
7766                 token.id = tokenId;
7767                 return -1;
7768             }
7769             else if (tokenId != INVALID_TOKEN)
7770             {
7771                 token.id = tokenId;
7772             }
7773             else
7774             {
7775                 token.match = prevMatch;
7776             }
7777             return -1;
7778         }
7779         case 2:
7780         {
7781             Lexeme prevMatch = token.match;
7782             token.match = lexeme;
7783             int tokenId = GetTokenId(4);
7784             if (tokenId == CONTINUE_TOKEN)
7785             {
7786                 token.id = tokenId;
7787                 return -1;
7788             }
7789             else if (tokenId != INVALID_TOKEN)
7790             {
7791                 token.id = tokenId;
7792             }
7793             else
7794             {
7795                 token.match = prevMatch;
7796             }
7797             return -1;
7798         }
7799         case 1:
7800         {
7801             Lexeme prevMatch = token.match;
7802             token.match = lexeme;
7803             int tokenId = GetTokenId(4);
7804             if (tokenId == CONTINUE_TOKEN)
7805             {
7806                 token.id = tokenId;
7807                 return -1;
7808             }
7809             else if (tokenId != INVALID_TOKEN)
7810             {
7811                 token.id = tokenId;
7812             }
7813             else
7814             {
7815                 token.match = prevMatch;
7816             }
7817             switch (i)
7818             {
7819                 case 1:
7820                 {
7821                     return 180;
7822                 }
7823                 default:
7824                 {
7825                     return -1;
7826                 }
7827             }
7828         }
7829         case 180:
7830         {
7831             Lexeme prevMatch = token.match;
7832             token.match = lexeme;
7833             int tokenId = GetTokenId(4);
7834             if (tokenId == CONTINUE_TOKEN)
7835             {
7836                 token.id = tokenId;
7837                 return -1;
7838             }
7839             else if (tokenId != INVALID_TOKEN)
7840             {
7841                 token.id = tokenId;
7842             }
7843             else
7844             {
7845                 token.match = prevMatch;
7846             }
7847             return -1;
7848         }
7849     }
7850     return -1;
7851 }
7852 
7853 int PPLexer::GetTokenId(int statementIndex)
7854 {
7855     switch (statementIndex)
7856     {
7857         case 0:
7858         {
7859             Retract();
7860             pp->Emit(token.match);
7861             break;
7862         }
7863         case 1:
7864         {
7865             Retract();
7866             break;
7867         }
7868         case 2:
7869         {
7870             Retract();
7871             pp->Emit(U" ");
7872             break;
7873         }
7874         case 3:
7875         {
7876             Retract();
7877             pp->Emit(U" ");
7878             break;
7879         }
7880         case 4:
7881         {
7882             Retract();
7883             break;
7884         }
7885         case 5:
7886         {
7887             Retract();
7888             int kw = GetKeywordToken(token.match);
7889             if (kw == INVALID_TOKEN) return ID;
7890             else return kw;
7891             break;
7892         }
7893         case 6:
7894         {
7895             Retract();
7896             return ANGLEHEADERNAME;
7897             break;
7898         }
7899         case 7:
7900         {
7901             Retract();
7902             return QUOTEHEADERNAME;
7903             break;
7904         }
7905         case 8:
7906         {
7907             Retract();
7908             return PPNUMBER;
7909             break;
7910         }
7911         case 9:
7912         {
7913             Retract();
7914             return CHARLITERAL;
7915             break;
7916         }
7917         case 10:
7918         {
7919             Retract();
7920             return STRINGLITERAL;
7921             break;
7922         }
7923         case 11:
7924         {
7925             Retract();
7926             return HASH;
7927             break;
7928         }
7929         case 12:
7930         {
7931             Retract();
7932             return COLONCOLON;
7933             break;
7934         }
7935         case 13:
7936         {
7937             Retract();
7938             return COMMA;
7939             break;
7940         }
7941         case 14:
7942         {
7943             Retract();
7944             return ASSIGN;
7945             break;
7946         }
7947         case 15:
7948         {
7949             Retract();
7950             return MULASSIGN;
7951             break;
7952         }
7953         case 16:
7954         {
7955             Retract();
7956             return DIVASSIGN;
7957             break;
7958         }
7959         case 17:
7960         {
7961             Retract();
7962             return REMASSIGN;
7963             break;
7964         }
7965         case 18:
7966         {
7967             Retract();
7968             return ADDASSIGN;
7969             break;
7970         }
7971         case 19:
7972         {
7973             Retract();
7974             return SUBASSIGN;
7975             break;
7976         }
7977         case 20:
7978         {
7979             Retract();
7980             return SHIFTRIGHTASSIGN;
7981             break;
7982         }
7983         case 21:
7984         {
7985             Retract();
7986             return SHIFTLEFTASSIGN;
7987             break;
7988         }
7989         case 22:
7990         {
7991             Retract();
7992             return ANDASSIGN;
7993             break;
7994         }
7995         case 23:
7996         {
7997             Retract();
7998             return XORASSIGN;
7999             break;
8000         }
8001         case 24:
8002         {
8003             Retract();
8004             return ORASSIGN;
8005             break;
8006         }
8007         case 25:
8008         {
8009             Retract();
8010             return QUEST;
8011             break;
8012         }
8013         case 26:
8014         {
8015             Retract();
8016             return COLON;
8017             break;
8018         }
8019         case 27:
8020         {
8021             Retract();
8022             return OROR;
8023             break;
8024         }
8025         case 28:
8026         {
8027             Retract();
8028             return AMPAMP;
8029             break;
8030         }
8031         case 29:
8032         {
8033             Retract();
8034             return OR;
8035             break;
8036         }
8037         case 30:
8038         {
8039             Retract();
8040             return XOR;
8041             break;
8042         }
8043         case 31:
8044         {
8045             Retract();
8046             return AMP;
8047             break;
8048         }
8049         case 32:
8050         {
8051             Retract();
8052             return EQ;
8053             break;
8054         }
8055         case 33:
8056         {
8057             Retract();
8058             return NEQ;
8059             break;
8060         }
8061         case 34:
8062         {
8063             Retract();
8064             return LEQ;
8065             break;
8066         }
8067         case 35:
8068         {
8069             Retract();
8070             return GEQ;
8071             break;
8072         }
8073         case 36:
8074         {
8075             Retract();
8076             return SPACESHIP;
8077             break;
8078         }
8079         case 37:
8080         {
8081             Retract();
8082             return LANGLE;
8083             break;
8084         }
8085         case 38:
8086         {
8087             Retract();
8088             return RANGLE;
8089             break;
8090         }
8091         case 39:
8092         {
8093             Retract();
8094             return SHIFTLEFT;
8095             break;
8096         }
8097         case 40:
8098         {
8099             Retract();
8100             return SHIFTRIGHT;
8101             break;
8102         }
8103         case 41:
8104         {
8105             Retract();
8106             return PLUS;
8107             break;
8108         }
8109         case 42:
8110         {
8111             Retract();
8112             return MINUS;
8113             break;
8114         }
8115         case 43:
8116         {
8117             Retract();
8118             return STAR;
8119             break;
8120         }
8121         case 44:
8122         {
8123             Retract();
8124             return DIV;
8125             break;
8126         }
8127         case 45:
8128         {
8129             Retract();
8130             return MOD;
8131             break;
8132         }
8133         case 46:
8134         {
8135             Retract();
8136             return DOTSTAR;
8137             break;
8138         }
8139         case 47:
8140         {
8141             Retract();
8142             return ARROWSTAR;
8143             break;
8144         }
8145         case 48:
8146         {
8147             Retract();
8148             return LPAREN;
8149             break;
8150         }
8151         case 49:
8152         {
8153             Retract();
8154             return RPAREN;
8155             break;
8156         }
8157         case 50:
8158         {
8159             Retract();
8160             return PLUSPLUS;
8161             break;
8162         }
8163         case 51:
8164         {
8165             Retract();
8166             return MINUSMINUS;
8167             break;
8168         }
8169         case 52:
8170         {
8171             Retract();
8172             return EXCLAMATION;
8173             break;
8174         }
8175         case 53:
8176         {
8177             Retract();
8178             return TILDE;
8179             break;
8180         }
8181         case 54:
8182         {
8183             Retract();
8184             return LBRACKET;
8185             break;
8186         }
8187         case 55:
8188         {
8189             Retract();
8190             return RBRACKET;
8191             break;
8192         }
8193         case 56:
8194         {
8195             Retract();
8196             return DOT;
8197             break;
8198         }
8199         case 57:
8200         {
8201             Retract();
8202             return ARROW;
8203             break;
8204         }
8205         case 58:
8206         {
8207             Retract();
8208             return SEMICOLON;
8209             break;
8210         }
8211         case 59:
8212         {
8213             Retract();
8214             return ELLIPSES;
8215             break;
8216         }
8217         case 60:
8218         {
8219             Retract();
8220             return LBRACE;
8221             break;
8222         }
8223         case 61:
8224         {
8225             Retract();
8226             return RBRACE;
8227             break;
8228         }
8229     }
8230     return CONTINUE_TOKEN;
8231 }