/* ADQLParser201TokenManager.java */
/* Generated By:JavaCC: Do not edit this line. ADQLParser201TokenManager.java */
package adql.parser;
/*
 * This file is part of ADQLLibrary.
 * 
 * ADQLLibrary is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * ADQLLibrary is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with ADQLLibrary.  If not, see <http://www.gnu.org/licenses/>.
 * 
 * Copyright 2019 - UDS/Centre de Données astronomiques de Strasbourg (CDS)
 */

import java.util.Stack;
import java.util.Vector;
import java.util.ArrayList;
import java.util.Collection;
import java.io.FileReader;
import java.io.IOException;
import adql.db.exception.UnsupportedFeatureException;
import adql.db.exception.UnresolvedIdentifiersException;
import adql.parser.ADQLParserFactory.ADQLVersion;
import adql.parser.IdentifierItems.IdentifierItem;
import adql.parser.ADQLQueryFactory.JoinType;
import adql.parser.feature.FeatureSet;
import adql.parser.feature.LanguageFeature;
import adql.query.*;
import adql.query.from.*;
import adql.query.constraint.*;
import adql.query.operand.*;
import adql.query.operand.function.*;
import adql.query.operand.function.string.*;
import adql.query.operand.function.geometry.*;
import adql.query.operand.function.geometry.GeometryFunction.GeometryValue;
import adql.search.SearchOptionalFeaturesHandler;
import adql.translator.PostgreSQLTranslator;
import adql.translator.TranslationException;

