if (kind > 61) kind = 61;
if (kind > 64) kind = 64;
private final int jjMoveNfa_2(int startState, int curPos){   int[] nextStates;   int startsAt = 0;   jjnewStateCnt = 2;   int i = 1;   jjstateSet[0] = startState;   int j, kind = 0x7fffffff;   for (;;)   {      if (++jjround == 0x7fffffff)         ReInitRounds();      if (curChar < 64)      {         long l = 1L << curChar;         MatchLoop: do         {            switch(jjstateSet[--i])            {               case 0:                  if ((0xfffffffbffffdbffL & l) != 0L)                  {                     if (kind > 61)                        kind = 61;                     jjCheckNAdd(1);                  }                  else if ((0x2400L & l) != 0L)                  {                     if (kind > 60)                        kind = 60;                  }                  break;               case 1:                  if ((0xfffffffbffffdbffL & l) == 0L)                     break;                  kind = 61;                  jjCheckNAdd(1);                  break;               default : break;            }         } while(i != startsAt);      }      else if (curChar < 128)      {         long l = 1L << (curChar & 077);         MatchLoop: do         {            switch(jjstateSet[--i])            {               case 0:               case 1:                  kind = 61;                  jjCheckNAdd(1);                  break;               default : break;            }         } while(i != startsAt);      }      else      {         int hiByte = (int)(curChar >> 8);         int i1 = hiByte >> 6;         long l1 = 1L << (hiByte & 077);         int i2 = (curChar & 0xff) >> 6;         long l2 = 1L << (curChar & 077);         MatchLoop: do         {            switch(jjstateSet[--i])            {               case 0:               case 1:                  if (!jjCanMove_0(hiByte, i1, i2, l1, l2))                     break;                  if (kind > 61)                     kind = 61;                  jjCheckNAdd(1);                  break;               default : break;            }         } while(i != startsAt);      }      if (kind != 0x7fffffff)      {         jjmatchedKind = kind;         jjmatchedPos = curPos;         kind = 0x7fffffff;      }      ++curPos;      if ((i = jjnewStateCnt) == (startsAt = 2 - (jjnewStateCnt = startsAt)))         return curPos;      try { curChar = input_stream.readChar(); }      catch(java.io.IOException e) { return curPos; }   }}