/** Token Manager. */
@SuppressWarnings("unused")public class ADQLParser201TokenManager implements ADQLParser201Constants {
        protected void CommonTokenAction(final Token t) {
                t.adqlVersion = ADQLParserFactory.ADQLVersion.V2_1;
        }

  /** Debug output. */
  public  java.io.PrintStream debugStream = System.out;
  /** Set debug output. */
  public  void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
private final int jjStopStringLiteralDfa_2(int pos, long active0, long active1){
   switch (pos)
   {
      default :
         return -1;
   }
}
private final int jjStartNfa_2(int pos, long active0, long active1){
   return jjMoveNfa_2(jjStopStringLiteralDfa_2(pos, active0, active1), pos + 1);
}
private int jjStopAtPos(int pos, int kind)
{
   jjmatchedKind = kind;
   jjmatchedPos = pos;
   return pos + 1;
}
private int jjMoveStringLiteralDfa0_2(){
   switch(curChar)
   {
      case 34:
         return jjStartNfaWithStates_2(0, 101, 1);
      default :
         return jjMoveNfa_2(0, 0);
   }
}
private int jjStartNfaWithStates_2(int pos, int kind, int state)
{
   jjmatchedKind = kind;
   jjmatchedPos = pos;
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) { return pos + 1; }
   return jjMoveNfa_2(state, pos + 1);
}
static final long[] jjbitVec0 = {
   0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
};
private int jjMoveNfa_2(int startState, int curPos)
{
   int startsAt = 0;
   jjnewStateCnt = 3;
   int i = 1;
   jjstateSet[0] = startState;
   int kind = 0x7fffffff;
   for (;;)
   {
      if (++jjround == 0x7fffffff)
         ReInitRounds();
      if (curChar < 64)
      {
         long l = 1L << curChar;
         do
         {
            switch(jjstateSet[--i])
            {
               case 0:
                  if ((0xfffffffbffffffffL & l) != 0L)
                  {
                     if (kind > 100)
                        kind = 100;
                  }
                  else if (curChar == 34)
                     jjstateSet[jjnewStateCnt++] = 1;
                  break;
               case 1:
                  if (curChar == 34 && kind > 100)
                     kind = 100;
                  break;
               case 2:
                  if (curChar == 34)
                     jjstateSet[jjnewStateCnt++] = 1;
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      else if (curChar < 128)
      {
         long l = 1L << (curChar & 077);
         do
         {
            switch(jjstateSet[--i])
            {
               case 0:
                  kind = 100;
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      else
      {
         int i2 = (curChar & 0xff) >> 6;
         long l2 = 1L << (curChar & 077);
         do
         {
            switch(jjstateSet[--i])
            {
               case 0:
                  if ((jjbitVec0[i2] & l2) != 0L && kind > 100)
                     kind = 100;
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      if (kind != 0x7fffffff)
      {
         jjmatchedKind = kind;
         jjmatchedPos = curPos;
         kind = 0x7fffffff;
      }
      ++curPos;
      if ((i = jjnewStateCnt) == (startsAt = 3 - (jjnewStateCnt = startsAt)))
         return curPos;
      try { curChar = input_stream.readChar(); }
      catch(java.io.IOException e) { return curPos; }
   }
}
private final int jjStopStringLiteralDfa_0(int pos, long active0, long active1){
   switch (pos)
   {
      case 0:
         if ((active0 & 0x200000000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 5;
         }
         if ((active0 & 0x200000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 794;
         }
         if ((active0 & 0x40000000000L) != 0L || (active1 & 0x80L) != 0L)
         {
            jjmatchedKind = 102;
            return 249;
         }
         if ((active0 & 0x40088000000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 33;
         }
         if ((active0 & 0x10000000080000L) != 0L || (active1 & 0x2020000L) != 0L)
         {
            jjmatchedKind = 102;
            return 587;
         }
         if ((active0 & 0x100000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 749;
         }
         if ((active0 & 0x20L) != 0L)
            return 962;
         if ((active0 & 0x91a0000000000000L) != 0L || (active1 & 0x1800023L) != 0L)
         {
            jjmatchedKind = 102;
            return 52;
         }
         if ((active0 & 0x600000000000000L) != 0L || (active1 & 0x3000L) != 0L)
         {
            jjmatchedKind = 102;
            return 488;
         }
         if ((active0 & 0x18000L) != 0L)
            return 17;
         if ((active0 & 0x4002800400800000L) != 0L || (active1 & 0x780010L) != 0L)
         {
            jjmatchedKind = 102;
            return 907;
         }
         if ((active0 & 0x10010000000L) != 0L || (active1 & 0x608L) != 0L)
         {
            jjmatchedKind = 102;
            return 404;
         }
         if ((active0 & 0x400L) != 0L)
            return 22;
         if ((active0 & 0x2000022002000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 332;
         }
         if ((active0 & 0x1000000000000L) != 0L || (active1 & 0x44L) != 0L)
         {
            jjmatchedKind = 102;
            return 810;
         }
         if ((active0 & 0x40000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 963;
         }
         if ((active0 & 0x200000L) != 0L || (active1 & 0x4040000L) != 0L)
         {
            jjmatchedKind = 102;
            return 667;
         }
         if ((active0 & 0xc000000000000L) != 0L || (active1 & 0x800L) != 0L)
         {
            jjmatchedKind = 102;
            return 421;
         }
         if ((active0 & 0x5001000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 436;
         }
         if ((active0 & 0x20400000L) != 0L || (active1 & 0x100L) != 0L)
         {
            jjmatchedKind = 102;
            return 295;
         }
         if ((active0 & 0x400884000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 468;
         }
         if ((active0 & 0x800000008000000L) != 0L || (active1 & 0x1c000L) != 0L)
         {
            jjmatchedKind = 102;
            return 547;
         }
         if ((active0 & 0x100000000000L) != 0L)
         {
            jjmatchedKind = 102;
            return 315;
         }
         return -1;
      case 1:
         if ((active0 & 0x800000000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 546;
         }
         if ((active0 & 0x2000020002000000L) != 0L)
            return 345;
         if ((active1 & 0x40000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 714;
         }
         if ((active1 & 0x80000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 910;
         }
         if ((active0 & 0x400000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 964;
         }
         if ((active1 & 0x4000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 666;
         }
         if ((active0 & 0x182210068400000L) != 0L || (active1 & 0xc020L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 963;
         }
         if ((active0 & 0x800000800000L) != 0L || (active1 & 0x100000L) != 0L)
            return 929;
         if ((active1 & 0x2000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 617;
         }
         if ((active0 & 0x1000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 435;
         }
         if ((active0 & 0x40000000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 45;
         }
         if ((active1 & 0x4L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 874;
         }
         if ((active1 & 0x800L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 428;
         }
         if ((active1 & 0x608L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 416;
         }
         if ((active0 & 0x10000000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 653;
         }
         if ((active0 & 0x100000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 767;
         }
         if ((active0 & 0x8000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 32;
         }
         if ((active0 & 0x9020000000000000L) != 0L || (active1 & 0x1800003L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 113;
         }
         if ((active0 & 0x600000000000000L) != 0L || (active1 & 0x2000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 498;
         }
         if ((active0 & 0x2000000000L) != 0L)
            return 396;
         if ((active0 & 0x1000000000000L) != 0L || (active1 & 0x40L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 818;
         }
         if ((active0 & 0x80000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 594;
         }
         if ((active0 & 0x200000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 793;
         }
         if ((active1 & 0x10000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 578;
         }
         if ((active1 & 0x10L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 906;
         }
         if ((active0 & 0x8000000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 424;
         }
         if ((active1 & 0x20000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 634;
         }
         if ((active0 & 0x4000000000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 965;
         }
         if ((active0 & 0x4000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 479;
         }
         if ((active0 & 0x40000000000L) != 0L || (active1 & 0x80L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 264;
         }
         if ((active0 & 0x4000000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 420;
         }
         if ((active0 & 0x480800000000L) != 0L || (active1 & 0x1000L) != 0L)
            return 963;
         if ((active1 & 0x100L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 303;
         }
         if ((active0 & 0x4000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 451;
         }
         if ((active0 & 0x1000200000L) != 0L || (active1 & 0x600000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 2;
               jjmatchedPos = 1;
            }
            return 963;
         }
         if ((active0 & 0x100000000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 324;
         }
         if ((active0 & 0x80000000L) != 0L)
            return 469;
         if ((active0 & 0x10000000L) != 0L)
         {
            if (jjmatchedPos != 1)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 1;
            }
            return 410;
         }
         return -1;
      case 2:
         if ((active0 & 0x8000000000000L) != 0L)
            return 423;
         if ((active1 & 0x10L) != 0L)
            return 905;
         if ((active1 & 0x4L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 881;
         }
         if ((active0 & 0x56801400200000L) != 0L || (active1 & 0x7800680L) != 0L)
            return 963;
         if ((active0 & 0x1000000000000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 137;
         }
         if ((active0 & 0x2000000000000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 2;
               jjmatchedPos = 2;
            }
            return 373;
         }
         if ((active0 & 0x4000000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 450;
         }
         if ((active0 & 0x1000000000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 856;
         }
         if ((active1 & 0x100L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 302;
         }
         if ((active0 & 0x4000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 478;
         }
         if ((active1 & 0x40000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 965;
         }
         if ((active1 & 0x800L) != 0L)
            return 427;
         if ((active0 & 0x200000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 798;
         }
         if ((active0 & 0x4000000000000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 2;
               jjmatchedPos = 2;
            }
            return 963;
         }
         if ((active0 & 0x1000000L) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 440;
         }
         if ((active0 & 0x8fa075817a480000L) != 0L || (active1 & 0x7be06bL) != 0L)
         {
            if (jjmatchedPos != 2)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 2;
            }
            return 963;
         }
         return -1;
      case 3:
         if ((active1 & 0x4L) != 0L)
         {
            if (jjmatchedPos != 3)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 3;
            }
            return 897;
         }
         if ((active0 & 0x1000000000000000L) != 0L)
         {
            if (jjmatchedPos != 3)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 3;
            }
            return 168;
         }
         if ((active0 & 0x8fa074830f080000L) != 0L || (active1 & 0x5616bL) != 0L)
         {
            if (jjmatchedPos != 3)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 3;
            }
            return 963;
         }
         if ((active0 & 0x2000000000000000L) != 0L)
         {
            if (jjmatchedPos != 3)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 3;
            }
            return 372;
         }
         if ((active0 & 0x4000000000L) != 0L)
            return 449;
         if ((active0 & 0x4000010070400000L) != 0L || (active1 & 0x7a8000L) != 0L)
            return 963;
         if ((active0 & 0x1000000000000L) != 0L)
            return 855;
         if ((active1 & 0x400L) != 0L)
         {
            if (jjmatchedPos != 3)
            {
               jjmatchedKind = 102;
               jjmatchedPos = 3;
            }
            return 28;
         }
         return -1;
      case 4:
         if ((active0 & 0x2000000000000000L) != 0L)
         {
            jjmatchedKind = 102;
            jjmatchedPos = 4;
            return 378;
         }
         if ((active0 & 0x9d80248001080000L) != 0L || (active1 & 0x44067L) != 0L)
         {
            jjmatchedKind = 102;
            jjmatchedPos = 4;
            return 963;
         }
         if ((active1 & 0x400400L) != 0L)
            return 28;
         if ((active0 & 0x22050030e000000L) != 0L || (active1 & 0x12108L) != 0L)
            return 963;
         return -1;
      case 5:
         if ((active0 & 0x2000000000000000L) != 0L)
         {
            jjmatchedKind = 102;
            jjmatchedPos = 5;
            return 377;
         }
         if ((active0 & 0x8000000000000000L) != 0L || (active1 & 0x1L) != 0L)
            return 28;
         if ((active0 & 0x900240000080000L) != 0L)
            return 963;
         if ((active0 & 0x1480008001000000L) != 0L || (active1 & 0x44066L) != 0L)
         {
            jjmatchedKind = 102;
            jjmatchedPos = 5;
            return 963;
         }
         return -1;
      case 6:
         if ((active0 & 0x2000000000000000L) != 0L)
         {
            jjmatchedKind = 102;
            jjmatchedPos = 6;
            return 376;
         }
         if ((active0 & 0x1080000000000000L) != 0L || (active1 & 0x40006L) != 0L)
         {
            jjmatchedKind = 102;
            jjmatchedPos = 6;
            return 963;
         }
         if ((active0 & 0x400008001000000L) != 0L || (active1 & 0x4060L) != 0L)
            return 963;
         return -1;
      case 7:
         if ((active0 & 0x2000000000000000L) != 0L)
         {
            jjmatchedKind = 102;
            jjmatchedPos = 7;
            return 966;
         }
         if ((active0 & 0x1080000000000000L) != 0L || (active1 & 0x40006L) != 0L)
            return 963;
         return -1;
      case 8:
         if ((active0 & 0x2000000000000000L) != 0L)
         {
            jjmatchedKind = 2;
            jjmatchedPos = 8;
            return 963;
         }
         return -1;
      default :
         return -1;
   }
}
private final int jjStartNfa_0(int pos, long active0, long active1){
   return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0, active1), pos + 1);
}
private int jjMoveStringLiteralDfa0_0(){
   switch(curChar)
   {
      case 34:
         return jjStopAtPos(0, 99);
      case 39:
         return jjStopAtPos(0, 92);
      case 40:
         return jjStopAtPos(0, 3);
      case 41:
         return jjStopAtPos(0, 4);
      case 42:
         return jjStopAtPos(0, 11);
      case 43:
         return jjStopAtPos(0, 9);
      case 44:
         return jjStopAtPos(0, 6);
      case 45:
         return jjStartNfaWithStates_0(0, 10, 22);
      case 46:
         return jjStartNfaWithStates_0(0, 5, 962);
      case 47:
         return jjStopAtPos(0, 12);
      case 59:
         return jjStopAtPos(0, 7);
      case 60:
         jjmatchedKind = 15;
         return jjMoveStringLiteralDfa1_0(0x10000L, 0x0L);
      case 61:
         return jjStopAtPos(0, 13);
      case 62:
         jjmatchedKind = 17;
         return jjMoveStringLiteralDfa1_0(0x40000L, 0x0L);
      case 65:
      case 97:
         return jjMoveStringLiteralDfa1_0(0x4002800400800000L, 0x780010L);
      case 66:
      case 98:
         return jjMoveStringLiteralDfa1_0(0x40088000000000L, 0x0L);
      case 67:
      case 99:
         return jjMoveStringLiteralDfa1_0(0x91a0000000000000L, 0x1800023L);
      case 68:
      case 100:
         return jjMoveStringLiteralDfa1_0(0x1000000000000L, 0x44L);
      case 69:
      case 101:
         return jjMoveStringLiteralDfa1_0(0x40000000000L, 0x80L);
      case 70:
      case 102:
         return jjMoveStringLiteralDfa1_0(0x20400000L, 0x100L);
      case 71:
      case 103:
         return jjMoveStringLiteralDfa1_0(0x100000000000L, 0x0L);
      case 72:
      case 104:
         return jjMoveStringLiteralDfa1_0(0x200000000000L, 0x0L);
      case 73:
      case 105:
         return jjMoveStringLiteralDfa1_0(0x2000022002000000L, 0x0L);
      case 74:
      case 106:
         return jjMoveStringLiteralDfa1_0(0x40000000L, 0x0L);
      case 76:
      case 108:
         return jjMoveStringLiteralDfa1_0(0x10010000000L, 0x608L);
      case 77:
      case 109:
         return jjMoveStringLiteralDfa1_0(0xc000000000000L, 0x800L);
      case 78:
      case 110:
         return jjMoveStringLiteralDfa1_0(0x5001000000L, 0x0L);
      case 79:
      case 111:
         return jjMoveStringLiteralDfa1_0(0x400884000000L, 0x0L);
      case 80:
      case 112:
         return jjMoveStringLiteralDfa1_0(0x600000000000000L, 0x3000L);
      case 82:
      case 114:
         return jjMoveStringLiteralDfa1_0(0x800000008000000L, 0x1c000L);
      case 83:
      case 115:
         return jjMoveStringLiteralDfa1_0(0x10000000080000L, 0x2020000L);
      case 84:
      case 116:
         return jjMoveStringLiteralDfa1_0(0x200000L, 0x4040000L);
      case 85:
      case 117:
         return jjMoveStringLiteralDfa1_0(0x100000000L, 0x0L);
      case 87:
      case 119:
         return jjMoveStringLiteralDfa1_0(0x200000000L, 0x0L);
      case 124:
         return jjMoveStringLiteralDfa1_0(0x100L, 0x0L);
      default :
         return jjMoveNfa_0(0, 0);
   }
}
private int jjMoveStringLiteralDfa1_0(long active0, long active1){
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(0, active0, active1);
      return 1;
   }
   switch(curChar)
   {
      case 61:
         if ((active0 & 0x10000L) != 0L)
            return jjStopAtPos(1, 16);
         else if ((active0 & 0x40000L) != 0L)
            return jjStopAtPos(1, 18);
         break;
      case 65:
      case 97:
         return jjMoveStringLiteralDfa2_0(active0, 0x4200001000000L, active1, 0x400c000L);
      case 66:
      case 98:
         return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x10L);
      case 67:
      case 99:
         return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x80000L);
      case 69:
      case 101:
         return jjMoveStringLiteralDfa2_0(active0, 0x881008010080000L, active1, 0x60L);
      case 72:
      case 104:
         return jjMoveStringLiteralDfa2_0(active0, 0x200000000L, active1, 0L);
      case 73:
      case 105:
         if ((active1 & 0x1000L) != 0L)
            return jjStartNfaWithStates_0(1, 76, 963);
         return jjMoveStringLiteralDfa2_0(active0, 0x108010008000000L, active1, 0x2000004L);
      case 76:
      case 108:
         return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x100L);
      case 78:
      case 110:
         if ((active0 & 0x80000000L) != 0L)
            return jjStartNfaWithStates_0(1, 31, 469);
         else if ((active0 & 0x20000000000L) != 0L)
         {
            jjmatchedKind = 41;
            jjmatchedPos = 1;
         }
         return jjMoveStringLiteralDfa2_0(active0, 0x2000000402000000L, active1, 0L);
      case 79:
      case 111:
         return jjMoveStringLiteralDfa2_0(active0, 0x9660001040200000L, active1, 0x1812e0bL);
      case 81:
      case 113:
         return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x20000L);
      case 82:
      case 114:
         if ((active0 & 0x800000000L) != 0L)
         {
            jjmatchedKind = 35;
            jjmatchedPos = 1;
         }
         return jjMoveStringLiteralDfa2_0(active0, 0x4000500000400000L, active1, 0x40000L);
      case 83:
      case 115:
         if ((active0 & 0x800000L) != 0L)
         {
            jjmatchedKind = 23;
            jjmatchedPos = 1;
         }
         else if ((active0 & 0x2000000000L) != 0L)
            return jjStartNfaWithStates_0(1, 37, 396);
         return jjMoveStringLiteralDfa2_0(active0, 0x800100000000L, active1, 0x100000L);
      case 84:
      case 116:
         return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x600000L);
      case 85:
      case 117:
         return jjMoveStringLiteralDfa2_0(active0, 0x10004024000000L, active1, 0L);
      case 86:
      case 118:
         return jjMoveStringLiteralDfa2_0(active0, 0x2000000000000L, active1, 0L);
      case 88:
      case 120:
         return jjMoveStringLiteralDfa2_0(active0, 0x40000000000L, active1, 0x80L);
      case 89:
      case 121:
         if ((active0 & 0x80000000000L) != 0L)
            return jjStartNfaWithStates_0(1, 43, 963);
         break;
      case 124:
         if ((active0 & 0x100L) != 0L)
            return jjStopAtPos(1, 8);
         break;
      default :
         break;
   }
   return jjStartNfa_0(0, active0, active1);
}
private int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, long active1){
   if (((active0 &= old0) | (active1 &= old1)) == 0L)
      return jjStartNfa_0(0, old0, old1);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(1, active0, active1);
      return 2;
   }
   switch(curChar)
   {
      case 65:
      case 97:
         return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x600000L);
      case 67:
      case 99:
         if ((active0 & 0x800000000000L) != 0L)
            return jjStartNfaWithStates_0(2, 47, 963);
         break;
      case 68:
      case 100:
         if ((active0 & 0x400000000L) != 0L)
            return jjStartNfaWithStates_0(2, 34, 963);
         else if ((active1 & 0x800L) != 0L)
            return jjStartNfaWithStates_0(2, 75, 427);
         return jjMoveStringLiteralDfa3_0(active0, 0x400000000000L, active1, 0x4000L);
      case 69:
      case 101:
         return jjMoveStringLiteralDfa3_0(active0, 0x4000000200000000L, active1, 0L);
      case 70:
      case 102:
         return jjMoveStringLiteralDfa3_0(active0, 0x10000000L, active1, 0L);
      case 71:
      case 103:
         if ((active0 & 0x2000000000000L) != 0L)
            return jjStartNfaWithStates_0(2, 49, 963);
         else if ((active1 & 0x200L) != 0L)
         {
            jjmatchedKind = 73;
            jjmatchedPos = 2;
         }
         return jjMoveStringLiteralDfa3_0(active0, 0x800000008000000L, active1, 0x440L);
      case 73:
      case 105:
         return jjMoveStringLiteralDfa3_0(active0, 0x200040140000000L, active1, 0x100020L);
      case 75:
      case 107:
         return jjMoveStringLiteralDfa3_0(active0, 0x10000000000L, active1, 0L);
      case 76:
      case 108:
         return jjMoveStringLiteralDfa3_0(active0, 0x400004020080000L, active1, 0L);
      case 77:
      case 109:
         if ((active0 & 0x10000000000000L) != 0L)
            return jjStartNfaWithStates_0(2, 52, 963);
         break;
      case 78:
      case 110:
         if ((active0 & 0x8000000000000L) != 0L)
            return jjStartNfaWithStates_0(2, 51, 423);
         else if ((active1 & 0x2000000L) != 0L)
            return jjStartNfaWithStates_0(2, 89, 963);
         else if ((active1 & 0x4000000L) != 0L)
            return jjStartNfaWithStates_0(2, 90, 963);
         return jjMoveStringLiteralDfa3_0(active0, 0x1080000002000000L, active1, 0x8000L);
      case 79:
      case 111:
         return jjMoveStringLiteralDfa3_0(active0, 0x8000100000400000L, active1, 0x80103L);
      case 80:
      case 112:
         if ((active0 & 0x200000L) != 0L)
            return jjStartNfaWithStates_0(2, 21, 963);
         else if ((active1 & 0x80L) != 0L)
            return jjStartNfaWithStates_0(2, 71, 963);
         break;
      case 82:
      case 114:
         return jjMoveStringLiteralDfa3_0(active0, 0x100000000000000L, active1, 0x20000L);
      case 83:
      case 115:
         if ((active1 & 0x10L) != 0L)
            return jjStartNfaWithStates_0(2, 68, 905);
         else if ((active1 & 0x800000L) != 0L)
            return jjStartNfaWithStates_0(2, 87, 963);
         return jjMoveStringLiteralDfa3_0(active0, 0x1000000000000L, active1, 0x4L);
      case 84:
      case 116:
         if ((active0 & 0x1000000000L) != 0L)
            return jjStartNfaWithStates_0(2, 36, 963);
         else if ((active1 & 0x1000000L) != 0L)
            return jjStartNfaWithStates_0(2, 88, 963);
         return jjMoveStringLiteralDfa3_0(active0, 0x2000008005000000L, active1, 0L);
      case 85:
      case 117:
         return jjMoveStringLiteralDfa3_0(active0, 0x20000000000000L, active1, 0x50000L);
      case 86:
      case 118:
         return jjMoveStringLiteralDfa3_0(active0, 0x200000000000L, active1, 0L);
      case 87:
      case 119:
         return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x2008L);
      case 88:
      case 120:
         if ((active0 & 0x4000000000000L) != 0L)
            return jjStartNfaWithStates_0(2, 50, 963);
         else if ((active0 & 0x40000000000000L) != 0L)
            return jjStartNfaWithStates_0(2, 54, 963);
         break;
      default :
         break;
   }
   return jjStartNfa_0(1, active0, active1);
}
private int jjMoveStringLiteralDfa3_0(long old0, long active0, long old1, long active1){
   if (((active0 &= old0) | (active1 &= old1)) == 0L)
      return jjStartNfa_0(1, old0, old1);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(2, active0, active1);
      return 3;
   }
   switch(curChar)
   {
      case 49:
         return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x400L);
      case 65:
      case 97:
         if ((active0 & 0x4000000000000000L) != 0L)
            return jjStartNfaWithStates_0(3, 62, 963);
         break;
      case 67:
      case 99:
         if ((active0 & 0x1000000000000L) != 0L)
            return jjStartNfaWithStates_0(3, 48, 855);
         return jjMoveStringLiteralDfa4_0(active0, 0x100000000000000L, active1, 0L);
      case 68:
      case 100:
         if ((active1 & 0x8000L) != 0L)
            return jjStartNfaWithStates_0(3, 79, 963);
         break;
      case 69:
      case 101:
         if ((active0 & 0x10000000000L) != 0L)
            return jjStartNfaWithStates_0(3, 40, 963);
         return jjMoveStringLiteralDfa4_0(active0, 0x2000400006080000L, active1, 0x2008L);
      case 72:
      case 104:
         return jjMoveStringLiteralDfa4_0(active0, 0x8000000L, active1, 0L);
      case 73:
      case 105:
         return jjMoveStringLiteralDfa4_0(active0, 0x800200000000000L, active1, 0x4000L);
      case 76:
      case 108:
         if ((active0 & 0x20000000L) != 0L)
            return jjStartNfaWithStates_0(3, 29, 963);
         else if ((active0 & 0x4000000000L) != 0L)
            return jjStartNfaWithStates_0(3, 38, 449);
         return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x20L);
      case 77:
      case 109:
         if ((active0 & 0x400000L) != 0L)
            return jjStartNfaWithStates_0(3, 22, 963);
         break;
      case 78:
      case 110:
         if ((active0 & 0x40000000L) != 0L)
            return jjStartNfaWithStates_0(3, 30, 963);
         else if ((active1 & 0x100000L) != 0L)
            return jjStartNfaWithStates_0(3, 84, 963);
         else if ((active1 & 0x200000L) != 0L)
         {
            jjmatchedKind = 85;
            jjmatchedPos = 3;
         }
         return jjMoveStringLiteralDfa4_0(active0, 0x220000100000000L, active1, 0x450000L);
      case 79:
      case 111:
         return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x100L);
      case 82:
      case 114:
         return jjMoveStringLiteralDfa4_0(active0, 0x8000000200000000L, active1, 0x43L);
      case 83:
      case 115:
         if ((active1 & 0x80000L) != 0L)
            return jjStartNfaWithStates_0(3, 83, 963);
         return jjMoveStringLiteralDfa4_0(active0, 0x40000000000L, active1, 0L);
      case 84:
      case 116:
         if ((active0 & 0x10000000L) != 0L)
            return jjStartNfaWithStates_0(3, 28, 963);
         else if ((active1 & 0x20000L) != 0L)
            return jjStartNfaWithStates_0(3, 81, 963);
         return jjMoveStringLiteralDfa4_0(active0, 0x1080000000000000L, active1, 0x4L);
      case 85:
      case 117:
         return jjMoveStringLiteralDfa4_0(active0, 0x100001000000L, active1, 0L);
      case 87:
      case 119:
         return jjMoveStringLiteralDfa4_0(active0, 0x8000000000L, active1, 0L);
      case 89:
      case 121:
         return jjMoveStringLiteralDfa4_0(active0, 0x400000000000000L, active1, 0L);
      default :
         break;
   }
   return jjStartNfa_0(2, active0, active1);
}
private int jjMoveStringLiteralDfa4_0(long old0, long active0, long old1, long active1){
   if (((active0 &= old0) | (active1 &= old1)) == 0L)
      return jjStartNfa_0(2, old0, old1);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(3, active0, active1);
      return 4;
   }
   switch(curChar)
   {
      case 48:
         if ((active1 & 0x400L) != 0L)
            return jjStartNfaWithStates_0(4, 74, 28);
         break;
      case 50:
         if ((active1 & 0x400000L) != 0L)
            return jjStartNfaWithStates_0(4, 86, 28);
         break;
      case 65:
      case 97:
         return jjMoveStringLiteralDfa5_0(active0, 0x1000000000000000L, active1, 0x4004L);
      case 67:
      case 99:
         return jjMoveStringLiteralDfa5_0(active0, 0x80000L, active1, 0x40000L);
      case 68:
      case 100:
         if ((active1 & 0x10000L) != 0L)
            return jjStartNfaWithStates_0(4, 80, 963);
         return jjMoveStringLiteralDfa5_0(active0, 0x8000000000000000L, active1, 0x3L);
      case 69:
      case 101:
         if ((active0 & 0x200000000L) != 0L)
            return jjStartNfaWithStates_0(4, 33, 963);
         return jjMoveStringLiteralDfa5_0(active0, 0x8000000000L, active1, 0x40L);
      case 71:
      case 103:
         if ((active0 & 0x100000000L) != 0L)
            return jjStartNfaWithStates_0(4, 32, 963);
         return jjMoveStringLiteralDfa5_0(active0, 0x400000000000000L, active1, 0L);
      case 73:
      case 105:
         return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x20L);
      case 76:
      case 108:
         return jjMoveStringLiteralDfa5_0(active0, 0x100000000000000L, active1, 0L);
      case 78:
      case 110:
         return jjMoveStringLiteralDfa5_0(active0, 0x200000000000L, active1, 0L);
      case 79:
      case 111:
         return jjMoveStringLiteralDfa5_0(active0, 0x800000000000000L, active1, 0L);
      case 80:
      case 112:
         if ((active0 & 0x100000000000L) != 0L)
            return jjStartNfaWithStates_0(4, 44, 963);
         break;
      case 82:
      case 114:
         if ((active0 & 0x2000000L) != 0L)
            return jjStartNfaWithStates_0(4, 25, 963);
         else if ((active0 & 0x4000000L) != 0L)
            return jjStartNfaWithStates_0(4, 26, 963);
         else if ((active0 & 0x400000000000L) != 0L)
            return jjStartNfaWithStates_0(4, 46, 963);
         else if ((active1 & 0x8L) != 0L)
            return jjStartNfaWithStates_0(4, 67, 963);
         else if ((active1 & 0x100L) != 0L)
            return jjStartNfaWithStates_0(4, 72, 963);
         else if ((active1 & 0x2000L) != 0L)
            return jjStartNfaWithStates_0(4, 77, 963);
         return jjMoveStringLiteralDfa5_0(active0, 0x2080000001000000L, active1, 0L);
      case 84:
      case 116:
         if ((active0 & 0x8000000L) != 0L)
            return jjStartNfaWithStates_0(4, 27, 963);
         else if ((active0 & 0x20000000000000L) != 0L)
            return jjStartNfaWithStates_0(4, 53, 963);
         else if ((active0 & 0x200000000000000L) != 0L)
            return jjStartNfaWithStates_0(4, 57, 963);
         return jjMoveStringLiteralDfa5_0(active0, 0x40000000000L, active1, 0L);
      default :
         break;
   }
   return jjStartNfa_0(3, active0, active1);
}
private int jjMoveStringLiteralDfa5_0(long old0, long active0, long old1, long active1){
   if (((active0 &= old0) | (active1 &= old1)) == 0L)
      return jjStartNfa_0(3, old0, old1);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(4, active0, active1);
      return 5;
   }
   switch(curChar)
   {
      case 49:
         if ((active0 & 0x8000000000000000L) != 0L)
            return jjStartNfaWithStates_0(5, 63, 28);
         break;
      case 50:
         if ((active1 & 0x1L) != 0L)
            return jjStartNfaWithStates_0(5, 64, 28);
         break;
      case 65:
      case 97:
         return jjMoveStringLiteralDfa6_0(active0, 0x1000000L, active1, 0x40000L);
      case 69:
      case 101:
         if ((active0 & 0x100000000000000L) != 0L)
            return jjStartNfaWithStates_0(5, 56, 963);
         return jjMoveStringLiteralDfa6_0(active0, 0x8000000000L, active1, 0x40L);
      case 71:
      case 103:
         if ((active0 & 0x200000000000L) != 0L)
            return jjStartNfaWithStates_0(5, 45, 963);
         break;
      case 73:
      case 105:
         return jjMoveStringLiteralDfa6_0(active0, 0x1000000000000000L, active1, 0L);
      case 78:
      case 110:
         if ((active0 & 0x800000000000000L) != 0L)
            return jjStartNfaWithStates_0(5, 59, 963);
         return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x4024L);
      case 79:
      case 111:
         return jjMoveStringLiteralDfa6_0(active0, 0x480000000000000L, active1, 0L);
      case 83:
      case 115:
         if ((active0 & 0x40000000000L) != 0L)
            return jjStartNfaWithStates_0(5, 42, 963);
         return jjMoveStringLiteralDfa6_0(active0, 0x2000000000000000L, active1, 0x2L);
      case 84:
      case 116:
         if ((active0 & 0x80000L) != 0L)
            return jjStartNfaWithStates_0(5, 19, 963);
         break;
      default :
         break;
   }
   return jjStartNfa_0(4, active0, active1);
}
private int jjMoveStringLiteralDfa6_0(long old0, long active0, long old1, long active1){
   if (((active0 &= old0) | (active1 &= old1)) == 0L)
      return jjStartNfa_0(4, old0, old1);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(5, active0, active1);
      return 6;
   }
   switch(curChar)
   {
      case 67:
      case 99:
         return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x4L);
      case 69:
      case 101:
         return jjMoveStringLiteralDfa7_0(active0, 0x2000000000000000L, active1, 0L);
      case 71:
      case 103:
         if ((active1 & 0x20L) != 0L)
            return jjStartNfaWithStates_0(6, 69, 963);
         break;
      case 73:
      case 105:
         return jjMoveStringLiteralDfa7_0(active0, 0x80000000000000L, active1, 0L);
      case 76:
      case 108:
         if ((active0 & 0x1000000L) != 0L)
            return jjStartNfaWithStates_0(6, 24, 963);
         break;
      case 78:
      case 110:
         if ((active0 & 0x8000000000L) != 0L)
            return jjStartNfaWithStates_0(6, 39, 963);
         else if ((active0 & 0x400000000000000L) != 0L)
            return jjStartNfaWithStates_0(6, 58, 963);
         return jjMoveStringLiteralDfa7_0(active0, 0x1000000000000000L, active1, 0L);
      case 83:
      case 115:
         if ((active1 & 0x40L) != 0L)
            return jjStartNfaWithStates_0(6, 70, 963);
         else if ((active1 & 0x4000L) != 0L)
            return jjStartNfaWithStates_0(6, 78, 963);
         break;
      case 84:
      case 116:
         return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x40000L);
      case 89:
      case 121:
         return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x2L);
      default :
         break;
   }
   return jjStartNfa_0(5, active0, active1);
}
private int jjMoveStringLiteralDfa7_0(long old0, long active0, long old1, long active1){
   if (((active0 &= old0) | (active1 &= old1)) == 0L)
      return jjStartNfa_0(5, old0, old1);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(6, active0, active1);
      return 7;
   }
   switch(curChar)
   {
      case 67:
      case 99:
         return jjMoveStringLiteralDfa8_0(active0, 0x2000000000000000L, active1, 0L);
      case 68:
      case 100:
         if ((active0 & 0x80000000000000L) != 0L)
            return jjStartNfaWithStates_0(7, 55, 963);
         break;
      case 69:
      case 101:
         if ((active1 & 0x4L) != 0L)
            return jjStartNfaWithStates_0(7, 66, 963);
         else if ((active1 & 0x40000L) != 0L)
            return jjStartNfaWithStates_0(7, 82, 963);
         break;
      case 83:
      case 115:
         if ((active0 & 0x1000000000000000L) != 0L)
            return jjStartNfaWithStates_0(7, 60, 963);
         else if ((active1 & 0x2L) != 0L)
            return jjStartNfaWithStates_0(7, 65, 963);
         break;
      default :
         break;
   }
   return jjStartNfa_0(6, active0, active1);
}
private int jjMoveStringLiteralDfa8_0(long old0, long active0, long old1, long active1){
   if (((active0 &= old0) | (active1 &= old1)) == 0L)
      return jjStartNfa_0(6, old0, old1);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(7, active0, 0L);
      return 8;
   }
   switch(curChar)
   {
      case 84:
      case 116:
         return jjMoveStringLiteralDfa9_0(active0, 0x2000000000000000L);
      default :
         break;
   }
   return jjStartNfa_0(7, active0, 0L);
}
private int jjMoveStringLiteralDfa9_0(long old0, long active0){
   if (((active0 &= old0)) == 0L)
      return jjStartNfa_0(7, old0, 0L);
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) {
      jjStopStringLiteralDfa_0(8, active0, 0L);
      return 9;
   }
   switch(curChar)
   {
      case 83:
      case 115:
         if ((active0 & 0x2000000000000000L) != 0L)
            return jjStartNfaWithStates_0(9, 61, 963);
         break;
      default :
         break;
   }
   return jjStartNfa_0(8, active0, 0L);
}
private int jjStartNfaWithStates_0(int pos, int kind, int state)
{
   jjmatchedKind = kind;
   jjmatchedPos = pos;
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) { return pos + 1; }
   return jjMoveNfa_0(state, pos + 1);
}
private int jjMoveNfa_0(int startState, int curPos)
{
   int startsAt = 0;
   jjnewStateCnt = 962;
   int i = 1;
   jjstateSet[0] = startState;
   int kind = 0x7fffffff;
   for (;;)
   {
      if (++jjround == 0x7fffffff)
         ReInitRounds();
      if (curChar < 64)
      {
         long l = 1L << curChar;
         do
         {
            switch(jjstateSet[--i])
            {
               case 714:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 962:
                  if ((0x3ff000000000000L & l) != 0L)
                  {
                     if (kind > 96)
                        kind = 96;
                     { jjCheckNAdd(949); }
                  }
                  if ((0x3ff000000000000L & l) != 0L)
                     { jjCheckNAddTwoStates(945, 946); }
                  break;
               case 373:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 810:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 469:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 420:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 376:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 303:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 5:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 578:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 168:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 428:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 617:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 137:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 818:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 907:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 498:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 767:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 324:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 435:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 855:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 295:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 421:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 33:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 793:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 423:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 249:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 594:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 965:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 404:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 874:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 749:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 449:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 0:
                  if ((0x3ff000000000000L & l) != 0L)
                  {
                     if (kind > 97)
                        kind = 97;
                     { jjCheckNAddStates(0, 8); }
                  }
                  else if ((0x100002600L & l) != 0L)
                  {
                     if (kind > 1)
                        kind = 1;
                  }
                  else if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  else if (curChar == 46)
                     { jjCheckNAddTwoStates(945, 949); }
                  else if (curChar == 45)
                     jjstateSet[jjnewStateCnt++] = 22;
                  else if (curChar == 60)
                     jjstateSet[jjnewStateCnt++] = 17;
                  if (curChar == 33)
                     jjstateSet[jjnewStateCnt++] = 19;
                  else if (curChar == 13)
                     jjstateSet[jjnewStateCnt++] = 1;
                  break;
               case 410:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 929:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 372:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 468:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 634:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 881:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 966:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 315:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 450:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 478:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 906:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 32:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 52:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 332:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 377:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 587:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 794:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 45:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 547:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 345:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 424:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 416:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 440:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 378:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 667:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 302:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 856:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 798:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 910:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 396:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 897:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 436:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 666:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 653:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 479:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 546:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 963:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 488:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 905:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 427:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 264:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 451:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 964:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 113:
                  if ((0x83ff001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x8000001a00000000L & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 1:
                  if (curChar == 10 && kind > 1)
                     kind = 1;
                  break;
               case 2:
                  if (curChar == 13)
                     jjstateSet[jjnewStateCnt++] = 1;
                  break;
               case 17:
                  if (curChar == 62 && kind > 14)
                     kind = 14;
                  break;
               case 18:
                  if (curChar == 60)
                     jjstateSet[jjnewStateCnt++] = 17;
                  break;
               case 19:
                  if (curChar == 61 && kind > 14)
                     kind = 14;
                  break;
               case 20:
                  if (curChar == 33)
                     jjstateSet[jjnewStateCnt++] = 19;
                  break;
               case 21:
                  if (curChar == 45)
                     jjstateSet[jjnewStateCnt++] = 22;
                  break;
               case 22:
                  if (curChar != 45)
                     break;
                  if (kind > 91)
                     kind = 91;
                  { jjCheckNAddStates(9, 11); }
                  break;
               case 23:
                  if ((0xffffffffffffdbffL & l) == 0L)
                     break;
                  if (kind > 91)
                     kind = 91;
                  { jjCheckNAddStates(9, 11); }
                  break;
               case 24:
                  if ((0x2400L & l) != 0L && kind > 91)
                     kind = 91;
                  break;
               case 25:
                  if (curChar == 10 && kind > 91)
                     kind = 91;
                  break;
               case 26:
                  if (curChar == 13)
                     jjstateSet[jjnewStateCnt++] = 25;
                  break;
               case 27:
                  if ((0x8000001a00000000L & l) == 0L)
                     break;
                  if (kind > 102)
                     kind = 102;
                  { jjCheckNAddTwoStates(27, 28); }
                  break;
               case 28:
                  if ((0x83ff001a00000000L & l) == 0L)
                     break;
                  if (kind > 102)
                     kind = 102;
                  { jjCheckNAdd(28); }
                  break;
               case 255:
                  if (curChar == 45)
                     jjstateSet[jjnewStateCnt++] = 254;
                  break;
               case 944:
                  if (curChar == 46)
                     { jjCheckNAddTwoStates(945, 949); }
                  break;
               case 945:
                  if ((0x3ff000000000000L & l) != 0L)
                     { jjCheckNAddTwoStates(945, 946); }
                  break;
               case 947:
                  if ((0x280000000000L & l) != 0L)
                     { jjCheckNAdd(948); }
                  break;
               case 948:
                  if ((0x3ff000000000000L & l) == 0L)
                     break;
                  if (kind > 95)
                     kind = 95;
                  { jjCheckNAdd(948); }
                  break;
               case 949:
                  if ((0x3ff000000000000L & l) == 0L)
                     break;
                  if (kind > 96)
                     kind = 96;
                  { jjCheckNAdd(949); }
                  break;
               case 950:
                  if ((0x3ff000000000000L & l) == 0L)
                     break;
                  if (kind > 97)
                     kind = 97;
                  { jjCheckNAddStates(0, 8); }
                  break;
               case 951:
                  if ((0x3ff000000000000L & l) != 0L)
                     { jjCheckNAddTwoStates(951, 946); }
                  break;
               case 952:
                  if ((0x3ff000000000000L & l) != 0L)
                     { jjCheckNAddTwoStates(952, 953); }
                  break;
               case 953:
                  if (curChar == 46)
                     { jjCheckNAddTwoStates(954, 946); }
                  break;
               case 954:
                  if ((0x3ff000000000000L & l) != 0L)
                     { jjCheckNAddTwoStates(954, 946); }
                  break;
               case 955:
                  if ((0x3ff000000000000L & l) != 0L)
                     { jjCheckNAddTwoStates(955, 956); }
                  break;
               case 956:
                  if (curChar != 46)
                     break;
                  if (kind > 96)
                     kind = 96;
                  { jjCheckNAdd(957); }
                  break;
               case 957:
                  if ((0x3ff000000000000L & l) == 0L)
                     break;
                  if (kind > 96)
                     kind = 96;
                  { jjCheckNAdd(957); }
                  break;
               case 958:
                  if ((0x3ff000000000000L & l) == 0L)
                     break;
                  if (kind > 97)
                     kind = 97;
                  { jjCheckNAdd(958); }
                  break;
               case 959:
                  if ((0x3ff000000000000L & l) != 0L)
                     { jjCheckNAddTwoStates(959, 960); }
                  break;
               case 960:
                  if ((0x8000001a00000000L & l) == 0L)
                     break;
                  if (kind > 102)
                     kind = 102;
                  { jjCheckNAdd(961); }
                  break;
               case 961:
                  if ((0x83ff001a00000000L & l) == 0L)
                     break;
                  if (kind > 102)
                     kind = 102;
                  { jjCheckNAdd(961); }
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      else if (curChar < 128)
      {
         long l = 1L << (curChar & 077);
         do
         {
            switch(jjstateSet[--i])
            {
               case 714:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 741;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 738;
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 729;
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 722;
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 713;
                  break;
               case 373:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 385;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 379;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 372;
                  break;
               case 810:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 899;
                  else if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 892;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 890;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 865;
                  else if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(7); }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 886;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 882;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 857;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 809;
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 874;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 851;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 847;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 841;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 833;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 828;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 823;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 818;
                  break;
               case 469:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x100000001000L & l) != 0L)
                     { jjCheckNAdd(7); }
                  break;
               case 420:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 419;
                  break;
               case 376:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 303:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 302;
                  break;
               case 5:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 4;
                  break;
               case 578:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x80000000800000L & l) != 0L)
                     { jjCheckNAdd(156); }
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 577;
                  break;
               case 168:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 167;
                  break;
               case 428:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 430;
                  else if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 427;
                  break;
               case 617:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x400000004000000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 137:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 173;
                  else if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 168;
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 162;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 144;
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 152;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 136;
                  break;
               case 818:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 864;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 850;
                  else if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 846;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 827;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 817;
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 856;
                  else if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 840;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 822;
                  if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 832;
                  break;
               case 907:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 942;
                  else if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 940;
                  else if ((0x10000000100000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 929;
                  else if ((0x4000000040000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  else if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(7); }
                  else if ((0x1000000010L & l) != 0L)
                     { jjCheckNAdd(53); }
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 910;
                  else if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 906;
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 920;
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 917;
                  break;
               case 498:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 497;
                  break;
               case 767:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(3); }
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 766;
                  break;
               case 324:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 323;
                  break;
               case 435:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 440;
                  else if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 434;
                  break;
               case 855:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 862;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 854;
                  break;
               case 295:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 312;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 303;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 300;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 297;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 294;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 309;
                  if ((0x800000008000L & l) != 0L)
                     { jjCheckNAdd(3); }
                  break;
               case 421:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 431;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 424;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 420;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 428;
                  break;
               case 33:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 45;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 43;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 32;
                  if ((0x20000000200L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 793:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 798;
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(30); }
                  break;
               case 423:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 422;
                  break;
               case 249:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 290;
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 260;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 256;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 248;
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 285;
                  else if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(53); }
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 278;
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 273;
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 271;
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 264;
                  break;
               case 594:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 613;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 598;
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 603;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 593;
                  break;
               case 965:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x2000000020L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  break;
               case 404:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 416;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 413;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 405;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 410;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 403;
                  break;
               case 874:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 898;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 873;
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 881;
                  break;
               case 749:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 769;
                  else if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 764;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 757;
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 767;
                  else if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 761;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 752;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 748;
                  break;
               case 449:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200L & l) != 0L)
                     { jjCheckNAdd(448); }
                  break;
               case 0:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAddStates(12, 22); }
                  else if ((0x1000000010L & l) != 0L)
                     { jjAddStates(23, 39); }
                  else if ((0x80000000800000L & l) != 0L)
                     { jjAddStates(40, 44); }
                  else if ((0x40000000400000L & l) != 0L)
                     { jjAddStates(45, 49); }
                  else if ((0x20000000200000L & l) != 0L)
                     { jjAddStates(50, 56); }
                  else if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAddStates(57, 70); }
                  else if ((0x8000000080000L & l) != 0L)
                     { jjAddStates(71, 87); }
                  else if ((0x4000000040000L & l) != 0L)
                     { jjAddStates(88, 95); }
                  else if ((0x1000000010000L & l) != 0L)
                     { jjAddStates(96, 106); }
                  else if ((0x800000008000L & l) != 0L)
                     { jjCheckNAddStates(107, 113); }
                  else if ((0x400000004000L & l) != 0L)
                     { jjCheckNAddStates(114, 120); }
                  else if ((0x200000002000L & l) != 0L)
                     { jjAddStates(121, 124); }
                  else if ((0x100000001000L & l) != 0L)
                     { jjAddStates(125, 129); }
                  else if ((0x20000000200L & l) != 0L)
                     { jjAddStates(130, 142); }
                  else if ((0x8000000080L & l) != 0L)
                     { jjCheckNAddStates(143, 147); }
                  else if ((0x4000000040L & l) != 0L)
                     { jjAddStates(148, 154); }
                  else if ((0x2000000020L & l) != 0L)
                     { jjAddStates(155, 164); }
                  else if ((0x800000008L & l) != 0L)
                     { jjAddStates(165, 194); }
                  else if ((0x400000004L & l) != 0L)
                     { jjAddStates(195, 198); }
                  else if ((0x400000004000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 15;
                  else if ((0x200000002000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 11;
                  else if ((0x80000000800L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 8;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 5;
                  break;
               case 410:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 412;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 409;
                  break;
               case 929:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 928;
                  break;
               case 372:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 384;
                  else if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 371;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 378;
                  break;
               case 468:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 485;
                  else if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 479;
                  else if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 475;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 469;
                  else if ((0x4000000040L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 467;
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 471;
                  break;
               case 634:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 645;
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 639;
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 633;
                  if ((0x100000001000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  break;
               case 881:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 897;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 880;
                  break;
               case 966:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  break;
               case 315:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 324;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 321;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 318;
                  else if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(34); }
                  if ((0x800000008000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  break;
               case 450:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 449;
                  break;
               case 478:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 477;
                  break;
               case 906:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 905;
                  break;
               case 32:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 31;
                  break;
               case 52:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 245;
                  else if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 190;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 186;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 107;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 104;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 68;
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 241;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 175;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 100;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 62;
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 231;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 170;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 86;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 60;
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 215;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 164;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 77;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 58;
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 205;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 154;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 70;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 51;
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 195;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 146;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 138;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 133;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 129;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 125;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 118;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 113;
                  break;
               case 332:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 396;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 389;
                  else if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 338;
                  else if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 331;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 387;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 381;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 374;
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 368;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 364;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 355;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 352;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 345;
                  break;
               case 377:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 376;
                  break;
               case 587:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x200000002000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 662;
                  else if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 653;
                  else if ((0x2000000020000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 646;
                  else if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 628;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 625;
                  else if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 623;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 617;
                  else if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(34); }
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 590;
                  if ((0x2000000020000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 640;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 614;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 586;
                  if ((0x2000000020000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 634;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 604;
                  if ((0x2000000020000L & l) != 0L)
                     { jjCheckNAdd(280); }
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 599;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 594;
                  break;
               case 794:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 806;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 803;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 801;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 799;
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 793;
                  break;
               case 45:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(36); }
                  break;
               case 547:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 580;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 572;
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 578;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 568;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 562;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 556;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 548;
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 546;
                  break;
               case 345:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(320); }
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 367;
                  else if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 354;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 351;
                  else if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 344;
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 386;
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 363;
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 380;
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 373;
                  if ((0x10000000100000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  break;
               case 424:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 423;
                  break;
               case 416:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 415;
                  break;
               case 440:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 439;
                  break;
               case 378:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 383;
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 377;
                  break;
               case 667:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 744;
                  else if ((0x800000008000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 708;
                  else if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 675;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 673;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 666;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 742;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 695;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 739;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 684;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 730;
                  else if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 677;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 723;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 714;
                  break;
               case 302:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 856:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 863;
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 855;
                  break;
               case 798:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 797;
                  if ((0x400000004000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  break;
               case 910:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 909;
                  break;
               case 396:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 395;
                  break;
               case 897:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 896;
                  break;
               case 436:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 456;
                  else if ((0x800000008000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 446;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 444;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 441;
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 451;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 435;
                  break;
               case 666:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 665;
                  break;
               case 653:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 652;
                  break;
               case 479:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 478;
                  break;
               case 546:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 571;
                  else if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 567;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 561;
                  else if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 555;
                  else if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(280); }
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(53); }
                  break;
               case 963:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  break;
               case 488:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 543;
                  else if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 539;
                  else if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 498;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 492;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 532;
                  else if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(53); }
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 524;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 521;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 516;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 510;
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 505;
                  break;
               case 905:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 904;
                  break;
               case 427:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 426;
                  break;
               case 264:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 289;
                  else if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 277;
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 270;
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 284;
                  else if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(251); }
                  else if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 263;
                  break;
               case 451:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 455;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 450;
                  break;
               case 964:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x200000002000000L & l) != 0L)
                  {
                     if (kind > 2)
                        kind = 2;
                  }
                  break;
               case 113:
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAdd(28); }
                  }
                  if ((0x6fffffffefffffffL & l) != 0L)
                  {
                     if (kind > 102)
                        kind = 102;
                     { jjCheckNAddTwoStates(27, 28); }
                  }
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 185;
                  else if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 174;
                  else if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 132;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 128;
                  else if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 112;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 169;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 124;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 163;
                  else if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 117;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 153;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 145;
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 137;
                  break;
               case 3:
                  if ((0x4000000040000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 4:
               case 686:
                  if ((0x20000000200000L & l) != 0L)
                     { jjCheckNAdd(3); }
                  break;
               case 6:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 5;
                  break;
               case 7:
                  if ((0x200000002000000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 8:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(7); }
                  break;
               case 9:
                  if ((0x80000000800L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 8;
                  break;
               case 10:
               case 70:
               case 443:
               case 779:
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(3); }
                  break;
               case 11:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 10;
                  break;
               case 12:
                  if ((0x200000002000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 11;
                  break;
               case 13:
                  if ((0x2000000020L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 14:
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 15:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 14;
                  break;
               case 16:
                  if ((0x400000004000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 15;
                  break;
               case 23:
                  if (kind > 91)
                     kind = 91;
                  { jjAddStates(9, 11); }
                  break;
               case 27:
                  if ((0x6fffffffefffffffL & l) == 0L)
                     break;
                  if (kind > 102)
                     kind = 102;
                  { jjCheckNAddTwoStates(27, 28); }
                  break;
               case 28:
                  if ((0x6fffffffefffffffL & l) == 0L)
                     break;
                  if (kind > 102)
                     kind = 102;
                  { jjCheckNAdd(28); }
                  break;
               case 29:
                  if ((0x400000004L & l) != 0L)
                     { jjAddStates(195, 198); }
                  break;
               case 30:
                  if ((0x400000004000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 31:
               case 884:
                  if ((0x20000000200L & l) != 0L)
                     { jjCheckNAdd(30); }
                  break;
               case 34:
                  if ((0x10000000100000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 35:
               case 131:
                  if ((0x20000000200L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 36:
                  if ((0x10000000100L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 37:
               case 79:
               case 88:
               case 430:
               case 459:
               case 801:
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(36); }
                  break;
               case 38:
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 37;
                  break;
               case 39:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 38;
                  break;
               case 40:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 39;
                  break;
               case 41:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 40;
                  break;
               case 42:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 41;
                  break;
               case 43:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 42;
                  break;
               case 44:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 43;
                  break;
               case 46:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 45;
                  break;
               case 47:
                  if ((0x800000008L & l) != 0L)
                     { jjAddStates(165, 194); }
                  break;
               case 48:
               case 631:
                  if ((0x1000000010L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 49:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 48;
                  break;
               case 50:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 49;
                  break;
               case 51:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 50;
                  break;
               case 53:
                  if ((0x1000000010L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 54:
               case 843:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(53); }
                  break;
               case 55:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 54;
                  break;
               case 56:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 55;
                  break;
               case 57:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 56;
                  break;
               case 58:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 57;
                  break;
               case 59:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 58;
                  break;
               case 60:
               case 106:
               case 248:
               case 293:
                  if ((0x8000000080000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 61:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 60;
                  break;
               case 62:
               case 299:
               case 405:
                  if ((0x8000000080000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 63:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 62;
                  break;
               case 64:
                  if ((0x8000000080L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 65:
                  if ((0x800000008000L & l) != 0L)
                     { jjCheckNAdd(64); }
                  break;
               case 66:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 65;
                  break;
               case 67:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 66;
                  break;
               case 68:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 67;
                  break;
               case 69:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 68;
                  break;
               case 71:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 70;
                  break;
               case 72:
               case 233:
               case 371:
               case 606:
               case 655:
               case 763:
               case 795:
               case 919:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(3); }
                  break;
               case 73:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 72;
                  break;
               case 74:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 73;
                  break;
               case 75:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 74;
                  break;
               case 76:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 75;
                  break;
               case 77:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 76;
                  break;
               case 78:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 77;
                  break;
               case 80:
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 79;
                  break;
               case 81:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 80;
                  break;
               case 82:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 81;
                  break;
               case 83:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 82;
                  break;
               case 84:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 83;
                  break;
               case 85:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 84;
                  break;
               case 86:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 85;
                  break;
               case 87:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 86;
                  break;
               case 89:
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 88;
                  break;
               case 90:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 89;
                  break;
               case 91:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 90;
                  break;
               case 92:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 91;
                  break;
               case 93:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 92;
                  break;
               case 94:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 93;
                  break;
               case 95:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 94;
                  break;
               case 96:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 95;
                  break;
               case 97:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 96;
                  break;
               case 98:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 97;
                  break;
               case 99:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 98;
                  break;
               case 100:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 99;
                  break;
               case 101:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 100;
                  break;
               case 102:
                  if ((0x80000000800L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 103:
               case 574:
                  if ((0x800000008L & l) != 0L)
                     { jjCheckNAdd(102); }
                  break;
               case 104:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 103;
                  break;
               case 105:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 104;
                  break;
               case 107:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 106;
                  break;
               case 108:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 107;
                  break;
               case 109:
               case 627:
                  if ((0x800000008L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 110:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 109;
                  break;
               case 111:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 110;
                  break;
               case 112:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 111;
                  break;
               case 114:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 113;
                  break;
               case 115:
               case 188:
               case 197:
               case 275:
               case 333:
               case 422:
               case 642:
               case 697:
               case 725:
               case 759:
               case 805:
               case 809:
               case 812:
               case 849:
               case 902:
               case 913:
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 116:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 115;
                  break;
               case 117:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 116;
                  break;
               case 118:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 117;
                  break;
               case 119:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 118;
                  break;
               case 120:
               case 140:
               case 266:
               case 391:
               case 473:
               case 494:
               case 500:
               case 596:
               case 601:
               case 716:
               case 732:
               case 747:
               case 908:
               case 924:
               case 931:
                  if ((0x800000008000L & l) != 0L)
                     { jjCheckNAdd(30); }
                  break;
               case 121:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 120;
                  break;
               case 122:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 121;
                  break;
               case 123:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 122;
                  break;
               case 124:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 123;
                  break;
               case 125:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 124;
                  break;
               case 126:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 125;
                  break;
               case 127:
                  if ((0x200000002000L & l) != 0L)
                     { jjCheckNAdd(30); }
                  break;
               case 128:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 127;
                  break;
               case 129:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 128;
                  break;
               case 130:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 129;
                  break;
               case 132:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 131;
                  break;
               case 133:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 132;
                  break;
               case 134:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 133;
                  break;
               case 135:
               case 287:
               case 564:
               case 876:
                  if ((0x800000008L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 136:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 135;
                  break;
               case 138:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 137;
                  break;
               case 139:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 138;
                  break;
               case 141:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 140;
                  break;
               case 142:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 141;
                  break;
               case 143:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 142;
                  break;
               case 144:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 143;
                  break;
               case 145:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 144;
                  break;
               case 146:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 145;
                  break;
               case 147:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 146;
                  break;
               case 148:
               case 192:
               case 323:
               case 619:
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 149:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 148;
                  break;
               case 150:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 149;
                  break;
               case 151:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 150;
                  break;
               case 152:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 151;
                  break;
               case 153:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 152;
                  break;
               case 154:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 153;
                  break;
               case 155:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 154;
                  break;
               case 156:
                  if ((0x8000000080000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 157:
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(156); }
                  break;
               case 158:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 157;
                  break;
               case 159:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 158;
                  break;
               case 160:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 159;
                  break;
               case 161:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 160;
                  break;
               case 162:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 161;
                  break;
               case 163:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 162;
                  break;
               case 164:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 163;
                  break;
               case 165:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 164;
                  break;
               case 166:
               case 750:
               case 772:
                  if ((0x20000000200000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 167:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 166;
                  break;
               case 169:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 168;
                  break;
               case 170:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 169;
                  break;
               case 171:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 170;
                  break;
               case 172:
               case 366:
                  if ((0x4000000040000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 173:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 172;
                  break;
               case 174:
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 173;
                  break;
               case 175:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 174;
                  break;
               case 176:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 175;
                  break;
               case 177:
               case 407:
               case 648:
               case 710:
               case 784:
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(64); }
                  break;
               case 178:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 177;
                  break;
               case 179:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 178;
                  break;
               case 180:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 179;
                  break;
               case 181:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 180;
                  break;
               case 182:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 181;
                  break;
               case 183:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 182;
                  break;
               case 184:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 183;
                  break;
               case 185:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 184;
                  break;
               case 186:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 185;
                  break;
               case 187:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 186;
                  break;
               case 189:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 188;
                  break;
               case 190:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 189;
                  break;
               case 191:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 190;
                  break;
               case 193:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 192;
                  break;
               case 194:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 193;
                  break;
               case 195:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 194;
                  break;
               case 196:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 195;
                  break;
               case 198:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 197;
                  break;
               case 199:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 198;
                  break;
               case 200:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 199;
                  break;
               case 201:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 200;
                  break;
               case 202:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 201;
                  break;
               case 203:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 202;
                  break;
               case 204:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 203;
                  break;
               case 205:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 204;
                  break;
               case 206:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 205;
                  break;
               case 207:
               case 625:
               case 677:
                  if ((0x200000002000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 208:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 207;
                  break;
               case 209:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 208;
                  break;
               case 210:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 209;
                  break;
               case 211:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 210;
                  break;
               case 212:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 211;
                  break;
               case 213:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 212;
                  break;
               case 214:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 213;
                  break;
               case 215:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 214;
                  break;
               case 216:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 215;
                  break;
               case 217:
                  if ((0x1000000010000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 218:
               case 679:
                  if ((0x200000002000L & l) != 0L)
                     { jjCheckNAdd(217); }
                  break;
               case 219:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 218;
                  break;
               case 220:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 219;
                  break;
               case 221:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 220;
                  break;
               case 222:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 221;
                  break;
               case 223:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 222;
                  break;
               case 224:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 223;
                  break;
               case 225:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 224;
                  break;
               case 226:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 225;
                  break;
               case 227:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 226;
                  break;
               case 228:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 227;
                  break;
               case 229:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 228;
                  break;
               case 230:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 229;
                  break;
               case 231:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 230;
                  break;
               case 232:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 231;
                  break;
               case 234:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 233;
                  break;
               case 235:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 234;
                  break;
               case 236:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 235;
                  break;
               case 237:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 236;
                  break;
               case 238:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 237;
                  break;
               case 239:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 238;
                  break;
               case 240:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 239;
                  break;
               case 241:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 240;
                  break;
               case 242:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 241;
                  break;
               case 243:
               case 340:
               case 523:
               case 636:
               case 859:
                  if ((0x800000008000L & l) != 0L)
                     { jjCheckNAdd(3); }
                  break;
               case 244:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 243;
                  break;
               case 245:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 244;
                  break;
               case 246:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 245;
                  break;
               case 247:
                  if ((0x2000000020L & l) != 0L)
                     { jjAddStates(155, 164); }
                  break;
               case 250:
               case 311:
               case 592:
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(53); }
                  break;
               case 251:
                  if ((0x800000008L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 252:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(251); }
                  break;
               case 253:
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 252;
                  break;
               case 254:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 253;
                  break;
               case 256:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 255;
                  break;
               case 257:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 256;
                  break;
               case 258:
                  if ((0x1000000010000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 259:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 258;
                  break;
               case 260:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 259;
                  break;
               case 261:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 260;
                  break;
               case 262:
                  if ((0x1000000010000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 263:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 262;
                  break;
               case 265:
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 264;
                  break;
               case 267:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 266;
                  break;
               case 268:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 267;
                  break;
               case 269:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 268;
                  break;
               case 270:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 269;
                  break;
               case 271:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 270;
                  break;
               case 272:
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 271;
                  break;
               case 273:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(251); }
                  break;
               case 274:
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 273;
                  break;
               case 276:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 275;
                  break;
               case 277:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 276;
                  break;
               case 278:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 277;
                  break;
               case 279:
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 278;
                  break;
               case 280:
                  if ((0x100000001000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 281:
               case 316:
               case 383:
               case 415:
               case 437:
               case 489:
               case 820:
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(280); }
                  break;
               case 282:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 281;
                  break;
               case 283:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 282;
                  break;
               case 284:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 283;
                  break;
               case 285:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 284;
                  break;
               case 286:
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 285;
                  break;
               case 288:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 287;
                  break;
               case 289:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 288;
                  break;
               case 290:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 289;
                  break;
               case 291:
                  if ((0x100000001000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 290;
                  break;
               case 292:
                  if ((0x4000000040L & l) != 0L)
                     { jjAddStates(148, 154); }
                  break;
               case 294:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 293;
                  break;
               case 296:
               case 419:
                  if ((0x800000008L & l) != 0L)
                     { jjCheckNAdd(36); }
                  break;
               case 297:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 296;
                  break;
               case 298:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 297;
                  break;
               case 300:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 299;
                  break;
               case 301:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 300;
                  break;
               case 304:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 303;
                  break;
               case 305:
                  if ((0x800000008000L & l) != 0L)
                     { jjCheckNAdd(3); }
                  break;
               case 306:
                  if ((0x8000000080L & l) != 0L)
                     { jjCheckNAdd(30); }
                  break;
               case 307:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 306;
                  break;
               case 308:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 307;
                  break;
               case 309:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 308;
                  break;
               case 310:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 309;
                  break;
               case 312:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 311;
                  break;
               case 313:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 312;
                  break;
               case 314:
                  if ((0x8000000080L & l) != 0L)
                     { jjCheckNAddStates(143, 147); }
                  break;
               case 317:
                  if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 316;
                  break;
               case 318:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 317;
                  break;
               case 319:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 318;
                  break;
               case 320:
                  if ((0x800000008000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 321:
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(320); }
                  break;
               case 322:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 321;
                  break;
               case 325:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 324;
                  break;
               case 326:
                  if ((0x20000000200L & l) != 0L)
                     { jjAddStates(130, 142); }
                  break;
               case 327:
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(7); }
                  break;
               case 328:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 327;
                  break;
               case 329:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 328;
                  break;
               case 330:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 329;
                  break;
               case 331:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 330;
                  break;
               case 334:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 333;
                  break;
               case 335:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 334;
                  break;
               case 336:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 335;
                  break;
               case 337:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 336;
                  break;
               case 338:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 337;
                  break;
               case 339:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 338;
                  break;
               case 341:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 340;
                  break;
               case 342:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 341;
                  break;
               case 343:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 342;
                  break;
               case 344:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 343;
                  break;
               case 346:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 345;
                  break;
               case 347:
                  if ((0x100000001000L & l) != 0L)
                     { jjCheckNAdd(7); }
                  break;
               case 348:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 347;
                  break;
               case 349:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 348;
                  break;
               case 350:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 349;
                  break;
               case 351:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 350;
                  break;
               case 352:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 351;
                  break;
               case 353:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 352;
                  break;
               case 354:
               case 477:
                  if ((0x20000000200000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 355:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 354;
                  break;
               case 356:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 355;
                  break;
               case 357:
               case 512:
               case 558:
                  if ((0x40000000400000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 358:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 357;
                  break;
               case 359:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 358;
                  break;
               case 360:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 359;
                  break;
               case 361:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 360;
                  break;
               case 362:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 361;
                  break;
               case 363:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 362;
                  break;
               case 364:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 363;
                  break;
               case 365:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 364;
                  break;
               case 367:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 366;
                  break;
               case 368:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 367;
                  break;
               case 369:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 368;
                  break;
               case 370:
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 374:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 373;
                  break;
               case 375:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 374;
                  break;
               case 379:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 378;
                  break;
               case 380:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 379;
                  break;
               case 381:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 380;
                  break;
               case 382:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 381;
                  break;
               case 384:
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 383;
                  break;
               case 385:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 384;
                  break;
               case 386:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 385;
                  break;
               case 387:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 386;
                  break;
               case 388:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 387;
                  break;
               case 389:
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAdd(320); }
                  break;
               case 390:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 389;
                  break;
               case 392:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 391;
                  break;
               case 393:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 392;
                  break;
               case 394:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 393;
                  break;
               case 395:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 394;
                  break;
               case 397:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 396;
                  break;
               case 398:
                  if ((0x100000001000L & l) != 0L)
                     { jjAddStates(125, 129); }
                  break;
               case 399:
               case 766:
                  if ((0x8000000080L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 400:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 399;
                  break;
               case 401:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 400;
                  break;
               case 402:
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 401;
                  break;
               case 403:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 402;
                  break;
               case 406:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 405;
                  break;
               case 408:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 407;
                  break;
               case 409:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 408;
                  break;
               case 411:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 410;
                  break;
               case 412:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(280); }
                  break;
               case 413:
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 412;
                  break;
               case 414:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 413;
                  break;
               case 417:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 416;
                  break;
               case 418:
                  if ((0x200000002000L & l) != 0L)
                     { jjAddStates(121, 124); }
                  break;
               case 425:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 424;
                  break;
               case 426:
               case 665:
               case 835:
               case 888:
                  if ((0x100000001000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 429:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 428;
                  break;
               case 431:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 430;
                  break;
               case 432:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 431;
                  break;
               case 433:
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAddStates(114, 120); }
                  break;
               case 434:
               case 526:
               case 550:
               case 775:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(156); }
                  break;
               case 438:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 437;
                  break;
               case 439:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 438;
                  break;
               case 441:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 440;
                  break;
               case 442:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 441;
                  break;
               case 444:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 443;
                  break;
               case 445:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 444;
                  break;
               case 446:
                  if ((0x100000001000000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 447:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 446;
                  break;
               case 448:
                  if ((0x4000000040L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 452:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 451;
                  break;
               case 453:
               case 541:
                  if ((0x20000000200L & l) != 0L)
                     { jjCheckNAdd(251); }
                  break;
               case 454:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 453;
                  break;
               case 455:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 454;
                  break;
               case 456:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 455;
                  break;
               case 457:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 456;
                  break;
               case 458:
                  if ((0x800000008000L & l) != 0L)
                     { jjCheckNAddStates(107, 113); }
                  break;
               case 460:
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 459;
                  break;
               case 461:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 460;
                  break;
               case 462:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 461;
                  break;
               case 463:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 462;
                  break;
               case 464:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 463;
                  break;
               case 465:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 464;
                  break;
               case 466:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 465;
                  break;
               case 467:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 466;
                  break;
               case 470:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 469;
                  break;
               case 471:
               case 675:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(30); }
                  break;
               case 472:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 471;
                  break;
               case 474:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 473;
                  break;
               case 475:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 474;
                  break;
               case 476:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 475;
                  break;
               case 480:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 479;
                  break;
               case 481:
                  if ((0x1000000010000L & l) != 0L)
                     { jjCheckNAdd(156); }
                  break;
               case 482:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 481;
                  break;
               case 483:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 482;
                  break;
               case 484:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 483;
                  break;
               case 485:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 484;
                  break;
               case 486:
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 485;
                  break;
               case 487:
                  if ((0x1000000010000L & l) != 0L)
                     { jjAddStates(96, 106); }
                  break;
               case 490:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 489;
                  break;
               case 491:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 490;
                  break;
               case 492:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 491;
                  break;
               case 493:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 492;
                  break;
               case 495:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 494;
                  break;
               case 496:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 495;
                  break;
               case 497:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 496;
                  break;
               case 499:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 498;
                  break;
               case 501:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 500;
                  break;
               case 502:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 501;
                  break;
               case 503:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 502;
                  break;
               case 504:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 503;
                  break;
               case 505:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 504;
                  break;
               case 506:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 505;
                  break;
               case 507:
               case 534:
               case 825:
                  if ((0x4000000040000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 508:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 507;
                  break;
               case 509:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 508;
                  break;
               case 510:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 509;
                  break;
               case 511:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 510;
                  break;
               case 513:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 512;
                  break;
               case 514:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 513;
                  break;
               case 515:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 514;
                  break;
               case 516:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 515;
                  break;
               case 517:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 516;
                  break;
               case 518:
               case 668:
                  if ((0x4000000040000L & l) != 0L)
                     { jjCheckNAdd(7); }
                  break;
               case 519:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 518;
                  break;
               case 520:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 519;
                  break;
               case 521:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 520;
                  break;
               case 522:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 521;
                  break;
               case 524:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 523;
                  break;
               case 525:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 524;
                  break;
               case 527:
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 526;
                  break;
               case 528:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 527;
                  break;
               case 529:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 528;
                  break;
               case 530:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 529;
                  break;
               case 531:
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 530;
                  break;
               case 532:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 531;
                  break;
               case 533:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 532;
                  break;
               case 535:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 534;
                  break;
               case 536:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 535;
                  break;
               case 537:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 536;
                  break;
               case 538:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 537;
                  break;
               case 539:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 538;
                  break;
               case 540:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 539;
                  break;
               case 542:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 541;
                  break;
               case 543:
                  if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 542;
                  break;
               case 544:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 543;
                  break;
               case 545:
                  if ((0x4000000040000L & l) != 0L)
                     { jjAddStates(88, 95); }
                  break;
               case 548:
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(280); }
                  break;
               case 549:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 548;
                  break;
               case 551:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 550;
                  break;
               case 552:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 551;
                  break;
               case 553:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 552;
                  break;
               case 554:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 553;
                  break;
               case 555:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 554;
                  break;
               case 556:
                  if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 555;
                  break;
               case 557:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 556;
                  break;
               case 559:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 558;
                  break;
               case 560:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 559;
                  break;
               case 561:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 560;
                  break;
               case 562:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 561;
                  break;
               case 563:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 562;
                  break;
               case 565:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 564;
                  break;
               case 566:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 565;
                  break;
               case 567:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 566;
                  break;
               case 568:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 567;
                  break;
               case 569:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 568;
                  break;
               case 570:
                  if ((0x80000000800L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 571:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 570;
                  break;
               case 572:
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 571;
                  break;
               case 573:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 572;
                  break;
               case 575:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 574;
                  break;
               case 576:
                  if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 575;
                  break;
               case 577:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 576;
                  break;
               case 579:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 578;
                  break;
               case 580:
                  if ((0x80000000800000L & l) != 0L)
                     { jjCheckNAdd(156); }
                  break;
               case 581:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 580;
                  break;
               case 582:
                  if ((0x8000000080000L & l) != 0L)
                     { jjAddStates(71, 87); }
                  break;
               case 583:
                  if ((0x200000002L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 584:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 583;
                  break;
               case 585:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 584;
                  break;
               case 586:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 585;
                  break;
               case 588:
                  if ((0x100000001000L & l) != 0L)
                     { jjCheckNAdd(280); }
                  break;
               case 589:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 588;
                  break;
               case 590:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 589;
                  break;
               case 591:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 590;
                  break;
               case 593:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 592;
                  break;
               case 595:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 594;
                  break;
               case 597:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 596;
                  break;
               case 598:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 597;
                  break;
               case 599:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 598;
                  break;
               case 600:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 599;
                  break;
               case 602:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 601;
                  break;
               case 603:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 602;
                  break;
               case 604:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 603;
                  break;
               case 605:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 604;
                  break;
               case 607:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 606;
                  break;
               case 608:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 607;
                  break;
               case 609:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 608;
                  break;
               case 610:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 609;
                  break;
               case 611:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 610;
                  break;
               case 612:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 611;
                  break;
               case 613:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 612;
                  break;
               case 614:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 613;
                  break;
               case 615:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 614;
                  break;
               case 616:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 618:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 617;
                  break;
               case 620:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 619;
                  break;
               case 621:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 620;
                  break;
               case 622:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 621;
                  break;
               case 623:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 622;
                  break;
               case 624:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 623;
                  break;
               case 626:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 625;
                  break;
               case 628:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 627;
                  break;
               case 629:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 628;
                  break;
               case 630:
                  if ((0x2000000020000L & l) != 0L)
                     { jjCheckNAdd(280); }
                  break;
               case 632:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 631;
                  break;
               case 633:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 632;
                  break;
               case 635:
                  if ((0x2000000020000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 634;
                  break;
               case 637:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 636;
                  break;
               case 638:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 637;
                  break;
               case 639:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 638;
                  break;
               case 640:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 639;
                  break;
               case 641:
                  if ((0x2000000020000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 640;
                  break;
               case 643:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 642;
                  break;
               case 644:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 643;
                  break;
               case 645:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 644;
                  break;
               case 646:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 645;
                  break;
               case 647:
                  if ((0x2000000020000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 646;
                  break;
               case 649:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 648;
                  break;
               case 650:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 649;
                  break;
               case 651:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 650;
                  break;
               case 652:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 651;
                  break;
               case 654:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 653;
                  break;
               case 656:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 655;
                  break;
               case 657:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 656;
                  break;
               case 658:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 657;
                  break;
               case 659:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 658;
                  break;
               case 660:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 659;
                  break;
               case 661:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 660;
                  break;
               case 662:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 661;
                  break;
               case 663:
                  if ((0x200000002000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 662;
                  break;
               case 664:
                  if ((0x10000000100000L & l) != 0L)
                     { jjCheckNAddStates(57, 70); }
                  break;
               case 669:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 668;
                  break;
               case 670:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 669;
                  break;
               case 671:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 670;
                  break;
               case 672:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 671;
                  break;
               case 673:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 672;
                  break;
               case 674:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 673;
                  break;
               case 676:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 675;
                  break;
               case 678:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 677;
                  break;
               case 680:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 679;
                  break;
               case 681:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 680;
                  break;
               case 682:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 681;
                  break;
               case 683:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 682;
                  break;
               case 684:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 683;
                  break;
               case 685:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 684;
                  break;
               case 687:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 686;
                  break;
               case 688:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 687;
                  break;
               case 689:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 688;
                  break;
               case 690:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 689;
                  break;
               case 691:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 690;
                  break;
               case 692:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 691;
                  break;
               case 693:
                  if ((0x400000004000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 692;
                  break;
               case 694:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 693;
                  break;
               case 695:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 694;
                  break;
               case 696:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 695;
                  break;
               case 698:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 697;
                  break;
               case 699:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 698;
                  break;
               case 700:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 699;
                  break;
               case 701:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 700;
                  break;
               case 702:
                  if (curChar == 95)
                     jjstateSet[jjnewStateCnt++] = 701;
                  break;
               case 703:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 702;
                  break;
               case 704:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 703;
                  break;
               case 705:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 704;
                  break;
               case 706:
                  if ((0x400000004000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 705;
                  break;
               case 707:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 706;
                  break;
               case 708:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 707;
                  break;
               case 709:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 708;
                  break;
               case 711:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 710;
                  break;
               case 712:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 711;
                  break;
               case 713:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 712;
                  break;
               case 715:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 714;
                  break;
               case 717:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 716;
                  break;
               case 718:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 717;
                  break;
               case 719:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 718;
                  break;
               case 720:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 719;
                  break;
               case 721:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 720;
                  break;
               case 722:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 721;
                  break;
               case 723:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 722;
                  break;
               case 724:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 723;
                  break;
               case 726:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 725;
                  break;
               case 727:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 726;
                  break;
               case 728:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 727;
                  break;
               case 729:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 728;
                  break;
               case 730:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 729;
                  break;
               case 731:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 730;
                  break;
               case 733:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 732;
                  break;
               case 734:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 733;
                  break;
               case 735:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 734;
                  break;
               case 736:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 735;
                  break;
               case 737:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 736;
                  break;
               case 738:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 737;
                  break;
               case 739:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 738;
                  break;
               case 740:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 739;
                  break;
               case 741:
                  if ((0x200000002000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 742:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 741;
                  break;
               case 743:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 742;
                  break;
               case 744:
                  if ((0x20000000200000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 745:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 744;
                  break;
               case 746:
                  if ((0x20000000200000L & l) != 0L)
                     { jjAddStates(50, 56); }
                  break;
               case 748:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 747;
                  break;
               case 751:
                  if ((0x2000000020000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 750;
                  break;
               case 752:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 751;
                  break;
               case 753:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 752;
                  break;
               case 754:
                  if ((0x80000000800000L & l) != 0L)
                     { jjCheckNAdd(30); }
                  break;
               case 755:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 754;
                  break;
               case 756:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 755;
                  break;
               case 757:
                  if ((0x80000000800L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 756;
                  break;
               case 758:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 757;
                  break;
               case 760:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 759;
                  break;
               case 761:
                  if ((0x1000000010L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 760;
                  break;
               case 762:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 761;
                  break;
               case 764:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 763;
                  break;
               case 765:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 764;
                  break;
               case 768:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 767;
                  break;
               case 769:
                  if ((0x2000000020L & l) != 0L)
                     { jjCheckNAdd(3); }
                  break;
               case 770:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 769;
                  break;
               case 771:
                  if ((0x40000000400000L & l) != 0L)
                     { jjAddStates(45, 49); }
                  break;
               case 773:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 772;
                  break;
               case 774:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 773;
                  break;
               case 776:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 775;
                  break;
               case 777:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 776;
                  break;
               case 778:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 777;
                  break;
               case 780:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 779;
                  break;
               case 781:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 780;
                  break;
               case 782:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 781;
                  break;
               case 783:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 782;
                  break;
               case 785:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 784;
                  break;
               case 786:
                  if ((0x200000002000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 785;
                  break;
               case 787:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 786;
                  break;
               case 788:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 787;
                  break;
               case 789:
                  if ((0x80000000800000L & l) != 0L && kind > 2)
                     kind = 2;
                  break;
               case 790:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 789;
                  break;
               case 791:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 790;
                  break;
               case 792:
                  if ((0x80000000800000L & l) != 0L)
                     { jjAddStates(40, 44); }
                  break;
               case 796:
                  if ((0x40000000400000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 795;
                  break;
               case 797:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 796;
                  break;
               case 799:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 798;
                  break;
               case 800:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 799;
                  break;
               case 802:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 801;
                  break;
               case 803:
                  if ((0x4000000040000L & l) != 0L)
                     { jjCheckNAdd(102); }
                  break;
               case 804:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 803;
                  break;
               case 806:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 805;
                  break;
               case 807:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 806;
                  break;
               case 808:
                  if ((0x1000000010L & l) != 0L)
                     { jjAddStates(23, 39); }
                  break;
               case 811:
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAdd(7); }
                  break;
               case 813:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 812;
                  break;
               case 814:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 813;
                  break;
               case 815:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 814;
                  break;
               case 816:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 815;
                  break;
               case 817:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 816;
                  break;
               case 819:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 818;
                  break;
               case 821:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 820;
                  break;
               case 822:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 821;
                  break;
               case 823:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 822;
                  break;
               case 824:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 823;
                  break;
               case 826:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 825;
                  break;
               case 827:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 826;
                  break;
               case 828:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 827;
                  break;
               case 829:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 828;
                  break;
               case 830:
                  if ((0x100000001000L & l) != 0L)
                     { jjCheckNAdd(34); }
                  break;
               case 831:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 830;
                  break;
               case 832:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 831;
                  break;
               case 833:
                  if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 832;
                  break;
               case 834:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 833;
                  break;
               case 836:
                  if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 835;
                  break;
               case 837:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 836;
                  break;
               case 838:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 837;
                  break;
               case 839:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 838;
                  break;
               case 840:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 839;
                  break;
               case 841:
                  if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 840;
                  break;
               case 842:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 841;
                  break;
               case 844:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 843;
                  break;
               case 845:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 844;
                  break;
               case 846:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 845;
                  break;
               case 847:
                  if ((0x4000000040L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 846;
                  break;
               case 848:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 847;
                  break;
               case 850:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 849;
                  break;
               case 851:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 850;
                  break;
               case 852:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 851;
                  break;
               case 853:
                  if ((0x400000004L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 854:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 853;
                  break;
               case 857:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 856;
                  break;
               case 858:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 857;
                  break;
               case 860:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 859;
                  break;
               case 861:
                  if ((0x1000000010000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 860;
                  break;
               case 862:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 861;
                  break;
               case 863:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 862;
                  break;
               case 864:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 863;
                  break;
               case 865:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 864;
                  break;
               case 866:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 865;
                  break;
               case 867:
                  if ((0x800000008L & l) != 0L)
                     { jjCheckNAdd(156); }
                  break;
               case 868:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 867;
                  break;
               case 869:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 868;
                  break;
               case 870:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 869;
                  break;
               case 871:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 870;
                  break;
               case 872:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 871;
                  break;
               case 873:
                  if ((0x8000000080L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 872;
                  break;
               case 875:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 874;
                  break;
               case 877:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 876;
                  break;
               case 878:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 877;
                  break;
               case 879:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 878;
                  break;
               case 880:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 879;
                  break;
               case 882:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 881;
                  break;
               case 883:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 882;
                  break;
               case 885:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 884;
                  break;
               case 886:
                  if ((0x200000002000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 885;
                  break;
               case 887:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 886;
                  break;
               case 889:
                  if ((0x400000004L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 888;
                  break;
               case 890:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 889;
                  break;
               case 891:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 890;
                  break;
               case 892:
                  if ((0x800000008000L & l) != 0L)
                     { jjCheckNAdd(217); }
                  break;
               case 893:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 892;
                  break;
               case 894:
                  if ((0x10000000100000L & l) != 0L && kind > 20)
                     kind = 20;
                  break;
               case 895:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 894;
                  break;
               case 896:
                  if ((0x400000004000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 895;
                  break;
               case 898:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 897;
                  break;
               case 899:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 898;
                  break;
               case 900:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 899;
                  break;
               case 901:
                  if ((0x200000002L & l) != 0L)
                     { jjCheckNAddStates(12, 22); }
                  break;
               case 903:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 902;
                  break;
               case 904:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 903;
                  break;
               case 909:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 908;
                  break;
               case 911:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 910;
                  break;
               case 912:
                  if ((0x1000000010L & l) != 0L)
                     { jjCheckNAdd(53); }
                  break;
               case 914:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 913;
                  break;
               case 915:
                  if ((0x800000008L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 914;
                  break;
               case 916:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 915;
                  break;
               case 917:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 916;
                  break;
               case 918:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 917;
                  break;
               case 920:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 919;
                  break;
               case 921:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 920;
                  break;
               case 922:
                  if ((0x400000004000L & l) != 0L)
                     { jjCheckNAdd(7); }
                  break;
               case 923:
                  if ((0x4000000040000L & l) != 0L)
                     { jjCheckNAdd(13); }
                  break;
               case 925:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 924;
                  break;
               case 926:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 925;
                  break;
               case 927:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 926;
                  break;
               case 928:
                  if ((0x2000000020L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 927;
                  break;
               case 930:
                  if ((0x8000000080000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 929;
                  break;
               case 932:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 931;
                  break;
               case 933:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 932;
                  break;
               case 934:
                  if ((0x200000002L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 933;
                  break;
               case 935:
                  if ((0x400000004000000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 934;
                  break;
               case 936:
                  if ((0x20000000200L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 935;
                  break;
               case 937:
                  if ((0x4000000040000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 936;
                  break;
               case 938:
                  if ((0x800000008000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 937;
                  break;
               case 939:
                  if ((0x10000000100L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 938;
                  break;
               case 940:
                  if ((0x10000000100000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 939;
                  break;
               case 941:
                  if ((0x20000000200000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 940;
                  break;
               case 942:
                  if ((0x100000001000L & l) != 0L && kind > 20)
                     kind = 20;
                  break;
               case 943:
                  if ((0x100000001000L & l) != 0L)
                     jjstateSet[jjnewStateCnt++] = 942;
                  break;
               case 946:
                  if ((0x2000000020L & l) != 0L)
                     { jjAddStates(199, 200); }
                  break;
               case 960:
               case 961:
                  if ((0x6fffffffefffffffL & l) == 0L)
                     break;
                  if (kind > 102)
                     kind = 102;
                  { jjCheckNAdd(961); }
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      else
      {
         int i2 = (curChar & 0xff) >> 6;
         long l2 = 1L << (curChar & 077);
         do
         {
            switch(jjstateSet[--i])
            {
               case 23:
                  if ((jjbitVec0[i2] & l2) == 0L)
                     break;
                  if (kind > 91)
                     kind = 91;
                  { jjAddStates(9, 11); }
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      if (kind != 0x7fffffff)
      {
         jjmatchedKind = kind;
         jjmatchedPos = curPos;
         kind = 0x7fffffff;
      }
      ++curPos;
      if ((i = jjnewStateCnt) == (startsAt = 962 - (jjnewStateCnt = startsAt)))
         return curPos;
      try { curChar = input_stream.readChar(); }
      catch(java.io.IOException e) { return curPos; }
   }
}
private final int jjStopStringLiteralDfa_1(int pos, long active0, long active1){
   switch (pos)
   {
      default :
         return -1;
   }
}
private final int jjStartNfa_1(int pos, long active0, long active1){
   return jjMoveNfa_1(jjStopStringLiteralDfa_1(pos, active0, active1), pos + 1);
}
private int jjMoveStringLiteralDfa0_1(){
   switch(curChar)
   {
      case 39:
         return jjStartNfaWithStates_1(0, 94, 1);
      default :
         return jjMoveNfa_1(0, 0);
   }
}
private int jjStartNfaWithStates_1(int pos, int kind, int state)
{
   jjmatchedKind = kind;
   jjmatchedPos = pos;
   try { curChar = input_stream.readChar(); }
   catch(java.io.IOException e) { return pos + 1; }
   return jjMoveNfa_1(state, pos + 1);
}
private int jjMoveNfa_1(int startState, int curPos)
{
   int startsAt = 0;
   jjnewStateCnt = 3;
   int i = 1;
   jjstateSet[0] = startState;
   int kind = 0x7fffffff;
   for (;;)
   {
      if (++jjround == 0x7fffffff)
         ReInitRounds();
      if (curChar < 64)
      {
         long l = 1L << curChar;
         do
         {
            switch(jjstateSet[--i])
            {
               case 0:
                  if ((0xffffff7fffffffffL & l) != 0L)
                  {
                     if (kind > 93)
                        kind = 93;
                  }
                  else if (curChar == 39)
                     jjstateSet[jjnewStateCnt++] = 1;
                  break;
               case 1:
                  if (curChar == 39 && kind > 93)
                     kind = 93;
                  break;
               case 2:
                  if (curChar == 39)
                     jjstateSet[jjnewStateCnt++] = 1;
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      else if (curChar < 128)
      {
         long l = 1L << (curChar & 077);
         do
         {
            switch(jjstateSet[--i])
            {
               case 0:
                  kind = 93;
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      else
      {
         int i2 = (curChar & 0xff) >> 6;
         long l2 = 1L << (curChar & 077);
         do
         {
            switch(jjstateSet[--i])
            {
               case 0:
                  if ((jjbitVec0[i2] & l2) != 0L && kind > 93)
                     kind = 93;
                  break;
               default : break;
            }
         } while(i != startsAt);
      }
      if (kind != 0x7fffffff)
      {
         jjmatchedKind = kind;
         jjmatchedPos = curPos;
         kind = 0x7fffffff;
      }
      ++curPos;
      if ((i = jjnewStateCnt) == (startsAt = 3 - (jjnewStateCnt = startsAt)))
         return curPos;
      try { curChar = input_stream.readChar(); }
      catch(java.io.IOException e) { return curPos; }
   }
}
static final int[] jjnextStates = {
   951, 952, 953, 946, 955, 956, 958, 959, 960, 23, 24, 26, 907, 911, 912, 918, 
   921, 922, 923, 930, 34, 941, 943, 810, 811, 819, 824, 829, 834, 842, 848, 852, 
   858, 866, 875, 883, 887, 891, 893, 900, 794, 800, 802, 804, 807, 774, 778, 783, 
   788, 791, 749, 753, 758, 762, 765, 768, 770, 667, 674, 676, 678, 685, 696, 709, 
   320, 715, 724, 731, 740, 743, 745, 587, 591, 595, 600, 605, 615, 616, 618, 624, 
   626, 629, 630, 635, 641, 647, 654, 663, 547, 549, 557, 563, 569, 573, 579, 581, 
   488, 493, 499, 506, 511, 517, 522, 525, 533, 540, 544, 468, 448, 470, 472, 476, 
   480, 486, 436, 442, 445, 447, 320, 452, 457, 421, 425, 429, 432, 404, 406, 411, 
   414, 417, 332, 339, 346, 353, 356, 365, 369, 370, 375, 382, 388, 390, 397, 315, 
   319, 320, 322, 325, 295, 298, 301, 304, 305, 310, 313, 249, 250, 257, 261, 265, 
   272, 274, 279, 286, 291, 52, 59, 61, 63, 69, 71, 78, 87, 101, 105, 108, 
   114, 119, 126, 130, 134, 139, 147, 155, 165, 171, 176, 187, 191, 196, 206, 216, 
   232, 242, 246, 33, 35, 44, 46, 947, 948, 
};

/** Token literal values. */
public static final String[] jjstrLiteralImages = {
"", null, null, "\50", "\51", "\56", "\54", "\73", "\174\174", "\53", "\55", 
"\52", "\57", "\75", null, "\74", "\74\75", "\76", "\76\75", null, null, null, null, 
null, null, null, null, null, null, null, null, null, null, null, null, null, null, 
null, null, null, null, null, null, null, null, null, null, null, null, null, null, 
null, null, null, null, null, null, null, null, null, null, null, null, null, null, 
null, null, null, null, null, null, null, null, null, null, null, null, null, null, 
null, null, null, null, null, null, null, null, null, null, null, null, null, null, 
null, null, null, null, null, null, null, null, null, null, null, };
protected Token jjFillToken()
{
   final Token t;
   final String curTokenImage;
   final int beginLine;
   final int endLine;
   final int beginColumn;
   final int endColumn;
   String im = jjstrLiteralImages[jjmatchedKind];
   curTokenImage = (im == null) ? input_stream.GetImage() : im;
   beginLine = input_stream.getBeginLine();
   beginColumn = input_stream.getBeginColumn();
   endLine = input_stream.getEndLine();
   endColumn = input_stream.getEndColumn();
   t = Token.newToken(jjmatchedKind, curTokenImage);

   t.beginLine = beginLine;
   t.endLine = endLine;
   t.beginColumn = beginColumn;
   t.endColumn = endColumn;

   return t;
}

int curLexState = 0;
int defaultLexState = 0;
int jjnewStateCnt;
int jjround;
int jjmatchedPos;
int jjmatchedKind;

/** Get the next Token. */
public Token getNextToken() 
{
  Token matchedToken;
  int curPos = 0;

  EOFLoop :
  for (;;)
  {
   try
   {
      curChar = input_stream.BeginToken();
   }
   catch(java.io.IOException e)
   {
      jjmatchedKind = 0;
      jjmatchedPos = -1;
      matchedToken = jjFillToken();
      CommonTokenAction(matchedToken);
      return matchedToken;
   }
   image = jjimage;
   image.setLength(0);
   jjimageLen = 0;

   for (;;)
   {
     switch(curLexState)
     {
       case 0:
         jjmatchedKind = 0x7fffffff;
         jjmatchedPos = 0;
         curPos = jjMoveStringLiteralDfa0_0();
         break;
       case 1:
         jjmatchedKind = 0x7fffffff;
         jjmatchedPos = 0;
         curPos = jjMoveStringLiteralDfa0_1();
         break;
       case 2:
         jjmatchedKind = 0x7fffffff;
         jjmatchedPos = 0;
         curPos = jjMoveStringLiteralDfa0_2();
         break;
     }
     if (jjmatchedKind != 0x7fffffff)
     {
        if (jjmatchedPos + 1 < curPos)
           input_stream.backup(curPos - jjmatchedPos - 1);
        if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
        {
           matchedToken = jjFillToken();
           TokenLexicalActions(matchedToken);
       if (jjnewLexState[jjmatchedKind] != -1)
         curLexState = jjnewLexState[jjmatchedKind];
           CommonTokenAction(matchedToken);
           return matchedToken;
        }
        else if ((jjtoSkip[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
        {
         if (jjnewLexState[jjmatchedKind] != -1)
           curLexState = jjnewLexState[jjmatchedKind];
           continue EOFLoop;
        }
        jjimageLen += jjmatchedPos + 1;
      if (jjnewLexState[jjmatchedKind] != -1)
        curLexState = jjnewLexState[jjmatchedKind];
        curPos = 0;
        jjmatchedKind = 0x7fffffff;
        try {
           curChar = input_stream.readChar();
           continue;
        }
        catch (java.io.IOException e1) { }
     }
     int error_line = input_stream.getEndLine();
     int error_column = input_stream.getEndColumn();
     String error_after = null;
     boolean EOFSeen = false;
     try { input_stream.readChar(); input_stream.backup(1); }
     catch (java.io.IOException e1) {
        EOFSeen = true;
        error_after = curPos <= 1 ? "" : input_stream.GetImage();
        if (curChar == '\n' || curChar == '\r') {
           error_line++;
           error_column = 0;
        }
        else
           error_column++;
     }
     if (!EOFSeen) {
        input_stream.backup(1);
        error_after = curPos <= 1 ? "" : input_stream.GetImage();
     }
     throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
   }
  }
}

void TokenLexicalActions(Token matchedToken)
{
   switch(jjmatchedKind)
   {
      case 2 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
          matchedToken.sqlReserved = true;
         break;
      case 19 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                             matchedToken.adqlReserved = true;
         break;
      case 20 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                             matchedToken.adqlReserved = true;
         break;
      case 21 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                             matchedToken.adqlReserved = true;
         break;
      case 22 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 23 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 24 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 25 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 26 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 27 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 28 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 29 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 30 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 31 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 32 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 33 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 34 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 35 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 36 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 37 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 38 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 39 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 40 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                 matchedToken.adqlReserved = true;
         break;
      case 41 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 42 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 43 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = true;
         break;
      case 44 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = true;
         break;
      case 45 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = true;
         break;
      case 46 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = true;
         break;
      case 47 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = true;
         break;
      case 48 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                               matchedToken.adqlReserved = true;
         break;
      case 49 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 50 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 51 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 52 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 53 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 54 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 55 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 56 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 57 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 58 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 59 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 60 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 61 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 62 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 63 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 64 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 65 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 66 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                       matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 67 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 68 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 69 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 70 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 71 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 72 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 73 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 74 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 75 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 76 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 77 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 78 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 79 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 80 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 81 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 82 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                                   matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 83 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 84 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 85 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 86 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 87 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 88 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 89 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      case 90 :
        image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
                             matchedToken.adqlReserved = matchedToken.isFunctionName = true;
         break;
      default :
         break;
   }
}
private void jjCheckNAdd(int state)
{
   if (jjrounds[state] != jjround)
   {
      jjstateSet[jjnewStateCnt++] = state;
      jjrounds[state] = jjround;
   }
}
private void jjAddStates(int start, int end)
{
   do {
      jjstateSet[jjnewStateCnt++] = jjnextStates[start];
   } while (start++ != end);
}
private void jjCheckNAddTwoStates(int state1, int state2)
{
   jjCheckNAdd(state1);
   jjCheckNAdd(state2);
}

private void jjCheckNAddStates(int start, int end)
{
   do {
      jjCheckNAdd(jjnextStates[start]);
   } while (start++ != end);
}

    /** Constructor. */
    public ADQLParser201TokenManager(SimpleCharStream stream){

      if (SimpleCharStream.staticFlag)
            throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");

    input_stream = stream;
  }

  /** Constructor. */
  public ADQLParser201TokenManager (SimpleCharStream stream, int lexState){
    ReInit(stream);
    SwitchTo(lexState);
  }

  /** Reinitialise parser. */
  public void ReInit(SimpleCharStream stream)
  {
    jjmatchedPos = jjnewStateCnt = 0;
    curLexState = defaultLexState;
    input_stream = stream;
    ReInitRounds();
  }

  private void ReInitRounds()
  {
    int i;
    jjround = 0x80000001;
    for (i = 962; i-- > 0;)
      jjrounds[i] = 0x80000000;
  }

  /** Reinitialise parser. */
  public void ReInit(SimpleCharStream stream, int lexState)
  {
    ReInit(stream);
    SwitchTo(lexState);
  }

  /** Switch to specified lex state. */
  public void SwitchTo(int lexState)
  {
    if (lexState >= 3 || lexState < 0)
      throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
    else
      curLexState = lexState;
  }

/** Lexer state names. */
public static final String[] lexStateNames = {
   "DEFAULT",
   "WithinString",
   "WithinDelimitedId",
};

/** Lex State array. */
public static final int[] jjnewLexState = {
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 0, -1, -1, -1, -1, 2, 
   -1, 0, -1, -1, 
};
static final long[] jjtoToken = {
   0xfffffffffffffffdL, 0x63c7ffffffL, 
};
static final long[] jjtoSkip = {
   0x2L, 0x8000000L, 
};
static final long[] jjtoMore = {
   0x0L, 0x1830000000L, 
};
    protected SimpleCharStream  input_stream;

    private final int[] jjrounds = new int[962];
    private final int[] jjstateSet = new int[2 * 962];

    private final StringBuilder jjimage = new StringBuilder();
    private StringBuilder image = jjimage;
    private int jjimageLen;
    private int lengthOfMatch;
    
    protected char curChar;
}
