
freemarker.core.FMParserTokenManager Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of freemarker-gae Show documentation
Show all versions of freemarker-gae Show documentation
Google App Engine compliant variation of FreeMarker.
FreeMarker is a "template engine"; a generic tool to generate text output based on templates.
The newest version!
/* FMParserTokenManager.java */
/* Generated By:JavaCC: Do not edit this line. FMParserTokenManager.java */
package freemarker.core;
import freemarker.core.LocalLambdaExpression.LambdaParameterList;
import freemarker.template.*;
import freemarker.template.utility.*;
import java.io.*;
import java.util.*;
import static freemarker.template.Configuration.*;
/** Token Manager. */
@SuppressWarnings ("unused")
public class FMParserTokenManager implements FMParserConstants {
private static final String PLANNED_DIRECTIVE_HINT
= "(If you have seen this directive in use elsewhere, this was a planned directive, "
+ "so maybe you need to upgrade FreeMarker.)";
/**
* The noparseTag is set when we enter a block of text that the parser more or less ignores. These are and
* . This variable tells us what the closing tag should be, and when we hit that, we resume parsing. Note
* that with this scheme, and tags cannot nest recursively, but it is not clear how important
* that is.
*/
String noparseTag;
private FMParser parser;
private int postInterpolationLexState = -1;
/**
* Keeps track of how deeply nested we have the hash literals. This is necessary since we need to be able to
* distinguish the } used to close a hash literal and the one used to close a ${
*/
private int curlyBracketNesting;
private int parenthesisNesting;
private int bracketNesting;
private boolean inFTLHeader;
boolean strictSyntaxMode,
squBracTagSyntax,
autodetectTagSyntax,
tagSyntaxEstablished,
inInvocation;
int interpolationSyntax;
int initialNamingConvention;
int namingConvention;
Token namingConventionEstabilisher;
int incompatibleImprovements;
void setParser(FMParser parser) {
this.parser = parser;
}
// This method checks if we are in a strict mode where all
// FreeMarker directives must start with <#. It also handles
// tag syntax detection. If you update this logic, take a look
// at the UNKNOWN_DIRECTIVE token too.
private void handleTagSyntaxAndSwitch(Token tok, int tokenNamingConvention, int newLexState) {
final String image = tok.image;
// Non-strict syntax (deprecated) only supports legacy naming convention.
// We didn't push this on the tokenizer because it made it slow, so we filter here.
if (!strictSyntaxMode
&& (tokenNamingConvention == Configuration.CAMEL_CASE_NAMING_CONVENTION)
&& !isStrictTag(image)) {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
char firstChar = image.charAt(0);
if (autodetectTagSyntax && !tagSyntaxEstablished) {
squBracTagSyntax = (firstChar == '[');
}
if ((firstChar == '[' && !squBracTagSyntax) || (firstChar == '<' && squBracTagSyntax)) {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
if (!strictSyntaxMode) {
// Legacy feature (or bug?): Tag syntax never gets estabilished in non-strict mode.
// We do establish the naming convention though.
checkNamingConvention(tok, tokenNamingConvention);
SwitchTo(newLexState);
return;
}
// For square bracket tags there's no non-strict token, so we are sure that it's an FTL tag.
// But if it's an angle bracket tag, we have to check if it's just static text or an FTL tag, because the
// tokenizer will emit the same kind of token for both.
if (!squBracTagSyntax && !isStrictTag(image)) {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
// We only get here if this is a strict FTL tag.
tagSyntaxEstablished = true;
if (incompatibleImprovements >= _VersionInts.V_2_3_28
|| interpolationSyntax == SQUARE_BRACKET_INTERPOLATION_SYNTAX) {
// For END_xxx tags, as they can't contain expressions, the whole tag is a single token. So this is the only
// chance to check if we got something inconsistent like `#if]`. (We can't do this at the #CLOSE_TAG1 or
// such, as at that point it's possible that the tag syntax is not yet established.)
char lastChar = image.charAt(image.length() - 1);
// Is it an end tag?
if (lastChar == ']' || lastChar == '>') {
if (!squBracTagSyntax && lastChar != '>' || squBracTagSyntax && lastChar != ']') {
throw new TokenMgrError(
"The tag shouldn't end with \""+ lastChar + "\".",
TokenMgrError.LEXICAL_ERROR,
tok.beginLine, tok.beginColumn,
tok.endLine, tok.endColumn);
}
} // if end-tag
}
checkNamingConvention(tok, tokenNamingConvention);
SwitchTo(newLexState);
}
void checkNamingConvention(Token tok) {
checkNamingConvention(tok, _CoreStringUtils.getIdentifierNamingConvention(tok.image));
}
void checkNamingConvention(Token tok, int tokenNamingConvention) {
if (tokenNamingConvention != Configuration.AUTO_DETECT_NAMING_CONVENTION) {
if (namingConvention == Configuration.AUTO_DETECT_NAMING_CONVENTION) {
namingConvention = tokenNamingConvention;
namingConventionEstabilisher = tok;
} else if (namingConvention != tokenNamingConvention) {
throw newNameConventionMismatchException(tok);
}
}
}
private TokenMgrError newNameConventionMismatchException(Token tok) {
return new TokenMgrError(
"Naming convention mismatch. "
+ "Identifiers that are part of the template language (not the user specified ones) "
+ (initialNamingConvention == Configuration.AUTO_DETECT_NAMING_CONVENTION
? "must consistently use the same naming convention within the same template. This template uses "
: "must use the configured naming convention, which is the ")
+ (namingConvention == Configuration.CAMEL_CASE_NAMING_CONVENTION
? "camel case naming convention (like: exampleName) "
: (namingConvention == Configuration.LEGACY_NAMING_CONVENTION
? "legacy naming convention (directive (tag) names are like examplename, "
+ "everything else is like example_name) "
: "??? (internal error)"
))
+ (namingConventionEstabilisher != null
? "estabilished by auto-detection at "
+ _MessageUtil.formatPosition(
namingConventionEstabilisher.beginLine, namingConventionEstabilisher.beginColumn)
+ " by token " + StringUtil.jQuote(namingConventionEstabilisher.image.trim())
: "")
+ ", but the problematic token, " + StringUtil.jQuote(tok.image.trim())
+ ", uses a different convention.",
TokenMgrError.LEXICAL_ERROR,
tok.beginLine, tok.beginColumn, tok.endLine, tok.endColumn);
}
/**
* Used for tags whose name isn't affected by naming convention.
*/
private void handleTagSyntaxAndSwitch(Token tok, int newLexState) {
handleTagSyntaxAndSwitch(tok, Configuration.AUTO_DETECT_NAMING_CONVENTION, newLexState);
}
private boolean isStrictTag(String image) {
return image.length() > 2 && (image.charAt(1) == '#' || image.charAt(2) == '#');
}
/**
* Detects the naming convention used, both in start- and end-tag tokens.
*
* @param charIdxInName
* The index of the deciding character relatively to the first letter of the name.
*/
private static int getTagNamingConvention(Token tok, int charIdxInName) {
return _CoreStringUtils.isUpperUSASCII(getTagNameCharAt(tok, charIdxInName))
? Configuration.CAMEL_CASE_NAMING_CONVENTION : Configuration.LEGACY_NAMING_CONVENTION;
}
static char getTagNameCharAt(Token tok, int charIdxInName) {
final String image = tok.image;
// Skip tag delimiter:
int idx = 0;
for (;;) {
final char c = image.charAt(idx);
if (c != '<' && c != '[' && c != '/' && c != '#') {
break;
}
idx++;
}
return image.charAt(idx + charIdxInName);
}
private void unifiedCall(Token tok) {
char firstChar = tok.image.charAt(0);
if (autodetectTagSyntax && !tagSyntaxEstablished) {
squBracTagSyntax = (firstChar == '[');
}
if (squBracTagSyntax && firstChar == '<') {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
if (!squBracTagSyntax && firstChar == '[') {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
tagSyntaxEstablished = true;
SwitchTo(NO_SPACE_EXPRESSION);
}
private void unifiedCallEnd(Token tok) {
char firstChar = tok.image.charAt(0);
if (squBracTagSyntax && firstChar == '<') {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
if (!squBracTagSyntax && firstChar == '[') {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
}
private void startInterpolation(Token tok) {
if (
interpolationSyntax == LEGACY_INTERPOLATION_SYNTAX
&& tok.kind == SQUARE_BRACKET_INTERPOLATION_OPENING
|| interpolationSyntax == DOLLAR_INTERPOLATION_SYNTAX
&& tok.kind != DOLLAR_INTERPOLATION_OPENING
|| interpolationSyntax == SQUARE_BRACKET_INTERPOLATION_SYNTAX
&& tok.kind != SQUARE_BRACKET_INTERPOLATION_OPENING) {
tok.kind = STATIC_TEXT_NON_WS;
return;
}
if (postInterpolationLexState != -1) {
// This certainly never occurs, as starting an interpolation in expression mode fails earlier.
char c = tok.image.charAt(0);
throw new TokenMgrError(
"You can't start an interpolation (" + tok.image + "..."
+ (interpolationSyntax == SQUARE_BRACKET_INTERPOLATION_SYNTAX ? "]" : "}")
+ ") here as you are inside another interpolation.)",
TokenMgrError.LEXICAL_ERROR,
tok.beginLine, tok.beginColumn,
tok.endLine, tok.endColumn);
}
postInterpolationLexState = curLexState;
SwitchTo(FM_EXPRESSION);
}
private void endInterpolation(Token closingTk) {
SwitchTo(postInterpolationLexState);
postInterpolationLexState = -1;
}
private TokenMgrError newUnexpectedClosingTokenException(Token closingTk) {
return new TokenMgrError(
"You can't have an \"" + closingTk.image + "\" here, as there's nothing open that it could close.",
TokenMgrError.LEXICAL_ERROR,
closingTk.beginLine, closingTk.beginColumn,
closingTk.endLine, closingTk.endColumn);
}
private void eatNewline() {
int charsRead = 0;
try {
while (true) {
char c = input_stream.readChar();
++charsRead;
if (!Character.isWhitespace(c)) {
input_stream.backup(charsRead);
return;
} else if (c == '\r') {
char next = input_stream.readChar();
++charsRead;
if (next != '\n') {
input_stream.backup(1);
}
return;
} else if (c == '\n') {
return;
}
}
} catch (IOException ioe) {
input_stream.backup(charsRead);
}
}
private void ftlHeader(Token matchedToken) {
if (!tagSyntaxEstablished) {
squBracTagSyntax = matchedToken.image.charAt(0) == '[';
tagSyntaxEstablished = true;
autodetectTagSyntax = false;
}
String img = matchedToken.image;
char firstChar = img.charAt(0);
char lastChar = img.charAt(img.length() - 1);
if ((firstChar == '[' && !squBracTagSyntax) || (firstChar == '<' && squBracTagSyntax)) {
matchedToken.kind = STATIC_TEXT_NON_WS;
}
if (matchedToken.kind != STATIC_TEXT_NON_WS) {
if (lastChar != '>' && lastChar != ']') {
SwitchTo(FM_EXPRESSION);
inFTLHeader = true;
} else {
eatNewline();
}
}
}
/** Debug output. */
public java.io.PrintStream debugStream = System.out;
/** Set debug output. */
public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
private int jjMoveStringLiteralDfa0_7()
{
return jjMoveNfa_7(0, 0);
}
static final long[] jjbitVec0 = {
0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
};
static final long[] jjbitVec2 = {
0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
};
private int jjMoveNfa_7(int startState, int curPos)
{
int startsAt = 0;
jjnewStateCnt = 13;
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 ((0xefffdfffffffffffL & l) != 0L)
{
if (kind > 157)
kind = 157;
{ jjCheckNAdd(6); }
}
else if ((0x1000200000000000L & l) != 0L)
{
if (kind > 158)
kind = 158;
}
if (curChar == 45)
{ jjAddStates(0, 1); }
else if (curChar == 60)
jjstateSet[jjnewStateCnt++] = 1;
break;
case 1:
if (curChar == 47)
{ jjCheckNAddTwoStates(2, 3); }
break;
case 2:
if (curChar == 35)
{ jjCheckNAdd(3); }
break;
case 4:
if ((0x100002600L & l) != 0L)
{ jjAddStates(2, 3); }
break;
case 5:
if (curChar == 62 && kind > 156)
kind = 156;
break;
case 6:
if ((0xefffdfffffffffffL & l) == 0L)
break;
if (kind > 157)
kind = 157;
{ jjCheckNAdd(6); }
break;
case 7:
if ((0x1000200000000000L & l) != 0L && kind > 158)
kind = 158;
break;
case 8:
if (curChar == 45)
{ jjAddStates(0, 1); }
break;
case 9:
if (curChar == 62 && kind > 155)
kind = 155;
break;
case 10:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 9;
break;
case 12:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 11;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 0:
if ((0xfffffffff7ffffffL & l) != 0L)
{
if (kind > 157)
kind = 157;
{ jjCheckNAdd(6); }
}
else if (curChar == 91)
{
if (kind > 158)
kind = 158;
}
if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 1;
break;
case 3:
if ((0x7fffffe07fffffeL & l) != 0L)
{ jjAddStates(4, 6); }
break;
case 5:
if (curChar == 93 && kind > 156)
kind = 156;
break;
case 6:
if ((0xfffffffff7ffffffL & l) == 0L)
break;
if (kind > 157)
kind = 157;
{ jjCheckNAdd(6); }
break;
case 7:
if (curChar == 91 && kind > 158)
kind = 158;
break;
case 11:
if (curChar == 93 && kind > 155)
kind = 155;
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 0:
case 6:
if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
break;
if (kind > 157)
kind = 157;
{ jjCheckNAdd(6); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 13 - (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 ((active1 & 0x200000L) != 0L)
{
jjmatchedKind = 82;
return 701;
}
if ((active1 & 0x180000L) != 0L)
{
jjmatchedKind = 82;
return -1;
}
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 jjStopAtPos(int pos, int kind)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
return pos + 1;
}
private int jjMoveStringLiteralDfa0_0(){
switch(curChar)
{
case 35:
return jjMoveStringLiteralDfa1_0(0x100000L);
case 36:
return jjMoveStringLiteralDfa1_0(0x80000L);
case 91:
return jjMoveStringLiteralDfa1_0(0x200000L);
default :
return jjMoveNfa_0(2, 0);
}
}
private int jjMoveStringLiteralDfa1_0(long active1){
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(0, 0L, active1);
return 1;
}
switch(curChar)
{
case 61:
if ((active1 & 0x200000L) != 0L)
return jjStopAtPos(1, 85);
break;
case 123:
if ((active1 & 0x80000L) != 0L)
return jjStopAtPos(1, 83);
else if ((active1 & 0x100000L) != 0L)
return jjStopAtPos(1, 84);
break;
default :
break;
}
return jjStartNfa_0(0, 0L, active1);
}
static final long[] jjbitVec3 = {
0xfff00000fffffffeL, 0xffffffffffffdfffL, 0xfffff02fffffffffL, 0x16000000007fffffL
};
static final long[] jjbitVec4 = {
0x0L, 0x0L, 0x420040000000000L, 0xff7fffffff7fffffL
};
static final long[] jjbitVec5 = {
0x0L, 0x8002000000000000L, 0x1fff0000L, 0x0L
};
static final long[] jjbitVec6 = {
0xf3ffbd503e2ffc84L, 0x43e0L, 0x18L, 0x0L
};
static final long[] jjbitVec7 = {
0xffff7fffffffffffL, 0xffffffff7fffffffL, 0xffffffffffffffffL, 0xc781fffffffffL
};
static final long[] jjbitVec8 = {
0xffff20bfffffffffL, 0x80ffffffffffL, 0x7f7f7f7f007fffffL, 0x7f7f7f7fL
};
static final long[] jjbitVec9 = {
0x800000000000L, 0x0L, 0x0L, 0x0L
};
static final long[] jjbitVec10 = {
0x183e000000000060L, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
};
static final long[] jjbitVec11 = {
0xffffffffffffffffL, 0xffffffffffffffffL, 0x7ffffff0000ffffL, 0xffff000000000000L
};
static final long[] jjbitVec12 = {
0xffffffffffffffffL, 0xffffffffffffffffL, 0x0L, 0x0L
};
static final long[] jjbitVec13 = {
0xffffffffffffffffL, 0xffffffffffffffffL, 0x3fffffffffffffL, 0x0L
};
static final long[] jjbitVec14 = {
0xffffffffffffffffL, 0xffffffffffffffffL, 0x1fffL, 0x3fffffffffff0000L
};
static final long[] jjbitVec15 = {
0xfffffff1fffL, 0x80007fffffffffffL, 0xffffffff00ffffffL, 0x3fffffffffL
};
static final long[] jjbitVec16 = {
0xfffffffcff800000L, 0xffffffffffffffffL, 0x7ff000f79ffL, 0xff00000000000000L
};
static final long[] jjbitVec17 = {
0x7fffff7bbL, 0xfffffffffffffL, 0xffffffffffffcL, 0x8fc000003ff0000L
};
static final long[] jjbitVec18 = {
0xffff003fffffffffL, 0x1fffffff0000007fL, 0x7fffffffffff0L, 0x3ff8000L
};
static final long[] jjbitVec19 = {
0x1ffffffffffL, 0x47fffff03ff0ff7L, 0x3e62ffffffffffffL, 0x1c07ff38000005L
};
static final long[] jjbitVec20 = {
0x7f7f007e7e7eL, 0x0L, 0x0L, 0x3ff0007ffffffffL
};
static final long[] jjbitVec21 = {
0xffffffffffffffffL, 0xffffffffffffffffL, 0xffff000fffffffffL, 0xffffffffffff87fL
};
static final long[] jjbitVec22 = {
0x5f7ffdffa0f8007fL, 0xffffffffffffffdbL, 0x3ffffffffffffL, 0xfffffffffff80000L
};
static final long[] jjbitVec23 = {
0x3fffffffffffffffL, 0xffffffffffff0000L, 0xfffffffffffcffffL, 0xfff0000000000ffL
};
static final long[] jjbitVec24 = {
0x0L, 0xffdf000000000000L, 0xffffffffffffffffL, 0x1fffffffffffffffL
};
static final long[] jjbitVec25 = {
0x7fffffe03ff0000L, 0xffffffc007fffffeL, 0x7fffffffffffffffL, 0x1cfcfcfcL
};
private int jjMoveNfa_0(int startState, int curPos)
{
int startsAt = 0;
jjnewStateCnt = 717;
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 701:
if (curChar == 47)
{ jjCheckNAdd(667); }
else if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 668;
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 695;
else if (curChar == 47)
jjstateSet[jjnewStateCnt++] = 702;
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 692;
else if (curChar == 47)
{ jjCheckNAdd(653); }
if (curChar == 35)
{ jjCheckNAdd(370); }
else if (curChar == 47)
{ jjCheckNAdd(639); }
if (curChar == 35)
{ jjCheckNAdd(360); }
else if (curChar == 47)
{ jjCheckNAdd(611); }
if (curChar == 35)
{ jjCheckNAdd(353); }
else if (curChar == 47)
{ jjCheckNAdd(600); }
if (curChar == 35)
{ jjCheckNAdd(342); }
else if (curChar == 47)
{ jjCheckNAdd(586); }
if (curChar == 35)
{ jjCheckNAdd(334); }
else if (curChar == 47)
{ jjCheckNAdd(573); }
if (curChar == 35)
{ jjCheckNAdd(324); }
else if (curChar == 47)
{ jjCheckNAdd(554); }
if (curChar == 35)
{ jjCheckNAdd(317); }
else if (curChar == 47)
{ jjCheckNAdd(542); }
if (curChar == 35)
{ jjCheckNAdd(308); }
else if (curChar == 47)
{ jjCheckNAdd(525); }
if (curChar == 35)
{ jjCheckNAdd(299); }
else if (curChar == 47)
{ jjCheckNAdd(515); }
if (curChar == 35)
{ jjCheckNAdd(294); }
else if (curChar == 47)
{ jjCheckNAdd(502); }
if (curChar == 35)
{ jjCheckNAdd(289); }
else if (curChar == 47)
{ jjCheckNAdd(491); }
if (curChar == 35)
{ jjCheckNAdd(281); }
else if (curChar == 47)
{ jjCheckNAdd(480); }
if (curChar == 35)
{ jjCheckNAdd(280); }
else if (curChar == 47)
{ jjCheckNAdd(470); }
if (curChar == 35)
{ jjCheckNAdd(272); }
else if (curChar == 47)
{ jjCheckNAdd(458); }
if (curChar == 35)
{ jjCheckNAdd(265); }
else if (curChar == 47)
{ jjCheckNAdd(446); }
if (curChar == 35)
{ jjCheckNAdd(256); }
else if (curChar == 47)
{ jjCheckNAdd(434); }
if (curChar == 35)
{ jjCheckNAdd(245); }
else if (curChar == 47)
{ jjCheckNAdd(426); }
if (curChar == 35)
{ jjCheckNAdd(237); }
else if (curChar == 47)
{ jjCheckNAdd(416); }
if (curChar == 47)
{ jjCheckNAdd(407); }
else if (curChar == 35)
{ jjCheckNAdd(230); }
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 700;
if (curChar == 35)
{ jjCheckNAdd(221); }
if (curChar == 35)
{ jjCheckNAdd(212); }
if (curChar == 35)
{ jjCheckNAdd(202); }
if (curChar == 35)
{ jjCheckNAdd(186); }
if (curChar == 35)
{ jjCheckNAdd(177); }
if (curChar == 35)
{ jjCheckNAdd(164); }
if (curChar == 35)
{ jjCheckNAdd(156); }
if (curChar == 35)
{ jjCheckNAdd(151); }
if (curChar == 35)
{ jjCheckNAdd(144); }
if (curChar == 35)
{ jjCheckNAdd(139); }
if (curChar == 35)
{ jjCheckNAdd(133); }
if (curChar == 35)
{ jjCheckNAdd(123); }
if (curChar == 35)
{ jjCheckNAdd(117); }
if (curChar == 35)
{ jjCheckNAdd(108); }
if (curChar == 35)
{ jjCheckNAdd(101); }
if (curChar == 35)
{ jjCheckNAdd(93); }
if (curChar == 35)
{ jjCheckNAdd(87); }
if (curChar == 35)
{ jjCheckNAdd(80); }
if (curChar == 35)
{ jjCheckNAdd(73); }
if (curChar == 35)
{ jjCheckNAdd(70); }
if (curChar == 35)
{ jjCheckNAdd(65); }
if (curChar == 35)
{ jjCheckNAdd(58); }
if (curChar == 35)
{ jjCheckNAdd(50); }
if (curChar == 35)
{ jjCheckNAdd(45); }
if (curChar == 35)
{ jjCheckNAdd(36); }
if (curChar == 35)
{ jjCheckNAdd(31); }
if (curChar == 35)
{ jjCheckNAdd(24); }
if (curChar == 35)
{ jjCheckNAdd(21); }
if (curChar == 35)
{ jjCheckNAdd(12); }
break;
case 2:
if ((0xefffffe6ffffd9ffL & l) != 0L)
{
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
}
else if ((0x100002600L & l) != 0L)
{
if (kind > 80)
kind = 80;
{ jjCheckNAdd(0); }
}
else if ((0x1000001800000000L & l) != 0L)
{
if (kind > 82)
kind = 82;
}
if (curChar == 60)
{ jjAddStates(7, 8); }
if (curChar == 60)
{ jjCheckNAddStates(9, 101); }
if (curChar == 60)
{ jjCheckNAddStates(102, 149); }
break;
case 0:
if ((0x100002600L & l) == 0L)
break;
if (kind > 80)
kind = 80;
{ jjCheckNAdd(0); }
break;
case 1:
if ((0xefffffe6ffffd9ffL & l) == 0L)
break;
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
break;
case 3:
if (curChar == 60)
{ jjCheckNAddStates(102, 149); }
break;
case 5:
if ((0x100002600L & l) != 0L)
{ jjAddStates(150, 151); }
break;
case 6:
if (curChar == 62 && kind > 6)
kind = 6;
break;
case 14:
if ((0x100002600L & l) != 0L)
{ jjAddStates(152, 153); }
break;
case 15:
if (curChar == 62 && kind > 7)
kind = 7;
break;
case 23:
if ((0x100002600L & l) != 0L && kind > 8)
kind = 8;
break;
case 28:
if ((0x100002600L & l) != 0L && kind > 9)
kind = 9;
break;
case 33:
if ((0x100002600L & l) != 0L && kind > 10)
kind = 10;
break;
case 38:
if ((0x100002600L & l) != 0L)
{ jjAddStates(154, 155); }
break;
case 40:
if ((0x100002600L & l) != 0L && kind > 11)
kind = 11;
break;
case 47:
if ((0x100002600L & l) != 0L)
{ jjAddStates(156, 157); }
break;
case 48:
if (curChar == 62 && kind > 12)
kind = 12;
break;
case 54:
if ((0x100002600L & l) != 0L && kind > 13)
kind = 13;
break;
case 60:
if ((0x100002600L & l) != 0L && kind > 14)
kind = 14;
break;
case 67:
if ((0x100002600L & l) != 0L && kind > 15)
kind = 15;
break;
case 72:
if ((0x100002600L & l) != 0L && kind > 16)
kind = 16;
break;
case 75:
if ((0x100002600L & l) != 0L && kind > 17)
kind = 17;
break;
case 82:
if ((0x100002600L & l) != 0L && kind > 18)
kind = 18;
break;
case 89:
if ((0x100002600L & l) != 0L && kind > 19)
kind = 19;
break;
case 95:
if ((0x100002600L & l) != 0L && kind > 20)
kind = 20;
break;
case 103:
if ((0x100002600L & l) != 0L && kind > 21)
kind = 21;
break;
case 110:
if ((0x100002600L & l) != 0L && kind > 22)
kind = 22;
break;
case 119:
if ((0x100002600L & l) != 0L && kind > 23)
kind = 23;
break;
case 125:
if ((0x100002600L & l) != 0L && kind > 24)
kind = 24;
break;
case 135:
if ((0x100002600L & l) != 0L && kind > 25)
kind = 25;
break;
case 141:
if ((0x100002600L & l) != 0L && kind > 26)
kind = 26;
break;
case 146:
if ((0x100002600L & l) != 0L && kind > 27)
kind = 27;
break;
case 153:
if ((0x100002600L & l) != 0L && kind > 28)
kind = 28;
break;
case 158:
if ((0x100002600L & l) != 0L && kind > 29)
kind = 29;
break;
case 168:
if ((0x100002600L & l) != 0L && kind > 30)
kind = 30;
break;
case 181:
if ((0x100002600L & l) != 0L)
{ jjAddStates(158, 159); }
break;
case 182:
if (curChar == 62 && kind > 31)
kind = 31;
break;
case 190:
if ((0x100002600L & l) != 0L)
{ jjAddStates(160, 161); }
break;
case 191:
if (curChar == 62 && kind > 32)
kind = 32;
break;
case 204:
if ((0x100002600L & l) != 0L)
{ jjAddStates(162, 163); }
break;
case 205:
if (curChar == 62 && kind > 33)
kind = 33;
break;
case 214:
if ((0x100002600L & l) != 0L)
{ jjAddStates(164, 165); }
break;
case 215:
if (curChar == 62 && kind > 34)
kind = 34;
break;
case 225:
if ((0x100002600L & l) != 0L)
{ jjAddStates(166, 167); }
break;
case 226:
if (curChar == 62 && kind > 36)
kind = 36;
break;
case 232:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(168, 170); }
break;
case 233:
if (curChar == 47)
{ jjCheckNAdd(234); }
break;
case 234:
if (curChar == 62 && kind > 55)
kind = 55;
break;
case 239:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(171, 173); }
break;
case 240:
if (curChar == 47)
{ jjCheckNAdd(241); }
break;
case 241:
if (curChar == 62 && kind > 56)
kind = 56;
break;
case 247:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(174, 176); }
break;
case 248:
if (curChar == 47)
{ jjCheckNAdd(249); }
break;
case 249:
if (curChar == 62 && kind > 57)
kind = 57;
break;
case 258:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(177, 179); }
break;
case 259:
if (curChar == 47)
{ jjCheckNAdd(260); }
break;
case 260:
if (curChar == 62 && kind > 58)
kind = 58;
break;
case 267:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(180, 182); }
break;
case 268:
if (curChar == 47)
{ jjCheckNAdd(269); }
break;
case 269:
if (curChar == 62 && kind > 59)
kind = 59;
break;
case 274:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(183, 185); }
break;
case 275:
if (curChar == 47)
{ jjCheckNAdd(276); }
break;
case 276:
if (curChar == 62 && kind > 60)
kind = 60;
break;
case 282:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(186, 188); }
break;
case 283:
if (curChar == 47)
{ jjCheckNAdd(284); }
break;
case 284:
if (curChar == 62 && kind > 61)
kind = 61;
break;
case 286:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(189, 191); }
break;
case 287:
if (curChar == 47)
{ jjCheckNAdd(288); }
break;
case 288:
if (curChar == 62 && kind > 62)
kind = 62;
break;
case 291:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(192, 194); }
break;
case 292:
if (curChar == 47)
{ jjCheckNAdd(293); }
break;
case 293:
if (curChar == 62 && kind > 63)
kind = 63;
break;
case 296:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(195, 197); }
break;
case 297:
if (curChar == 47)
{ jjCheckNAdd(298); }
break;
case 298:
if (curChar == 62 && kind > 64)
kind = 64;
break;
case 301:
if ((0x100002600L & l) != 0L)
{ jjAddStates(198, 199); }
break;
case 302:
if (curChar == 62 && kind > 65)
kind = 65;
break;
case 310:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(200, 202); }
break;
case 311:
if (curChar == 47)
{ jjCheckNAdd(312); }
break;
case 312:
if (curChar == 62 && kind > 66)
kind = 66;
break;
case 319:
if ((0x100002600L & l) != 0L && kind > 67)
kind = 67;
break;
case 326:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(203, 205); }
break;
case 327:
if (curChar == 47)
{ jjCheckNAdd(328); }
break;
case 328:
if (curChar == 62 && kind > 68)
kind = 68;
break;
case 336:
if ((0x100002600L & l) != 0L && kind > 69)
kind = 69;
break;
case 344:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddStates(206, 208); }
break;
case 345:
if (curChar == 47)
{ jjCheckNAdd(346); }
break;
case 346:
if (curChar == 62 && kind > 70)
kind = 70;
break;
case 355:
if ((0x100002600L & l) != 0L && kind > 71)
kind = 71;
break;
case 364:
if ((0x100002600L & l) != 0L)
{ jjAddStates(209, 210); }
break;
case 365:
if (curChar == 62 && kind > 73)
kind = 73;
break;
case 371:
if (curChar == 60)
{ jjCheckNAddStates(9, 101); }
break;
case 372:
if (curChar == 35)
{ jjCheckNAdd(12); }
break;
case 373:
if (curChar == 35)
{ jjCheckNAdd(21); }
break;
case 374:
if (curChar == 35)
{ jjCheckNAdd(24); }
break;
case 375:
if (curChar == 35)
{ jjCheckNAdd(31); }
break;
case 376:
if (curChar == 35)
{ jjCheckNAdd(36); }
break;
case 377:
if (curChar == 35)
{ jjCheckNAdd(45); }
break;
case 378:
if (curChar == 35)
{ jjCheckNAdd(50); }
break;
case 379:
if (curChar == 35)
{ jjCheckNAdd(58); }
break;
case 380:
if (curChar == 35)
{ jjCheckNAdd(65); }
break;
case 381:
if (curChar == 35)
{ jjCheckNAdd(70); }
break;
case 382:
if (curChar == 35)
{ jjCheckNAdd(73); }
break;
case 383:
if (curChar == 35)
{ jjCheckNAdd(80); }
break;
case 384:
if (curChar == 35)
{ jjCheckNAdd(87); }
break;
case 385:
if (curChar == 35)
{ jjCheckNAdd(93); }
break;
case 386:
if (curChar == 35)
{ jjCheckNAdd(101); }
break;
case 387:
if (curChar == 35)
{ jjCheckNAdd(108); }
break;
case 388:
if (curChar == 35)
{ jjCheckNAdd(117); }
break;
case 389:
if (curChar == 35)
{ jjCheckNAdd(123); }
break;
case 390:
if (curChar == 35)
{ jjCheckNAdd(133); }
break;
case 391:
if (curChar == 35)
{ jjCheckNAdd(139); }
break;
case 392:
if (curChar == 35)
{ jjCheckNAdd(144); }
break;
case 393:
if (curChar == 35)
{ jjCheckNAdd(151); }
break;
case 394:
if (curChar == 35)
{ jjCheckNAdd(156); }
break;
case 395:
if (curChar == 35)
{ jjCheckNAdd(164); }
break;
case 396:
if (curChar == 35)
{ jjCheckNAdd(177); }
break;
case 397:
if (curChar == 35)
{ jjCheckNAdd(186); }
break;
case 398:
if (curChar == 35)
{ jjCheckNAdd(202); }
break;
case 399:
if (curChar == 35)
{ jjCheckNAdd(212); }
break;
case 400:
if (curChar == 35)
{ jjCheckNAdd(221); }
break;
case 401:
if (curChar == 35)
{ jjCheckNAdd(230); }
break;
case 402:
if (curChar == 47)
{ jjCheckNAdd(406); }
break;
case 404:
if ((0x100002600L & l) != 0L)
{ jjAddStates(211, 212); }
break;
case 405:
if (curChar == 62 && kind > 37)
kind = 37;
break;
case 407:
if (curChar == 35)
{ jjCheckNAdd(406); }
break;
case 408:
if (curChar == 47)
{ jjCheckNAdd(407); }
break;
case 409:
if (curChar == 47)
{ jjCheckNAdd(415); }
break;
case 411:
if ((0x100002600L & l) != 0L)
{ jjAddStates(213, 214); }
break;
case 412:
if (curChar == 62 && kind > 38)
kind = 38;
break;
case 416:
if (curChar == 35)
{ jjCheckNAdd(415); }
break;
case 417:
if (curChar == 47)
{ jjCheckNAdd(416); }
break;
case 418:
if (curChar == 47)
{ jjCheckNAdd(425); }
break;
case 420:
if ((0x100002600L & l) != 0L)
{ jjAddStates(215, 216); }
break;
case 421:
if (curChar == 62 && kind > 39)
kind = 39;
break;
case 426:
if (curChar == 35)
{ jjCheckNAdd(425); }
break;
case 427:
if (curChar == 47)
{ jjCheckNAdd(426); }
break;
case 428:
if (curChar == 47)
{ jjCheckNAdd(433); }
break;
case 430:
if ((0x100002600L & l) != 0L)
{ jjAddStates(217, 218); }
break;
case 431:
if (curChar == 62 && kind > 40)
kind = 40;
break;
case 434:
if (curChar == 35)
{ jjCheckNAdd(433); }
break;
case 435:
if (curChar == 47)
{ jjCheckNAdd(434); }
break;
case 436:
if (curChar == 47)
{ jjCheckNAdd(445); }
break;
case 438:
if ((0x100002600L & l) != 0L)
{ jjAddStates(219, 220); }
break;
case 439:
if (curChar == 62 && kind > 41)
kind = 41;
break;
case 446:
if (curChar == 35)
{ jjCheckNAdd(445); }
break;
case 447:
if (curChar == 47)
{ jjCheckNAdd(446); }
break;
case 448:
if (curChar == 47)
{ jjCheckNAdd(457); }
break;
case 450:
if ((0x100002600L & l) != 0L)
{ jjAddStates(221, 222); }
break;
case 451:
if (curChar == 62 && kind > 42)
kind = 42;
break;
case 458:
if (curChar == 35)
{ jjCheckNAdd(457); }
break;
case 459:
if (curChar == 47)
{ jjCheckNAdd(458); }
break;
case 460:
if (curChar == 47)
{ jjCheckNAdd(469); }
break;
case 464:
if ((0x100002600L & l) != 0L)
{ jjAddStates(223, 224); }
break;
case 465:
if (curChar == 62 && kind > 43)
kind = 43;
break;
case 470:
if (curChar == 35)
{ jjCheckNAdd(469); }
break;
case 471:
if (curChar == 47)
{ jjCheckNAdd(470); }
break;
case 472:
if (curChar == 47)
{ jjCheckNAdd(479); }
break;
case 474:
if ((0x100002600L & l) != 0L)
{ jjAddStates(225, 226); }
break;
case 475:
if (curChar == 62 && kind > 44)
kind = 44;
break;
case 480:
if (curChar == 35)
{ jjCheckNAdd(479); }
break;
case 481:
if (curChar == 47)
{ jjCheckNAdd(480); }
break;
case 482:
if (curChar == 47)
{ jjCheckNAdd(490); }
break;
case 484:
if ((0x100002600L & l) != 0L)
{ jjAddStates(227, 228); }
break;
case 485:
if (curChar == 62 && kind > 45)
kind = 45;
break;
case 491:
if (curChar == 35)
{ jjCheckNAdd(490); }
break;
case 492:
if (curChar == 47)
{ jjCheckNAdd(491); }
break;
case 493:
if (curChar == 47)
{ jjCheckNAdd(501); }
break;
case 495:
if ((0x100002600L & l) != 0L)
{ jjAddStates(229, 230); }
break;
case 496:
if (curChar == 62 && kind > 46)
kind = 46;
break;
case 502:
if (curChar == 35)
{ jjCheckNAdd(501); }
break;
case 503:
if (curChar == 47)
{ jjCheckNAdd(502); }
break;
case 504:
if (curChar == 47)
{ jjCheckNAdd(514); }
break;
case 506:
if ((0x100002600L & l) != 0L)
{ jjAddStates(231, 232); }
break;
case 507:
if (curChar == 62 && kind > 47)
kind = 47;
break;
case 515:
if (curChar == 35)
{ jjCheckNAdd(514); }
break;
case 516:
if (curChar == 47)
{ jjCheckNAdd(515); }
break;
case 517:
if (curChar == 47)
{ jjCheckNAdd(524); }
break;
case 519:
if ((0x100002600L & l) != 0L)
{ jjAddStates(233, 234); }
break;
case 520:
if (curChar == 62 && kind > 48)
kind = 48;
break;
case 525:
if (curChar == 35)
{ jjCheckNAdd(524); }
break;
case 526:
if (curChar == 47)
{ jjCheckNAdd(525); }
break;
case 527:
if (curChar == 47)
{ jjCheckNAdd(541); }
break;
case 531:
if ((0x100002600L & l) != 0L)
{ jjAddStates(235, 236); }
break;
case 532:
if (curChar == 62 && kind > 49)
kind = 49;
break;
case 542:
if (curChar == 35)
{ jjCheckNAdd(541); }
break;
case 543:
if (curChar == 47)
{ jjCheckNAdd(542); }
break;
case 544:
if (curChar == 47)
{ jjCheckNAdd(553); }
break;
case 548:
if ((0x100002600L & l) != 0L)
{ jjAddStates(237, 238); }
break;
case 549:
if (curChar == 62 && kind > 50)
kind = 50;
break;
case 554:
if (curChar == 35)
{ jjCheckNAdd(553); }
break;
case 555:
if (curChar == 47)
{ jjCheckNAdd(554); }
break;
case 556:
if (curChar == 47)
{ jjCheckNAdd(572); }
break;
case 560:
if ((0x100002600L & l) != 0L)
{ jjAddStates(239, 240); }
break;
case 561:
if (curChar == 62 && kind > 51)
kind = 51;
break;
case 573:
if (curChar == 35)
{ jjCheckNAdd(572); }
break;
case 574:
if (curChar == 47)
{ jjCheckNAdd(573); }
break;
case 575:
if (curChar == 47)
{ jjCheckNAdd(585); }
break;
case 577:
if ((0x100002600L & l) != 0L)
{ jjAddStates(241, 242); }
break;
case 578:
if (curChar == 62 && kind > 52)
kind = 52;
break;
case 586:
if (curChar == 35)
{ jjCheckNAdd(585); }
break;
case 587:
if (curChar == 47)
{ jjCheckNAdd(586); }
break;
case 588:
if (curChar == 47)
{ jjCheckNAdd(599); }
break;
case 590:
if ((0x100002600L & l) != 0L)
{ jjAddStates(243, 244); }
break;
case 591:
if (curChar == 62 && kind > 53)
kind = 53;
break;
case 600:
if (curChar == 35)
{ jjCheckNAdd(599); }
break;
case 601:
if (curChar == 47)
{ jjCheckNAdd(600); }
break;
case 602:
if (curChar == 47)
{ jjCheckNAdd(610); }
break;
case 604:
if ((0x100002600L & l) != 0L)
{ jjAddStates(245, 246); }
break;
case 605:
if (curChar == 62 && kind > 54)
kind = 54;
break;
case 611:
if (curChar == 35)
{ jjCheckNAdd(610); }
break;
case 612:
if (curChar == 47)
{ jjCheckNAdd(611); }
break;
case 613:
if (curChar == 35)
{ jjCheckNAdd(237); }
break;
case 614:
if (curChar == 35)
{ jjCheckNAdd(245); }
break;
case 615:
if (curChar == 35)
{ jjCheckNAdd(256); }
break;
case 616:
if (curChar == 35)
{ jjCheckNAdd(265); }
break;
case 617:
if (curChar == 35)
{ jjCheckNAdd(272); }
break;
case 618:
if (curChar == 35)
{ jjCheckNAdd(280); }
break;
case 619:
if (curChar == 35)
{ jjCheckNAdd(281); }
break;
case 620:
if (curChar == 35)
{ jjCheckNAdd(289); }
break;
case 621:
if (curChar == 35)
{ jjCheckNAdd(294); }
break;
case 622:
if (curChar == 35)
{ jjCheckNAdd(299); }
break;
case 623:
if (curChar == 35)
{ jjCheckNAdd(308); }
break;
case 624:
if (curChar == 35)
{ jjCheckNAdd(317); }
break;
case 625:
if (curChar == 35)
{ jjCheckNAdd(324); }
break;
case 626:
if (curChar == 35)
{ jjCheckNAdd(334); }
break;
case 627:
if (curChar == 35)
{ jjCheckNAdd(342); }
break;
case 628:
if (curChar == 35)
{ jjCheckNAdd(353); }
break;
case 629:
if (curChar == 35)
{ jjCheckNAdd(360); }
break;
case 630:
if (curChar == 47)
{ jjCheckNAdd(638); }
break;
case 632:
if ((0x100002600L & l) != 0L)
{ jjAddStates(247, 248); }
break;
case 633:
if (curChar == 62 && kind > 72)
kind = 72;
break;
case 639:
if (curChar == 35)
{ jjCheckNAdd(638); }
break;
case 640:
if (curChar == 47)
{ jjCheckNAdd(639); }
break;
case 641:
if (curChar == 35)
{ jjCheckNAdd(370); }
break;
case 642:
if (curChar == 47)
{ jjCheckNAdd(652); }
break;
case 646:
if ((0x100002600L & l) != 0L)
{ jjAddStates(249, 250); }
break;
case 647:
if (curChar == 62 && kind > 74)
kind = 74;
break;
case 653:
if (curChar == 35)
{ jjCheckNAdd(652); }
break;
case 654:
if (curChar == 47)
{ jjCheckNAdd(653); }
break;
case 657:
if ((0x100002600L & l) != 0L && kind > 77)
kind = 77;
break;
case 660:
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 659;
break;
case 662:
if (curChar == 47)
jjstateSet[jjnewStateCnt++] = 663;
break;
case 663:
if (curChar == 62 && kind > 78)
kind = 78;
break;
case 666:
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 665;
break;
case 667:
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 668;
break;
case 669:
if (curChar == 47)
{ jjCheckNAdd(667); }
break;
case 671:
if (curChar == 47)
{ jjCheckNAdd(407); }
break;
case 672:
if (curChar == 47)
{ jjCheckNAdd(416); }
break;
case 673:
if (curChar == 47)
{ jjCheckNAdd(426); }
break;
case 674:
if (curChar == 47)
{ jjCheckNAdd(434); }
break;
case 675:
if (curChar == 47)
{ jjCheckNAdd(446); }
break;
case 676:
if (curChar == 47)
{ jjCheckNAdd(458); }
break;
case 677:
if (curChar == 47)
{ jjCheckNAdd(470); }
break;
case 678:
if (curChar == 47)
{ jjCheckNAdd(480); }
break;
case 679:
if (curChar == 47)
{ jjCheckNAdd(491); }
break;
case 680:
if (curChar == 47)
{ jjCheckNAdd(502); }
break;
case 681:
if (curChar == 47)
{ jjCheckNAdd(515); }
break;
case 682:
if (curChar == 47)
{ jjCheckNAdd(525); }
break;
case 683:
if (curChar == 47)
{ jjCheckNAdd(542); }
break;
case 684:
if (curChar == 47)
{ jjCheckNAdd(554); }
break;
case 685:
if (curChar == 47)
{ jjCheckNAdd(573); }
break;
case 686:
if (curChar == 47)
{ jjCheckNAdd(586); }
break;
case 687:
if (curChar == 47)
{ jjCheckNAdd(600); }
break;
case 688:
if (curChar == 47)
{ jjCheckNAdd(611); }
break;
case 689:
if (curChar == 47)
{ jjCheckNAdd(639); }
break;
case 690:
if (curChar == 47)
{ jjCheckNAdd(653); }
break;
case 693:
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 692;
break;
case 696:
if (curChar == 35)
jjstateSet[jjnewStateCnt++] = 695;
break;
case 697:
if (curChar == 47)
{ jjCheckNAdd(667); }
break;
case 698:
if (curChar == 60)
{ jjAddStates(7, 8); }
break;
case 699:
if (curChar == 45 && kind > 35)
kind = 35;
break;
case 700:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 699;
break;
case 703:
if (curChar == 36)
{ jjCheckNAddStates(251, 255); }
break;
case 704:
if ((0x3ff001000000000L & l) != 0L)
{ jjCheckNAddStates(251, 255); }
break;
case 706:
if ((0x400600800000000L & l) != 0L)
{ jjCheckNAddStates(251, 255); }
break;
case 707:
if (curChar == 46)
{ jjAddStates(256, 257); }
break;
case 708:
if (curChar == 36)
{ jjCheckNAddStates(258, 262); }
break;
case 709:
if ((0x3ff001000000000L & l) != 0L)
{ jjCheckNAddStates(258, 262); }
break;
case 711:
if ((0x400600800000000L & l) != 0L)
{ jjCheckNAddStates(258, 262); }
break;
case 712:
if ((0x100002600L & l) != 0L)
{ jjCheckNAddTwoStates(712, 713); }
break;
case 713:
if (curChar == 62 && kind > 76)
kind = 76;
break;
case 716:
if (curChar == 47)
jjstateSet[jjnewStateCnt++] = 702;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 701:
case 655:
if (curChar == 64 && kind > 75)
kind = 75;
break;
case 2:
if ((0xf7fffffff7ffffffL & l) != 0L)
{
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
}
else if ((0x800000008000000L & l) != 0L)
{
if (kind > 82)
kind = 82;
}
if (curChar == 91)
{ jjAddStates(7, 8); }
if (curChar == 91)
{ jjAddStates(263, 335); }
break;
case 1:
if ((0xf7fffffff7ffffffL & l) == 0L)
break;
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
break;
case 4:
if (curChar == 116)
{ jjAddStates(150, 151); }
break;
case 6:
if (curChar == 93 && kind > 6)
kind = 6;
break;
case 7:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 4;
break;
case 8:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 7;
break;
case 9:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 8;
break;
case 10:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 9;
break;
case 11:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 10;
break;
case 12:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 11;
break;
case 13:
if (curChar == 114)
{ jjAddStates(152, 153); }
break;
case 15:
if (curChar == 93 && kind > 7)
kind = 7;
break;
case 16:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 13;
break;
case 17:
if (curChar == 118)
jjstateSet[jjnewStateCnt++] = 16;
break;
case 18:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 17;
break;
case 19:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 18;
break;
case 20:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 19;
break;
case 21:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 20;
break;
case 22:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 23;
break;
case 24:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 22;
break;
case 25:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 26;
break;
case 26:
if ((0x20000000200L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 27;
break;
case 27:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 28;
break;
case 29:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 25;
break;
case 30:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 29;
break;
case 31:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 30;
break;
case 32:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 33;
break;
case 34:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 32;
break;
case 35:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 34;
break;
case 36:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 35;
break;
case 37:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 38;
break;
case 39:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 40;
break;
case 41:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 39;
break;
case 42:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 37;
break;
case 43:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 42;
break;
case 44:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 43;
break;
case 45:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 44;
break;
case 46:
if (curChar == 112)
{ jjAddStates(156, 157); }
break;
case 48:
if (curChar == 93 && kind > 12)
kind = 12;
break;
case 49:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 46;
break;
case 50:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 49;
break;
case 51:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 52;
break;
case 52:
if ((0x2000000020L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 56;
break;
case 53:
if (curChar == 104)
jjstateSet[jjnewStateCnt++] = 54;
break;
case 55:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 53;
break;
case 56:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 55;
break;
case 57:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 51;
break;
case 58:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 57;
break;
case 59:
if (curChar == 104)
jjstateSet[jjnewStateCnt++] = 60;
break;
case 61:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 59;
break;
case 62:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 61;
break;
case 63:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 62;
break;
case 64:
if (curChar == 119)
jjstateSet[jjnewStateCnt++] = 63;
break;
case 65:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 64;
break;
case 66:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 67;
break;
case 68:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 66;
break;
case 69:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 68;
break;
case 70:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 69;
break;
case 71:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 72;
break;
case 73:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 71;
break;
case 74:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 75;
break;
case 76:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 74;
break;
case 77:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 76;
break;
case 78:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 77;
break;
case 79:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 78;
break;
case 80:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 79;
break;
case 81:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 82;
break;
case 83:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 81;
break;
case 84:
if (curChar == 98)
jjstateSet[jjnewStateCnt++] = 83;
break;
case 85:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 84;
break;
case 86:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 85;
break;
case 87:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 86;
break;
case 88:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 89;
break;
case 90:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 88;
break;
case 91:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 90;
break;
case 92:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 91;
break;
case 93:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 92;
break;
case 94:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 95;
break;
case 96:
if (curChar == 100)
jjstateSet[jjnewStateCnt++] = 94;
break;
case 97:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 96;
break;
case 98:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 97;
break;
case 99:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 98;
break;
case 100:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 99;
break;
case 101:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 100;
break;
case 102:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 103;
break;
case 104:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 102;
break;
case 105:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 104;
break;
case 106:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 105;
break;
case 107:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 106;
break;
case 108:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 107;
break;
case 109:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 110;
break;
case 111:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 109;
break;
case 112:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 111;
break;
case 113:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 112;
break;
case 114:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 113;
break;
case 115:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 114;
break;
case 116:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 115;
break;
case 117:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 116;
break;
case 118:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 119;
break;
case 120:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 118;
break;
case 121:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 120;
break;
case 122:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 121;
break;
case 123:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 122;
break;
case 124:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 125;
break;
case 126:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 124;
break;
case 127:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 126;
break;
case 128:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 127;
break;
case 129:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 128;
break;
case 130:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 129;
break;
case 131:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 130;
break;
case 132:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 131;
break;
case 133:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 132;
break;
case 134:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 135;
break;
case 136:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 134;
break;
case 137:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 136;
break;
case 138:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 137;
break;
case 139:
if (curChar == 118)
jjstateSet[jjnewStateCnt++] = 138;
break;
case 140:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 141;
break;
case 142:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 140;
break;
case 143:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 142;
break;
case 144:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 143;
break;
case 145:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 146;
break;
case 147:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 145;
break;
case 148:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 147;
break;
case 149:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 148;
break;
case 150:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 149;
break;
case 151:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 150;
break;
case 152:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 153;
break;
case 154:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 152;
break;
case 155:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 154;
break;
case 156:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 155;
break;
case 157:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 158;
break;
case 159:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 157;
break;
case 160:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 159;
break;
case 161:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 160;
break;
case 162:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 161;
break;
case 163:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 162;
break;
case 164:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 163;
break;
case 165:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 166;
break;
case 166:
if ((0x4000000040L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 172;
break;
case 167:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 168;
break;
case 169:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 167;
break;
case 170:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 169;
break;
case 171:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 170;
break;
case 172:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 171;
break;
case 173:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 165;
break;
case 174:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 173;
break;
case 175:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 174;
break;
case 176:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 175;
break;
case 177:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 176;
break;
case 178:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 179;
break;
case 179:
if ((0x2000000020L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 183;
break;
case 180:
if (curChar == 99)
{ jjAddStates(158, 159); }
break;
case 182:
if (curChar == 93 && kind > 31)
kind = 31;
break;
case 183:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 180;
break;
case 184:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 178;
break;
case 185:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 184;
break;
case 186:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 185;
break;
case 187:
if (curChar == 111)
{ jjAddStates(336, 337); }
break;
case 188:
if (curChar == 101)
{ jjCheckNAdd(192); }
break;
case 189:
if (curChar == 99)
{ jjAddStates(160, 161); }
break;
case 191:
if (curChar == 93 && kind > 32)
kind = 32;
break;
case 192:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 189;
break;
case 193:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 188;
break;
case 194:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 193;
break;
case 195:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 194;
break;
case 196:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 195;
break;
case 197:
if (curChar == 69)
{ jjCheckNAdd(192); }
break;
case 198:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 197;
break;
case 199:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 198;
break;
case 200:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 199;
break;
case 201:
if (curChar == 65)
jjstateSet[jjnewStateCnt++] = 200;
break;
case 202:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 187;
break;
case 203:
if (curChar == 115)
{ jjAddStates(162, 163); }
break;
case 205:
if (curChar == 93 && kind > 33)
kind = 33;
break;
case 206:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 203;
break;
case 207:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 206;
break;
case 208:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 207;
break;
case 209:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 208;
break;
case 210:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 209;
break;
case 211:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 210;
break;
case 212:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 211;
break;
case 213:
if (curChar == 116)
{ jjAddStates(164, 165); }
break;
case 215:
if (curChar == 93 && kind > 34)
kind = 34;
break;
case 216:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 213;
break;
case 217:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 216;
break;
case 218:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 217;
break;
case 219:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 218;
break;
case 220:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 219;
break;
case 221:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 220;
break;
case 222:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 223;
break;
case 223:
if ((0x1000000010000L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 229;
break;
case 224:
if (curChar == 101)
{ jjAddStates(166, 167); }
break;
case 226:
if (curChar == 93 && kind > 36)
kind = 36;
break;
case 227:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 224;
break;
case 228:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 227;
break;
case 229:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 228;
break;
case 230:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 222;
break;
case 231:
if (curChar == 101)
{ jjAddStates(168, 170); }
break;
case 234:
if (curChar == 93 && kind > 55)
kind = 55;
break;
case 235:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 231;
break;
case 236:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 235;
break;
case 237:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 236;
break;
case 238:
if (curChar == 107)
{ jjAddStates(171, 173); }
break;
case 241:
if (curChar == 93 && kind > 56)
kind = 56;
break;
case 242:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 238;
break;
case 243:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 242;
break;
case 244:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 243;
break;
case 245:
if (curChar == 98)
jjstateSet[jjnewStateCnt++] = 244;
break;
case 246:
if (curChar == 101)
{ jjAddStates(174, 176); }
break;
case 249:
if (curChar == 93 && kind > 57)
kind = 57;
break;
case 250:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 246;
break;
case 251:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 250;
break;
case 252:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 251;
break;
case 253:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 252;
break;
case 254:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 253;
break;
case 255:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 254;
break;
case 256:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 255;
break;
case 257:
if (curChar == 110)
{ jjAddStates(177, 179); }
break;
case 260:
if (curChar == 93 && kind > 58)
kind = 58;
break;
case 261:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 257;
break;
case 262:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 261;
break;
case 263:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 262;
break;
case 264:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 263;
break;
case 265:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 264;
break;
case 266:
if (curChar == 112)
{ jjAddStates(180, 182); }
break;
case 269:
if (curChar == 93 && kind > 59)
kind = 59;
break;
case 270:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 266;
break;
case 271:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 270;
break;
case 272:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 271;
break;
case 273:
if (curChar == 104)
{ jjAddStates(183, 185); }
break;
case 276:
if (curChar == 93 && kind > 60)
kind = 60;
break;
case 277:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 273;
break;
case 278:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 277;
break;
case 279:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 278;
break;
case 280:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 279;
break;
case 281:
if (curChar == 116)
{ jjAddStates(186, 188); }
break;
case 284:
if (curChar == 93 && kind > 61)
kind = 61;
break;
case 285:
if (curChar == 116)
{ jjAddStates(189, 191); }
break;
case 288:
if (curChar == 93 && kind > 62)
kind = 62;
break;
case 289:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 285;
break;
case 290:
if (curChar == 116)
{ jjAddStates(192, 194); }
break;
case 293:
if (curChar == 93 && kind > 63)
kind = 63;
break;
case 294:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 290;
break;
case 295:
if (curChar == 116)
{ jjAddStates(195, 197); }
break;
case 298:
if (curChar == 93 && kind > 64)
kind = 64;
break;
case 299:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 295;
break;
case 300:
if (curChar == 116)
{ jjAddStates(198, 199); }
break;
case 302:
if (curChar == 93 && kind > 65)
kind = 65;
break;
case 303:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 300;
break;
case 304:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 303;
break;
case 305:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 304;
break;
case 306:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 305;
break;
case 307:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 306;
break;
case 308:
if (curChar == 100)
jjstateSet[jjnewStateCnt++] = 307;
break;
case 309:
if (curChar == 100)
{ jjAddStates(200, 202); }
break;
case 312:
if (curChar == 93 && kind > 66)
kind = 66;
break;
case 313:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 309;
break;
case 314:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 313;
break;
case 315:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 314;
break;
case 316:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 315;
break;
case 317:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 316;
break;
case 318:
if (curChar == 100)
jjstateSet[jjnewStateCnt++] = 319;
break;
case 320:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 318;
break;
case 321:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 320;
break;
case 322:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 321;
break;
case 323:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 322;
break;
case 324:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 323;
break;
case 325:
if (curChar == 101)
{ jjAddStates(203, 205); }
break;
case 328:
if (curChar == 93 && kind > 68)
kind = 68;
break;
case 329:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 325;
break;
case 330:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 329;
break;
case 331:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 330;
break;
case 332:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 331;
break;
case 333:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 332;
break;
case 334:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 333;
break;
case 335:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 336;
break;
case 337:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 335;
break;
case 338:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 337;
break;
case 339:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 338;
break;
case 340:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 339;
break;
case 341:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 340;
break;
case 342:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 341;
break;
case 343:
if (curChar == 107)
{ jjAddStates(206, 208); }
break;
case 346:
if (curChar == 93 && kind > 70)
kind = 70;
break;
case 347:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 343;
break;
case 348:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 347;
break;
case 349:
if (curChar == 98)
jjstateSet[jjnewStateCnt++] = 348;
break;
case 350:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 349;
break;
case 351:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 350;
break;
case 352:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 351;
break;
case 353:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 352;
break;
case 354:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 355;
break;
case 356:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 354;
break;
case 357:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 356;
break;
case 358:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 357;
break;
case 359:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 358;
break;
case 360:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 359;
break;
case 361:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 362;
break;
case 362:
if ((0x2000000020L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 369;
break;
case 363:
if (curChar == 101)
{ jjAddStates(209, 210); }
break;
case 365:
if (curChar == 93 && kind > 73)
kind = 73;
break;
case 366:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 363;
break;
case 367:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 366;
break;
case 368:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 367;
break;
case 369:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 368;
break;
case 370:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 361;
break;
case 403:
if (curChar == 102)
{ jjAddStates(211, 212); }
break;
case 405:
if (curChar == 93 && kind > 37)
kind = 37;
break;
case 406:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 403;
break;
case 410:
if (curChar == 116)
{ jjAddStates(213, 214); }
break;
case 412:
if (curChar == 93 && kind > 38)
kind = 38;
break;
case 413:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 410;
break;
case 414:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 413;
break;
case 415:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 414;
break;
case 419:
if (curChar == 115)
{ jjAddStates(215, 216); }
break;
case 421:
if (curChar == 93 && kind > 39)
kind = 39;
break;
case 422:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 419;
break;
case 423:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 422;
break;
case 424:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 423;
break;
case 425:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 424;
break;
case 429:
if (curChar == 112)
{ jjAddStates(217, 218); }
break;
case 431:
if (curChar == 93 && kind > 40)
kind = 40;
break;
case 432:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 429;
break;
case 433:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 432;
break;
case 437:
if (curChar == 114)
{ jjAddStates(219, 220); }
break;
case 439:
if (curChar == 93 && kind > 41)
kind = 41;
break;
case 440:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 437;
break;
case 441:
if (curChar == 118)
jjstateSet[jjnewStateCnt++] = 440;
break;
case 442:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 441;
break;
case 443:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 442;
break;
case 444:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 443;
break;
case 445:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 444;
break;
case 449:
if (curChar == 116)
{ jjAddStates(221, 222); }
break;
case 451:
if (curChar == 93 && kind > 42)
kind = 42;
break;
case 452:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 449;
break;
case 453:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 452;
break;
case 454:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 453;
break;
case 455:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 454;
break;
case 456:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 455;
break;
case 457:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 456;
break;
case 461:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 462;
break;
case 462:
if ((0x2000000020L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 467;
break;
case 463:
if (curChar == 104)
{ jjAddStates(223, 224); }
break;
case 465:
if (curChar == 93 && kind > 43)
kind = 43;
break;
case 466:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 463;
break;
case 467:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 466;
break;
case 468:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 461;
break;
case 469:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 468;
break;
case 473:
if (curChar == 108)
{ jjAddStates(225, 226); }
break;
case 475:
if (curChar == 93 && kind > 44)
kind = 44;
break;
case 476:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 473;
break;
case 477:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 476;
break;
case 478:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 477;
break;
case 479:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 478;
break;
case 483:
if (curChar == 108)
{ jjAddStates(227, 228); }
break;
case 485:
if (curChar == 93 && kind > 45)
kind = 45;
break;
case 486:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 483;
break;
case 487:
if (curChar == 98)
jjstateSet[jjnewStateCnt++] = 486;
break;
case 488:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 487;
break;
case 489:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 488;
break;
case 490:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 489;
break;
case 494:
if (curChar == 110)
{ jjAddStates(229, 230); }
break;
case 496:
if (curChar == 93 && kind > 46)
kind = 46;
break;
case 497:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 494;
break;
case 498:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 497;
break;
case 499:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 498;
break;
case 500:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 499;
break;
case 501:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 500;
break;
case 505:
if (curChar == 110)
{ jjAddStates(231, 232); }
break;
case 507:
if (curChar == 93 && kind > 47)
kind = 47;
break;
case 508:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 505;
break;
case 509:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 508;
break;
case 510:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 509;
break;
case 511:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 510;
break;
case 512:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 511;
break;
case 513:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 512;
break;
case 514:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 513;
break;
case 518:
if (curChar == 111)
{ jjAddStates(233, 234); }
break;
case 520:
if (curChar == 93 && kind > 48)
kind = 48;
break;
case 521:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 518;
break;
case 522:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 521;
break;
case 523:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 522;
break;
case 524:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 523;
break;
case 528:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 529;
break;
case 529:
if ((0x4000000040L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 536;
break;
case 530:
if (curChar == 116)
{ jjAddStates(235, 236); }
break;
case 532:
if (curChar == 93 && kind > 49)
kind = 49;
break;
case 533:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 530;
break;
case 534:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 533;
break;
case 535:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 534;
break;
case 536:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 535;
break;
case 537:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 528;
break;
case 538:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 537;
break;
case 539:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 538;
break;
case 540:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 539;
break;
case 541:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 540;
break;
case 545:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 546;
break;
case 546:
if ((0x2000000020L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 550;
break;
case 547:
if (curChar == 99)
{ jjAddStates(237, 238); }
break;
case 549:
if (curChar == 93 && kind > 50)
kind = 50;
break;
case 550:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 547;
break;
case 551:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 545;
break;
case 552:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 551;
break;
case 553:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 552;
break;
case 557:
if (curChar == 111)
{ jjAddStates(338, 339); }
break;
case 558:
if (curChar == 101)
{ jjCheckNAdd(562); }
break;
case 559:
if (curChar == 99)
{ jjAddStates(239, 240); }
break;
case 561:
if (curChar == 93 && kind > 51)
kind = 51;
break;
case 562:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 559;
break;
case 563:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 558;
break;
case 564:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 563;
break;
case 565:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 564;
break;
case 566:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 565;
break;
case 567:
if (curChar == 69)
{ jjCheckNAdd(562); }
break;
case 568:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 567;
break;
case 569:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 568;
break;
case 570:
if (curChar == 117)
jjstateSet[jjnewStateCnt++] = 569;
break;
case 571:
if (curChar == 65)
jjstateSet[jjnewStateCnt++] = 570;
break;
case 572:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 557;
break;
case 576:
if (curChar == 115)
{ jjAddStates(241, 242); }
break;
case 578:
if (curChar == 93 && kind > 52)
kind = 52;
break;
case 579:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 576;
break;
case 580:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 579;
break;
case 581:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 580;
break;
case 582:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 581;
break;
case 583:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 582;
break;
case 584:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 583;
break;
case 585:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 584;
break;
case 589:
if (curChar == 109)
{ jjAddStates(243, 244); }
break;
case 591:
if (curChar == 93 && kind > 53)
kind = 53;
break;
case 592:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 589;
break;
case 593:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 592;
break;
case 594:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 593;
break;
case 595:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 594;
break;
case 596:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 595;
break;
case 597:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 596;
break;
case 598:
if (curChar == 114)
jjstateSet[jjnewStateCnt++] = 597;
break;
case 599:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 598;
break;
case 603:
if (curChar == 104)
{ jjAddStates(245, 246); }
break;
case 605:
if (curChar == 93 && kind > 54)
kind = 54;
break;
case 606:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 603;
break;
case 607:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 606;
break;
case 608:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 607;
break;
case 609:
if (curChar == 119)
jjstateSet[jjnewStateCnt++] = 608;
break;
case 610:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 609;
break;
case 631:
if (curChar == 101)
{ jjAddStates(247, 248); }
break;
case 633:
if (curChar == 93 && kind > 72)
kind = 72;
break;
case 634:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 631;
break;
case 635:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 634;
break;
case 636:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 635;
break;
case 637:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 636;
break;
case 638:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 637;
break;
case 643:
if (curChar == 111)
jjstateSet[jjnewStateCnt++] = 644;
break;
case 644:
if ((0x2000000020L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 651;
break;
case 645:
if (curChar == 101)
{ jjAddStates(249, 250); }
break;
case 647:
if (curChar == 93 && kind > 74)
kind = 74;
break;
case 648:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 645;
break;
case 649:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 648;
break;
case 650:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 649;
break;
case 651:
if (curChar == 115)
jjstateSet[jjnewStateCnt++] = 650;
break;
case 652:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 643;
break;
case 656:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 657;
break;
case 658:
case 691:
if (curChar == 116)
{ jjCheckNAdd(656); }
break;
case 659:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 658;
break;
case 661:
if (curChar == 108)
{ jjAddStates(340, 341); }
break;
case 663:
if (curChar == 93 && kind > 78)
kind = 78;
break;
case 664:
case 694:
if (curChar == 116)
{ jjCheckNAdd(661); }
break;
case 665:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 664;
break;
case 668:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
if (kind > 79)
kind = 79;
jjstateSet[jjnewStateCnt++] = 668;
break;
case 670:
if (curChar == 91)
{ jjAddStates(263, 335); }
break;
case 692:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 691;
break;
case 695:
if (curChar == 102)
jjstateSet[jjnewStateCnt++] = 694;
break;
case 698:
if (curChar == 91)
{ jjAddStates(7, 8); }
break;
case 702:
if (curChar == 64)
{ jjCheckNAddStates(342, 345); }
break;
case 703:
case 704:
if ((0x7fffffe87ffffffL & l) != 0L)
{ jjCheckNAddStates(251, 255); }
break;
case 705:
case 715:
if (curChar == 92)
{ jjCheckNAdd(706); }
break;
case 708:
case 709:
if ((0x7fffffe87ffffffL & l) != 0L)
{ jjCheckNAddStates(258, 262); }
break;
case 710:
case 714:
if (curChar == 92)
{ jjCheckNAdd(711); }
break;
case 713:
if (curChar == 93 && kind > 76)
kind = 76;
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 2:
case 1:
if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
break;
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
break;
case 703:
case 704:
if (jjCanMove_1(hiByte, i1, i2, l1, l2))
{ jjCheckNAddStates(251, 255); }
break;
case 708:
case 709:
if (jjCanMove_1(hiByte, i1, i2, l1, l2))
{ jjCheckNAddStates(258, 262); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 717 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
private final int jjStopStringLiteralDfa_2(int pos, long active0, long active1, long active2){
switch (pos)
{
case 0:
if ((active2 & 0x40L) != 0L)
return 2;
if ((active1 & 0x4001000000000000L) != 0L)
return 44;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x7000L) != 0L)
{
jjmatchedKind = 143;
return 104;
}
if ((active1 & 0x200000b000000000L) != 0L)
return 54;
if ((active1 & 0x408400000000000L) != 0L)
return 47;
return -1;
case 1:
if ((active2 & 0x3000L) != 0L)
return 104;
if ((active1 & 0x200000a000000000L) != 0L)
return 53;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
if (jjmatchedPos != 1)
{
jjmatchedKind = 143;
jjmatchedPos = 1;
}
return 104;
}
return -1;
case 2:
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 2;
return 104;
}
return -1;
case 3:
if ((active1 & 0x200000000L) != 0L)
return 104;
if ((active1 & 0x100000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 3;
return 104;
}
return -1;
default :
return -1;
}
}
private final int jjStartNfa_2(int pos, long active0, long active1, long active2){
return jjMoveNfa_2(jjStopStringLiteralDfa_2(pos, active0, active1, active2), pos + 1);
}
private int jjMoveStringLiteralDfa0_2(){
switch(curChar)
{
case 33:
jjmatchedKind = 130;
return jjMoveStringLiteralDfa1_2(0x100000000000L, 0x0L);
case 37:
jjmatchedKind = 127;
return jjMoveStringLiteralDfa1_2(0x2000000000000L, 0x0L);
case 40:
return jjStopAtPos(0, 136);
case 41:
return jjStopAtPos(0, 137);
case 42:
jjmatchedKind = 123;
return jjMoveStringLiteralDfa1_2(0x1000800000000000L, 0x0L);
case 43:
jjmatchedKind = 121;
return jjMoveStringLiteralDfa1_2(0x4200000000000L, 0x0L);
case 44:
return jjStopAtPos(0, 131);
case 45:
jjmatchedKind = 122;
return jjMoveStringLiteralDfa1_2(0x8400000000000L, 0x0L);
case 46:
jjmatchedKind = 100;
return jjMoveStringLiteralDfa1_2(0x200000a000000000L, 0x0L);
case 47:
jjmatchedKind = 126;
return jjMoveStringLiteralDfa1_2(0x1000000000000L, 0x0L);
case 58:
return jjStopAtPos(0, 133);
case 59:
return jjStopAtPos(0, 132);
case 61:
jjmatchedKind = 106;
return jjMoveStringLiteralDfa1_2(0x80000000000L, 0x0L);
case 62:
return jjStopAtPos(0, 149);
case 63:
jjmatchedKind = 104;
return jjMoveStringLiteralDfa1_2(0x20000000000L, 0x0L);
case 91:
return jjStartNfaWithStates_2(0, 134, 2);
case 93:
return jjStopAtPos(0, 135);
case 97:
return jjMoveStringLiteralDfa1_2(0x0L, 0x2000L);
case 102:
return jjMoveStringLiteralDfa1_2(0x100000000L, 0x0L);
case 105:
return jjMoveStringLiteralDfa1_2(0x0L, 0x1000L);
case 116:
return jjMoveStringLiteralDfa1_2(0x200000000L, 0x0L);
case 117:
return jjMoveStringLiteralDfa1_2(0x0L, 0x4000L);
case 123:
return jjStopAtPos(0, 138);
case 125:
return jjStopAtPos(0, 139);
default :
return jjMoveNfa_2(1, 0);
}
}
private int jjMoveStringLiteralDfa1_2(long active1, long active2){
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_2(0, 0L, active1, active2);
return 1;
}
switch(curChar)
{
case 42:
if ((active1 & 0x1000000000000000L) != 0L)
return jjStopAtPos(1, 124);
break;
case 43:
if ((active1 & 0x4000000000000L) != 0L)
return jjStopAtPos(1, 114);
break;
case 45:
if ((active1 & 0x8000000000000L) != 0L)
return jjStopAtPos(1, 115);
break;
case 46:
if ((active1 & 0x2000000000L) != 0L)
{
jjmatchedKind = 101;
jjmatchedPos = 1;
}
return jjMoveStringLiteralDfa2_2(active1, 0x2000008000000000L, active2, 0L);
case 61:
if ((active1 & 0x80000000000L) != 0L)
return jjStopAtPos(1, 107);
else if ((active1 & 0x100000000000L) != 0L)
return jjStopAtPos(1, 108);
else if ((active1 & 0x200000000000L) != 0L)
return jjStopAtPos(1, 109);
else if ((active1 & 0x400000000000L) != 0L)
return jjStopAtPos(1, 110);
else if ((active1 & 0x800000000000L) != 0L)
return jjStopAtPos(1, 111);
else if ((active1 & 0x1000000000000L) != 0L)
return jjStopAtPos(1, 112);
else if ((active1 & 0x2000000000000L) != 0L)
return jjStopAtPos(1, 113);
break;
case 63:
if ((active1 & 0x20000000000L) != 0L)
return jjStopAtPos(1, 105);
break;
case 97:
return jjMoveStringLiteralDfa2_2(active1, 0x100000000L, active2, 0L);
case 110:
if ((active2 & 0x1000L) != 0L)
return jjStartNfaWithStates_2(1, 140, 104);
break;
case 114:
return jjMoveStringLiteralDfa2_2(active1, 0x200000000L, active2, 0L);
case 115:
if ((active2 & 0x2000L) != 0L)
return jjStartNfaWithStates_2(1, 141, 104);
return jjMoveStringLiteralDfa2_2(active1, 0L, active2, 0x4000L);
default :
break;
}
return jjStartNfa_2(0, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa2_2(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_2(0, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_2(1, 0L, active1, active2);
return 2;
}
switch(curChar)
{
case 42:
if ((active1 & 0x8000000000L) != 0L)
return jjStopAtPos(2, 103);
break;
case 46:
if ((active1 & 0x2000000000000000L) != 0L)
return jjStopAtPos(2, 125);
break;
case 105:
return jjMoveStringLiteralDfa3_2(active1, 0L, active2, 0x4000L);
case 108:
return jjMoveStringLiteralDfa3_2(active1, 0x100000000L, active2, 0L);
case 117:
return jjMoveStringLiteralDfa3_2(active1, 0x200000000L, active2, 0L);
default :
break;
}
return jjStartNfa_2(1, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa3_2(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_2(1, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_2(2, 0L, active1, active2);
return 3;
}
switch(curChar)
{
case 101:
if ((active1 & 0x200000000L) != 0L)
return jjStartNfaWithStates_2(3, 97, 104);
break;
case 110:
return jjMoveStringLiteralDfa4_2(active1, 0L, active2, 0x4000L);
case 115:
return jjMoveStringLiteralDfa4_2(active1, 0x100000000L, active2, 0L);
default :
break;
}
return jjStartNfa_2(2, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa4_2(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_2(2, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_2(3, 0L, active1, active2);
return 4;
}
switch(curChar)
{
case 101:
if ((active1 & 0x100000000L) != 0L)
return jjStartNfaWithStates_2(4, 96, 104);
break;
case 103:
if ((active2 & 0x4000L) != 0L)
return jjStartNfaWithStates_2(4, 142, 104);
break;
default :
break;
}
return jjStartNfa_2(3, 0L, active1, active2);
}
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);
}
private int jjMoveNfa_2(int startState, int curPos)
{
int startsAt = 0;
jjnewStateCnt = 104;
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 53:
if (curChar == 33)
{
if (kind > 102)
kind = 102;
}
else if (curChar == 60)
{
if (kind > 102)
kind = 102;
}
break;
case 1:
if ((0x3ff000000000000L & l) != 0L)
{
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(346, 348); }
}
else if ((0x100002600L & l) != 0L)
{
if (kind > 86)
kind = 86;
{ jjCheckNAdd(0); }
}
else if (curChar == 38)
{ jjAddStates(349, 354); }
else if (curChar == 46)
{ jjAddStates(355, 356); }
else if (curChar == 45)
{ jjAddStates(357, 358); }
else if (curChar == 47)
{ jjAddStates(359, 360); }
else if (curChar == 35)
{ jjCheckNAdd(38); }
else if (curChar == 36)
{ jjCheckNAdd(38); }
else if (curChar == 60)
{ jjCheckNAdd(27); }
else if (curChar == 39)
{ jjCheckNAddStates(361, 363); }
else if (curChar == 34)
{ jjCheckNAddStates(364, 366); }
if (curChar == 36)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 38)
{
if (kind > 128)
kind = 128;
}
else if (curChar == 60)
{
if (kind > 116)
kind = 116;
}
if (curChar == 60)
jjstateSet[jjnewStateCnt++] = 2;
break;
case 54:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 55;
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 53;
break;
case 47:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 50;
else if (curChar == 62)
{
if (kind > 120)
kind = 120;
}
break;
case 2:
if ((0xa00000000L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 61)
{
if (kind > 144)
kind = 144;
}
break;
case 104:
case 34:
if ((0x3ff001000000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 44:
if (curChar == 62 && kind > 150)
kind = 150;
break;
case 0:
if ((0x100002600L & l) == 0L)
break;
if (kind > 86)
kind = 86;
{ jjCheckNAdd(0); }
break;
case 3:
if (curChar == 45 && kind > 87)
kind = 87;
break;
case 4:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 3;
break;
case 5:
if (curChar == 34)
{ jjCheckNAddStates(364, 366); }
break;
case 6:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 9:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 10:
if (curChar == 34 && kind > 94)
kind = 94;
break;
case 11:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 12:
if (curChar == 39)
{ jjCheckNAddStates(361, 363); }
break;
case 13:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 16:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 17:
if (curChar == 39 && kind > 94)
kind = 94;
break;
case 18:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 20:
if (curChar == 34)
{ jjCheckNAddTwoStates(21, 22); }
break;
case 21:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(21, 22); }
break;
case 22:
if (curChar == 34 && kind > 95)
kind = 95;
break;
case 23:
if (curChar == 39)
{ jjCheckNAddTwoStates(24, 25); }
break;
case 24:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(24, 25); }
break;
case 25:
if (curChar == 39 && kind > 95)
kind = 95;
break;
case 26:
if (curChar == 60 && kind > 116)
kind = 116;
break;
case 27:
if (curChar == 61 && kind > 117)
kind = 117;
break;
case 28:
if (curChar == 60)
{ jjCheckNAdd(27); }
break;
case 29:
case 92:
if (curChar == 38 && kind > 128)
kind = 128;
break;
case 33:
if (curChar != 36)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 36:
if ((0x400600800000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 39:
if (curChar == 36)
{ jjCheckNAdd(38); }
break;
case 40:
if (curChar == 35)
{ jjCheckNAdd(38); }
break;
case 41:
if (curChar == 61 && kind > 144)
kind = 144;
break;
case 43:
if (curChar == 47)
{ jjAddStates(359, 360); }
break;
case 46:
if (curChar == 45)
{ jjAddStates(357, 358); }
break;
case 48:
if (curChar == 59 && kind > 120)
kind = 120;
break;
case 51:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 50;
break;
case 52:
if (curChar == 46)
{ jjAddStates(355, 356); }
break;
case 55:
if (curChar == 33 && kind > 102)
kind = 102;
break;
case 56:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 55;
break;
case 57:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(346, 348); }
break;
case 58:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAdd(58); }
break;
case 59:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddTwoStates(59, 60); }
break;
case 60:
if (curChar == 46)
{ jjCheckNAdd(61); }
break;
case 61:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 99)
kind = 99;
{ jjCheckNAdd(61); }
break;
case 78:
if (curChar == 38)
{ jjAddStates(349, 354); }
break;
case 79:
if (curChar == 59 && kind > 116)
kind = 116;
break;
case 82:
if (curChar == 59)
{ jjCheckNAdd(27); }
break;
case 85:
if (curChar == 59 && kind > 118)
kind = 118;
break;
case 88:
if (curChar == 61 && kind > 119)
kind = 119;
break;
case 89:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 88;
break;
case 93:
if (curChar == 59 && kind > 128)
kind = 128;
break;
case 97:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 96;
break;
case 98:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 97;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 1:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 92)
{ jjAddStates(367, 371); }
else if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 41;
else if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 31;
if (curChar == 103)
{ jjCheckNAddTwoStates(70, 103); }
else if (curChar == 108)
{ jjCheckNAddTwoStates(63, 65); }
else if (curChar == 92)
{ jjCheckNAdd(36); }
else if (curChar == 124)
{
if (kind > 129)
kind = 129;
}
else if (curChar == 114)
{ jjAddStates(372, 373); }
else if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 2;
break;
case 104:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 44:
if (curChar == 93 && kind > 150)
kind = 150;
break;
case 6:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 7:
if (curChar == 92)
{ jjAddStates(374, 375); }
break;
case 8:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 9;
break;
case 9:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 11:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 13:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 14:
if (curChar == 92)
{ jjAddStates(376, 377); }
break;
case 15:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 16;
break;
case 16:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 18:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 19:
if (curChar == 114)
{ jjAddStates(372, 373); }
break;
case 21:
{ jjAddStates(378, 379); }
break;
case 24:
{ jjAddStates(380, 381); }
break;
case 30:
case 31:
if (curChar == 124 && kind > 129)
kind = 129;
break;
case 32:
if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 31;
break;
case 33:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 34:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 35:
if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 37:
if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 38:
if (curChar == 123 && kind > 144)
kind = 144;
break;
case 42:
if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 41;
break;
case 49:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 48;
break;
case 50:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 49;
break;
case 62:
if (curChar == 108)
{ jjCheckNAddTwoStates(63, 65); }
break;
case 63:
if (curChar == 116 && kind > 116)
kind = 116;
break;
case 64:
if (curChar == 101 && kind > 117)
kind = 117;
break;
case 65:
case 68:
if (curChar == 116)
{ jjCheckNAdd(64); }
break;
case 66:
if (curChar == 92)
{ jjAddStates(367, 371); }
break;
case 67:
if (curChar == 108)
{ jjCheckNAdd(63); }
break;
case 69:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 68;
break;
case 70:
if (curChar == 116 && kind > 118)
kind = 118;
break;
case 71:
if (curChar == 103)
{ jjCheckNAdd(70); }
break;
case 72:
if (curChar == 101 && kind > 119)
kind = 119;
break;
case 73:
case 103:
if (curChar == 116)
{ jjCheckNAdd(72); }
break;
case 74:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 73;
break;
case 75:
if (curChar == 100 && kind > 128)
kind = 128;
break;
case 76:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 75;
break;
case 77:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 76;
break;
case 80:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 79;
break;
case 81:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 80;
break;
case 83:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 82;
break;
case 84:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 83;
break;
case 86:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 85;
break;
case 87:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 86;
break;
case 90:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 89;
break;
case 91:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 90;
break;
case 94:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 93;
break;
case 95:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 94;
break;
case 96:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 95;
break;
case 99:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 98;
break;
case 100:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 99;
break;
case 101:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 100;
break;
case 102:
if (curChar == 103)
{ jjCheckNAddTwoStates(70, 103); }
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 1:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 104:
case 34:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 6:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(364, 366); }
break;
case 13:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(361, 363); }
break;
case 21:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(378, 379); }
break;
case 24:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(380, 381); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 104 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
private final int jjStopStringLiteralDfa_3(int pos, long active0, long active1, long active2){
switch (pos)
{
case 0:
if ((active2 & 0x40L) != 0L)
return 2;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x7000L) != 0L)
{
jjmatchedKind = 143;
return 101;
}
if ((active1 & 0x200000b000000000L) != 0L)
return 51;
if ((active1 & 0x408400000000000L) != 0L)
return 44;
return -1;
case 1:
if ((active2 & 0x3000L) != 0L)
return 101;
if ((active1 & 0x200000a000000000L) != 0L)
return 50;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
if (jjmatchedPos != 1)
{
jjmatchedKind = 143;
jjmatchedPos = 1;
}
return 101;
}
return -1;
case 2:
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 2;
return 101;
}
return -1;
case 3:
if ((active1 & 0x200000000L) != 0L)
return 101;
if ((active1 & 0x100000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 3;
return 101;
}
return -1;
default :
return -1;
}
}
private final int jjStartNfa_3(int pos, long active0, long active1, long active2){
return jjMoveNfa_3(jjStopStringLiteralDfa_3(pos, active0, active1, active2), pos + 1);
}
private int jjMoveStringLiteralDfa0_3(){
switch(curChar)
{
case 33:
jjmatchedKind = 130;
return jjMoveStringLiteralDfa1_3(0x100000000000L, 0x0L);
case 37:
jjmatchedKind = 127;
return jjMoveStringLiteralDfa1_3(0x2000000000000L, 0x0L);
case 40:
return jjStopAtPos(0, 136);
case 41:
return jjStopAtPos(0, 137);
case 42:
jjmatchedKind = 123;
return jjMoveStringLiteralDfa1_3(0x1000800000000000L, 0x0L);
case 43:
jjmatchedKind = 121;
return jjMoveStringLiteralDfa1_3(0x4200000000000L, 0x0L);
case 44:
return jjStopAtPos(0, 131);
case 45:
jjmatchedKind = 122;
return jjMoveStringLiteralDfa1_3(0x8400000000000L, 0x0L);
case 46:
jjmatchedKind = 100;
return jjMoveStringLiteralDfa1_3(0x200000a000000000L, 0x0L);
case 47:
jjmatchedKind = 126;
return jjMoveStringLiteralDfa1_3(0x1000000000000L, 0x0L);
case 58:
return jjStopAtPos(0, 133);
case 59:
return jjStopAtPos(0, 132);
case 61:
jjmatchedKind = 106;
return jjMoveStringLiteralDfa1_3(0x80000000000L, 0x0L);
case 62:
jjmatchedKind = 151;
return jjMoveStringLiteralDfa1_3(0x0L, 0x1000000L);
case 63:
jjmatchedKind = 104;
return jjMoveStringLiteralDfa1_3(0x20000000000L, 0x0L);
case 91:
return jjStartNfaWithStates_3(0, 134, 2);
case 93:
return jjStopAtPos(0, 135);
case 97:
return jjMoveStringLiteralDfa1_3(0x0L, 0x2000L);
case 102:
return jjMoveStringLiteralDfa1_3(0x100000000L, 0x0L);
case 105:
return jjMoveStringLiteralDfa1_3(0x0L, 0x1000L);
case 116:
return jjMoveStringLiteralDfa1_3(0x200000000L, 0x0L);
case 117:
return jjMoveStringLiteralDfa1_3(0x0L, 0x4000L);
case 123:
return jjStopAtPos(0, 138);
case 125:
return jjStopAtPos(0, 139);
default :
return jjMoveNfa_3(1, 0);
}
}
private int jjMoveStringLiteralDfa1_3(long active1, long active2){
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_3(0, 0L, active1, active2);
return 1;
}
switch(curChar)
{
case 42:
if ((active1 & 0x1000000000000000L) != 0L)
return jjStopAtPos(1, 124);
break;
case 43:
if ((active1 & 0x4000000000000L) != 0L)
return jjStopAtPos(1, 114);
break;
case 45:
if ((active1 & 0x8000000000000L) != 0L)
return jjStopAtPos(1, 115);
break;
case 46:
if ((active1 & 0x2000000000L) != 0L)
{
jjmatchedKind = 101;
jjmatchedPos = 1;
}
return jjMoveStringLiteralDfa2_3(active1, 0x2000008000000000L, active2, 0L);
case 61:
if ((active1 & 0x80000000000L) != 0L)
return jjStopAtPos(1, 107);
else if ((active1 & 0x100000000000L) != 0L)
return jjStopAtPos(1, 108);
else if ((active1 & 0x200000000000L) != 0L)
return jjStopAtPos(1, 109);
else if ((active1 & 0x400000000000L) != 0L)
return jjStopAtPos(1, 110);
else if ((active1 & 0x800000000000L) != 0L)
return jjStopAtPos(1, 111);
else if ((active1 & 0x1000000000000L) != 0L)
return jjStopAtPos(1, 112);
else if ((active1 & 0x2000000000000L) != 0L)
return jjStopAtPos(1, 113);
else if ((active2 & 0x1000000L) != 0L)
return jjStopAtPos(1, 152);
break;
case 63:
if ((active1 & 0x20000000000L) != 0L)
return jjStopAtPos(1, 105);
break;
case 97:
return jjMoveStringLiteralDfa2_3(active1, 0x100000000L, active2, 0L);
case 110:
if ((active2 & 0x1000L) != 0L)
return jjStartNfaWithStates_3(1, 140, 101);
break;
case 114:
return jjMoveStringLiteralDfa2_3(active1, 0x200000000L, active2, 0L);
case 115:
if ((active2 & 0x2000L) != 0L)
return jjStartNfaWithStates_3(1, 141, 101);
return jjMoveStringLiteralDfa2_3(active1, 0L, active2, 0x4000L);
default :
break;
}
return jjStartNfa_3(0, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa2_3(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_3(0, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_3(1, 0L, active1, active2);
return 2;
}
switch(curChar)
{
case 42:
if ((active1 & 0x8000000000L) != 0L)
return jjStopAtPos(2, 103);
break;
case 46:
if ((active1 & 0x2000000000000000L) != 0L)
return jjStopAtPos(2, 125);
break;
case 105:
return jjMoveStringLiteralDfa3_3(active1, 0L, active2, 0x4000L);
case 108:
return jjMoveStringLiteralDfa3_3(active1, 0x100000000L, active2, 0L);
case 117:
return jjMoveStringLiteralDfa3_3(active1, 0x200000000L, active2, 0L);
default :
break;
}
return jjStartNfa_3(1, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa3_3(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_3(1, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_3(2, 0L, active1, active2);
return 3;
}
switch(curChar)
{
case 101:
if ((active1 & 0x200000000L) != 0L)
return jjStartNfaWithStates_3(3, 97, 101);
break;
case 110:
return jjMoveStringLiteralDfa4_3(active1, 0L, active2, 0x4000L);
case 115:
return jjMoveStringLiteralDfa4_3(active1, 0x100000000L, active2, 0L);
default :
break;
}
return jjStartNfa_3(2, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa4_3(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_3(2, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_3(3, 0L, active1, active2);
return 4;
}
switch(curChar)
{
case 101:
if ((active1 & 0x100000000L) != 0L)
return jjStartNfaWithStates_3(4, 96, 101);
break;
case 103:
if ((active2 & 0x4000L) != 0L)
return jjStartNfaWithStates_3(4, 142, 101);
break;
default :
break;
}
return jjStartNfa_3(3, 0L, active1, active2);
}
private int jjStartNfaWithStates_3(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_3(state, pos + 1);
}
private int jjMoveNfa_3(int startState, int curPos)
{
int startsAt = 0;
jjnewStateCnt = 101;
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 1:
if ((0x3ff000000000000L & l) != 0L)
{
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(382, 384); }
}
else if ((0x100002600L & l) != 0L)
{
if (kind > 86)
kind = 86;
{ jjCheckNAdd(0); }
}
else if (curChar == 38)
{ jjAddStates(385, 390); }
else if (curChar == 46)
{ jjAddStates(391, 392); }
else if (curChar == 45)
{ jjAddStates(393, 394); }
else if (curChar == 35)
{ jjCheckNAdd(38); }
else if (curChar == 36)
{ jjCheckNAdd(38); }
else if (curChar == 60)
{ jjCheckNAdd(27); }
else if (curChar == 39)
{ jjCheckNAddStates(361, 363); }
else if (curChar == 34)
{ jjCheckNAddStates(364, 366); }
if (curChar == 36)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 38)
{
if (kind > 128)
kind = 128;
}
else if (curChar == 60)
{
if (kind > 116)
kind = 116;
}
if (curChar == 60)
jjstateSet[jjnewStateCnt++] = 2;
break;
case 51:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 52;
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 50;
break;
case 44:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 47;
else if (curChar == 62)
{
if (kind > 120)
kind = 120;
}
break;
case 50:
if (curChar == 33)
{
if (kind > 102)
kind = 102;
}
else if (curChar == 60)
{
if (kind > 102)
kind = 102;
}
break;
case 2:
if ((0xa00000000L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 61)
{
if (kind > 144)
kind = 144;
}
break;
case 101:
case 34:
if ((0x3ff001000000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 0:
if ((0x100002600L & l) == 0L)
break;
if (kind > 86)
kind = 86;
{ jjCheckNAdd(0); }
break;
case 3:
if (curChar == 45 && kind > 87)
kind = 87;
break;
case 4:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 3;
break;
case 5:
if (curChar == 34)
{ jjCheckNAddStates(364, 366); }
break;
case 6:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 9:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 10:
if (curChar == 34 && kind > 94)
kind = 94;
break;
case 11:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 12:
if (curChar == 39)
{ jjCheckNAddStates(361, 363); }
break;
case 13:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 16:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 17:
if (curChar == 39 && kind > 94)
kind = 94;
break;
case 18:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 20:
if (curChar == 34)
{ jjCheckNAddTwoStates(21, 22); }
break;
case 21:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(21, 22); }
break;
case 22:
if (curChar == 34 && kind > 95)
kind = 95;
break;
case 23:
if (curChar == 39)
{ jjCheckNAddTwoStates(24, 25); }
break;
case 24:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(24, 25); }
break;
case 25:
if (curChar == 39 && kind > 95)
kind = 95;
break;
case 26:
if (curChar == 60 && kind > 116)
kind = 116;
break;
case 27:
if (curChar == 61 && kind > 117)
kind = 117;
break;
case 28:
if (curChar == 60)
{ jjCheckNAdd(27); }
break;
case 29:
case 89:
if (curChar == 38 && kind > 128)
kind = 128;
break;
case 33:
if (curChar != 36)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 36:
if ((0x400600800000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 39:
if (curChar == 36)
{ jjCheckNAdd(38); }
break;
case 40:
if (curChar == 35)
{ jjCheckNAdd(38); }
break;
case 41:
if (curChar == 61 && kind > 144)
kind = 144;
break;
case 43:
if (curChar == 45)
{ jjAddStates(393, 394); }
break;
case 45:
if (curChar == 59 && kind > 120)
kind = 120;
break;
case 48:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 47;
break;
case 49:
if (curChar == 46)
{ jjAddStates(391, 392); }
break;
case 52:
if (curChar == 33 && kind > 102)
kind = 102;
break;
case 53:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 52;
break;
case 54:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(382, 384); }
break;
case 55:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAdd(55); }
break;
case 56:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddTwoStates(56, 57); }
break;
case 57:
if (curChar == 46)
{ jjCheckNAdd(58); }
break;
case 58:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 99)
kind = 99;
{ jjCheckNAdd(58); }
break;
case 75:
if (curChar == 38)
{ jjAddStates(385, 390); }
break;
case 76:
if (curChar == 59 && kind > 116)
kind = 116;
break;
case 79:
if (curChar == 59)
{ jjCheckNAdd(27); }
break;
case 82:
if (curChar == 59 && kind > 118)
kind = 118;
break;
case 85:
if (curChar == 61 && kind > 119)
kind = 119;
break;
case 86:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 85;
break;
case 90:
if (curChar == 59 && kind > 128)
kind = 128;
break;
case 94:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 93;
break;
case 95:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 94;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 1:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 92)
{ jjAddStates(395, 399); }
else if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 41;
else if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 31;
if (curChar == 103)
{ jjCheckNAddTwoStates(67, 100); }
else if (curChar == 108)
{ jjCheckNAddTwoStates(60, 62); }
else if (curChar == 92)
{ jjCheckNAdd(36); }
else if (curChar == 124)
{
if (kind > 129)
kind = 129;
}
else if (curChar == 114)
{ jjAddStates(372, 373); }
else if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 2;
break;
case 101:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 6:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 7:
if (curChar == 92)
{ jjAddStates(374, 375); }
break;
case 8:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 9;
break;
case 9:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 11:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 13:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 14:
if (curChar == 92)
{ jjAddStates(376, 377); }
break;
case 15:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 16;
break;
case 16:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 18:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 19:
if (curChar == 114)
{ jjAddStates(372, 373); }
break;
case 21:
{ jjAddStates(378, 379); }
break;
case 24:
{ jjAddStates(380, 381); }
break;
case 30:
case 31:
if (curChar == 124 && kind > 129)
kind = 129;
break;
case 32:
if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 31;
break;
case 33:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 34:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 35:
if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 37:
if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 38:
if (curChar == 123 && kind > 144)
kind = 144;
break;
case 42:
if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 41;
break;
case 46:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 45;
break;
case 47:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 46;
break;
case 59:
if (curChar == 108)
{ jjCheckNAddTwoStates(60, 62); }
break;
case 60:
if (curChar == 116 && kind > 116)
kind = 116;
break;
case 61:
if (curChar == 101 && kind > 117)
kind = 117;
break;
case 62:
case 65:
if (curChar == 116)
{ jjCheckNAdd(61); }
break;
case 63:
if (curChar == 92)
{ jjAddStates(395, 399); }
break;
case 64:
if (curChar == 108)
{ jjCheckNAdd(60); }
break;
case 66:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 65;
break;
case 67:
if (curChar == 116 && kind > 118)
kind = 118;
break;
case 68:
if (curChar == 103)
{ jjCheckNAdd(67); }
break;
case 69:
if (curChar == 101 && kind > 119)
kind = 119;
break;
case 70:
case 100:
if (curChar == 116)
{ jjCheckNAdd(69); }
break;
case 71:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 70;
break;
case 72:
if (curChar == 100 && kind > 128)
kind = 128;
break;
case 73:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 72;
break;
case 74:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 73;
break;
case 77:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 76;
break;
case 78:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 77;
break;
case 80:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 79;
break;
case 81:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 80;
break;
case 83:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 82;
break;
case 84:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 83;
break;
case 87:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 86;
break;
case 88:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 87;
break;
case 91:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 90;
break;
case 92:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 91;
break;
case 93:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 92;
break;
case 96:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 95;
break;
case 97:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 96;
break;
case 98:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 97;
break;
case 99:
if (curChar == 103)
{ jjCheckNAddTwoStates(67, 100); }
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 1:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 101:
case 34:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 6:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(364, 366); }
break;
case 13:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(361, 363); }
break;
case 21:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(378, 379); }
break;
case 24:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(380, 381); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 101 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
private final int jjStopStringLiteralDfa_5(int pos, long active0, long active1){
switch (pos)
{
default :
return -1;
}
}
private final int jjStartNfa_5(int pos, long active0, long active1){
return jjMoveNfa_5(jjStopStringLiteralDfa_5(pos, active0, active1), pos + 1);
}
private int jjMoveStringLiteralDfa0_5(){
switch(curChar)
{
case 45:
return jjStartNfaWithStates_5(0, 91, 3);
default :
return jjMoveNfa_5(1, 0);
}
}
private int jjStartNfaWithStates_5(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_5(state, pos + 1);
}
private int jjMoveNfa_5(int startState, int curPos)
{
int startsAt = 0;
jjnewStateCnt = 6;
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 3:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 4;
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 2;
break;
case 1:
if ((0xbfffdfffffffffffL & l) != 0L)
{
if (kind > 88)
kind = 88;
{ jjCheckNAdd(0); }
}
else if (curChar == 45)
{ jjAddStates(400, 401); }
break;
case 0:
if ((0xbfffdfffffffffffL & l) == 0L)
break;
kind = 88;
{ jjCheckNAdd(0); }
break;
case 2:
if (curChar == 62)
kind = 92;
break;
case 5:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 4;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 1:
case 0:
if ((0xffffffffdfffffffL & l) == 0L)
break;
kind = 88;
{ jjCheckNAdd(0); }
break;
case 4:
if (curChar == 93)
kind = 92;
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 1:
case 0:
if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
break;
if (kind > 88)
kind = 88;
{ jjCheckNAdd(0); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 6 - (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)
{
case 0:
if ((active1 & 0x380000L) != 0L)
{
jjmatchedKind = 82;
return -1;
}
return -1;
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 35:
return jjMoveStringLiteralDfa1_1(0x100000L);
case 36:
return jjMoveStringLiteralDfa1_1(0x80000L);
case 91:
return jjMoveStringLiteralDfa1_1(0x200000L);
default :
return jjMoveNfa_1(2, 0);
}
}
private int jjMoveStringLiteralDfa1_1(long active1){
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_1(0, 0L, active1);
return 1;
}
switch(curChar)
{
case 61:
if ((active1 & 0x200000L) != 0L)
return jjStopAtPos(1, 85);
break;
case 123:
if ((active1 & 0x80000L) != 0L)
return jjStopAtPos(1, 83);
else if ((active1 & 0x100000L) != 0L)
return jjStopAtPos(1, 84);
break;
default :
break;
}
return jjStartNfa_1(0, 0L, active1);
}
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 2:
if ((0xefffffe6ffffd9ffL & l) != 0L)
{
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
}
else if ((0x100002600L & l) != 0L)
{
if (kind > 80)
kind = 80;
{ jjCheckNAdd(0); }
}
else if ((0x1000001800000000L & l) != 0L)
{
if (kind > 82)
kind = 82;
}
break;
case 0:
if ((0x100002600L & l) == 0L)
break;
kind = 80;
{ jjCheckNAdd(0); }
break;
case 1:
if ((0xefffffe6ffffd9ffL & l) == 0L)
break;
kind = 81;
{ jjCheckNAdd(1); }
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 2:
if ((0xf7fffffff7ffffffL & l) != 0L)
{
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
}
else if ((0x800000008000000L & l) != 0L)
{
if (kind > 82)
kind = 82;
}
break;
case 1:
if ((0xf7fffffff7ffffffL & l) == 0L)
break;
kind = 81;
{ jjCheckNAdd(1); }
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 2:
case 1:
if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
break;
if (kind > 81)
kind = 81;
{ jjCheckNAdd(1); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else 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_6(int pos, long active0, long active1, long active2){
switch (pos)
{
case 0:
if ((active2 & 0x40L) != 0L)
return 36;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x7000L) != 0L)
{
jjmatchedKind = 143;
return 100;
}
if ((active1 & 0x4001000000000000L) != 0L)
return 40;
if ((active1 & 0x408400000000000L) != 0L)
return 43;
if ((active1 & 0x200000b000000000L) != 0L)
return 50;
return -1;
case 1:
if ((active2 & 0x3000L) != 0L)
return 100;
if ((active1 & 0x200000a000000000L) != 0L)
return 49;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
if (jjmatchedPos != 1)
{
jjmatchedKind = 143;
jjmatchedPos = 1;
}
return 100;
}
return -1;
case 2:
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 2;
return 100;
}
return -1;
case 3:
if ((active1 & 0x200000000L) != 0L)
return 100;
if ((active1 & 0x100000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 3;
return 100;
}
return -1;
default :
return -1;
}
}
private final int jjStartNfa_6(int pos, long active0, long active1, long active2){
return jjMoveNfa_6(jjStopStringLiteralDfa_6(pos, active0, active1, active2), pos + 1);
}
private int jjMoveStringLiteralDfa0_6(){
switch(curChar)
{
case 33:
jjmatchedKind = 130;
return jjMoveStringLiteralDfa1_6(0x100000000000L, 0x0L);
case 37:
jjmatchedKind = 127;
return jjMoveStringLiteralDfa1_6(0x2000000000000L, 0x0L);
case 40:
return jjStopAtPos(0, 136);
case 41:
return jjStopAtPos(0, 137);
case 42:
jjmatchedKind = 123;
return jjMoveStringLiteralDfa1_6(0x1000800000000000L, 0x0L);
case 43:
jjmatchedKind = 121;
return jjMoveStringLiteralDfa1_6(0x4200000000000L, 0x0L);
case 44:
return jjStopAtPos(0, 131);
case 45:
jjmatchedKind = 122;
return jjMoveStringLiteralDfa1_6(0x8400000000000L, 0x0L);
case 46:
jjmatchedKind = 100;
return jjMoveStringLiteralDfa1_6(0x200000a000000000L, 0x0L);
case 47:
jjmatchedKind = 126;
return jjMoveStringLiteralDfa1_6(0x1000000000000L, 0x0L);
case 58:
return jjStopAtPos(0, 133);
case 59:
return jjStopAtPos(0, 132);
case 61:
jjmatchedKind = 106;
return jjMoveStringLiteralDfa1_6(0x80000000000L, 0x0L);
case 62:
return jjStopAtPos(0, 149);
case 63:
jjmatchedKind = 104;
return jjMoveStringLiteralDfa1_6(0x20000000000L, 0x0L);
case 91:
return jjStartNfaWithStates_6(0, 134, 36);
case 93:
return jjStopAtPos(0, 135);
case 97:
return jjMoveStringLiteralDfa1_6(0x0L, 0x2000L);
case 102:
return jjMoveStringLiteralDfa1_6(0x100000000L, 0x0L);
case 105:
return jjMoveStringLiteralDfa1_6(0x0L, 0x1000L);
case 116:
return jjMoveStringLiteralDfa1_6(0x200000000L, 0x0L);
case 117:
return jjMoveStringLiteralDfa1_6(0x0L, 0x4000L);
case 123:
return jjStopAtPos(0, 138);
case 125:
return jjStopAtPos(0, 139);
default :
return jjMoveNfa_6(0, 0);
}
}
private int jjMoveStringLiteralDfa1_6(long active1, long active2){
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_6(0, 0L, active1, active2);
return 1;
}
switch(curChar)
{
case 42:
if ((active1 & 0x1000000000000000L) != 0L)
return jjStopAtPos(1, 124);
break;
case 43:
if ((active1 & 0x4000000000000L) != 0L)
return jjStopAtPos(1, 114);
break;
case 45:
if ((active1 & 0x8000000000000L) != 0L)
return jjStopAtPos(1, 115);
break;
case 46:
if ((active1 & 0x2000000000L) != 0L)
{
jjmatchedKind = 101;
jjmatchedPos = 1;
}
return jjMoveStringLiteralDfa2_6(active1, 0x2000008000000000L, active2, 0L);
case 61:
if ((active1 & 0x80000000000L) != 0L)
return jjStopAtPos(1, 107);
else if ((active1 & 0x100000000000L) != 0L)
return jjStopAtPos(1, 108);
else if ((active1 & 0x200000000000L) != 0L)
return jjStopAtPos(1, 109);
else if ((active1 & 0x400000000000L) != 0L)
return jjStopAtPos(1, 110);
else if ((active1 & 0x800000000000L) != 0L)
return jjStopAtPos(1, 111);
else if ((active1 & 0x1000000000000L) != 0L)
return jjStopAtPos(1, 112);
else if ((active1 & 0x2000000000000L) != 0L)
return jjStopAtPos(1, 113);
break;
case 63:
if ((active1 & 0x20000000000L) != 0L)
return jjStopAtPos(1, 105);
break;
case 97:
return jjMoveStringLiteralDfa2_6(active1, 0x100000000L, active2, 0L);
case 110:
if ((active2 & 0x1000L) != 0L)
return jjStartNfaWithStates_6(1, 140, 100);
break;
case 114:
return jjMoveStringLiteralDfa2_6(active1, 0x200000000L, active2, 0L);
case 115:
if ((active2 & 0x2000L) != 0L)
return jjStartNfaWithStates_6(1, 141, 100);
return jjMoveStringLiteralDfa2_6(active1, 0L, active2, 0x4000L);
default :
break;
}
return jjStartNfa_6(0, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa2_6(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_6(0, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_6(1, 0L, active1, active2);
return 2;
}
switch(curChar)
{
case 42:
if ((active1 & 0x8000000000L) != 0L)
return jjStopAtPos(2, 103);
break;
case 46:
if ((active1 & 0x2000000000000000L) != 0L)
return jjStopAtPos(2, 125);
break;
case 105:
return jjMoveStringLiteralDfa3_6(active1, 0L, active2, 0x4000L);
case 108:
return jjMoveStringLiteralDfa3_6(active1, 0x100000000L, active2, 0L);
case 117:
return jjMoveStringLiteralDfa3_6(active1, 0x200000000L, active2, 0L);
default :
break;
}
return jjStartNfa_6(1, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa3_6(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_6(1, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_6(2, 0L, active1, active2);
return 3;
}
switch(curChar)
{
case 101:
if ((active1 & 0x200000000L) != 0L)
return jjStartNfaWithStates_6(3, 97, 100);
break;
case 110:
return jjMoveStringLiteralDfa4_6(active1, 0L, active2, 0x4000L);
case 115:
return jjMoveStringLiteralDfa4_6(active1, 0x100000000L, active2, 0L);
default :
break;
}
return jjStartNfa_6(2, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa4_6(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_6(2, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_6(3, 0L, active1, active2);
return 4;
}
switch(curChar)
{
case 101:
if ((active1 & 0x100000000L) != 0L)
return jjStartNfaWithStates_6(4, 96, 100);
break;
case 103:
if ((active2 & 0x4000L) != 0L)
return jjStartNfaWithStates_6(4, 142, 100);
break;
default :
break;
}
return jjStartNfa_6(3, 0L, active1, active2);
}
private int jjStartNfaWithStates_6(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_6(state, pos + 1);
}
private int jjMoveNfa_6(int startState, int curPos)
{
int startsAt = 0;
jjnewStateCnt = 100;
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 43:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 46;
else if (curChar == 62)
{
if (kind > 120)
kind = 120;
}
break;
case 40:
if (curChar == 62 && kind > 150)
kind = 150;
break;
case 49:
if (curChar == 33)
{
if (kind > 102)
kind = 102;
}
else if (curChar == 60)
{
if (kind > 102)
kind = 102;
}
break;
case 50:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 51;
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 49;
break;
case 100:
case 29:
if ((0x3ff001000000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
break;
case 0:
if ((0x3ff000000000000L & l) != 0L)
{
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(402, 404); }
}
else if ((0x100002600L & l) != 0L)
{
if (kind > 153)
kind = 153;
{ jjCheckNAdd(38); }
}
else if (curChar == 38)
{ jjAddStates(405, 410); }
else if (curChar == 46)
{ jjAddStates(411, 412); }
else if (curChar == 45)
{ jjAddStates(413, 414); }
else if (curChar == 47)
{ jjAddStates(415, 416); }
else if (curChar == 35)
{ jjCheckNAdd(33); }
else if (curChar == 36)
{ jjCheckNAdd(33); }
else if (curChar == 60)
{ jjCheckNAdd(22); }
else if (curChar == 39)
{ jjCheckNAddStates(417, 419); }
else if (curChar == 34)
{ jjCheckNAddStates(420, 422); }
if (curChar == 36)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
}
else if (curChar == 38)
{
if (kind > 128)
kind = 128;
}
else if (curChar == 60)
{
if (kind > 116)
kind = 116;
}
break;
case 1:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddStates(420, 422); }
break;
case 4:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(420, 422); }
break;
case 5:
if (curChar == 34 && kind > 94)
kind = 94;
break;
case 6:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(420, 422); }
break;
case 7:
if (curChar == 39)
{ jjCheckNAddStates(417, 419); }
break;
case 8:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddStates(417, 419); }
break;
case 11:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(417, 419); }
break;
case 12:
if (curChar == 39 && kind > 94)
kind = 94;
break;
case 13:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(417, 419); }
break;
case 15:
if (curChar == 34)
{ jjCheckNAddTwoStates(16, 17); }
break;
case 16:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(16, 17); }
break;
case 17:
if (curChar == 34 && kind > 95)
kind = 95;
break;
case 18:
if (curChar == 39)
{ jjCheckNAddTwoStates(19, 20); }
break;
case 19:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(19, 20); }
break;
case 20:
if (curChar == 39 && kind > 95)
kind = 95;
break;
case 21:
if (curChar == 60 && kind > 116)
kind = 116;
break;
case 22:
if (curChar == 61 && kind > 117)
kind = 117;
break;
case 23:
if (curChar == 60)
{ jjCheckNAdd(22); }
break;
case 24:
case 88:
if (curChar == 38 && kind > 128)
kind = 128;
break;
case 28:
if (curChar != 36)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
break;
case 31:
if ((0x400600800000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
break;
case 34:
if (curChar == 36)
{ jjCheckNAdd(33); }
break;
case 35:
if (curChar == 35)
{ jjCheckNAdd(33); }
break;
case 36:
if (curChar == 61 && kind > 144)
kind = 144;
break;
case 38:
if ((0x100002600L & l) == 0L)
break;
if (kind > 153)
kind = 153;
{ jjCheckNAdd(38); }
break;
case 39:
if (curChar == 47)
{ jjAddStates(415, 416); }
break;
case 42:
if (curChar == 45)
{ jjAddStates(413, 414); }
break;
case 44:
if (curChar == 59 && kind > 120)
kind = 120;
break;
case 47:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 46;
break;
case 48:
if (curChar == 46)
{ jjAddStates(411, 412); }
break;
case 51:
if (curChar == 33 && kind > 102)
kind = 102;
break;
case 52:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 51;
break;
case 53:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(402, 404); }
break;
case 54:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAdd(54); }
break;
case 55:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddTwoStates(55, 56); }
break;
case 56:
if (curChar == 46)
{ jjCheckNAdd(57); }
break;
case 57:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 99)
kind = 99;
{ jjCheckNAdd(57); }
break;
case 74:
if (curChar == 38)
{ jjAddStates(405, 410); }
break;
case 75:
if (curChar == 59 && kind > 116)
kind = 116;
break;
case 78:
if (curChar == 59)
{ jjCheckNAdd(22); }
break;
case 81:
if (curChar == 59 && kind > 118)
kind = 118;
break;
case 84:
if (curChar == 61 && kind > 119)
kind = 119;
break;
case 85:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 84;
break;
case 89:
if (curChar == 59 && kind > 128)
kind = 128;
break;
case 93:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 92;
break;
case 94:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 93;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 40:
if (curChar == 93 && kind > 150)
kind = 150;
break;
case 100:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
}
else if (curChar == 92)
{ jjCheckNAdd(31); }
break;
case 0:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
}
else if (curChar == 92)
{ jjAddStates(423, 427); }
else if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 36;
else if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 26;
if (curChar == 103)
{ jjCheckNAddTwoStates(66, 99); }
else if (curChar == 108)
{ jjCheckNAddTwoStates(59, 61); }
else if (curChar == 92)
{ jjCheckNAdd(31); }
else if (curChar == 124)
{
if (kind > 129)
kind = 129;
}
else if (curChar == 114)
{ jjAddStates(376, 377); }
break;
case 1:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(420, 422); }
break;
case 2:
if (curChar == 92)
{ jjAddStates(428, 429); }
break;
case 3:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 4;
break;
case 4:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(420, 422); }
break;
case 6:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(420, 422); }
break;
case 8:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(417, 419); }
break;
case 9:
if (curChar == 92)
{ jjAddStates(430, 431); }
break;
case 10:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 11;
break;
case 11:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(417, 419); }
break;
case 13:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(417, 419); }
break;
case 14:
if (curChar == 114)
{ jjAddStates(376, 377); }
break;
case 16:
{ jjAddStates(432, 433); }
break;
case 19:
{ jjAddStates(434, 435); }
break;
case 25:
case 26:
if (curChar == 124 && kind > 129)
kind = 129;
break;
case 27:
if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 26;
break;
case 28:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
break;
case 29:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
break;
case 30:
if (curChar == 92)
{ jjCheckNAdd(31); }
break;
case 32:
if (curChar == 92)
{ jjCheckNAdd(31); }
break;
case 33:
if (curChar == 123 && kind > 144)
kind = 144;
break;
case 37:
if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 36;
break;
case 45:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 44;
break;
case 46:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 45;
break;
case 58:
if (curChar == 108)
{ jjCheckNAddTwoStates(59, 61); }
break;
case 59:
if (curChar == 116 && kind > 116)
kind = 116;
break;
case 60:
if (curChar == 101 && kind > 117)
kind = 117;
break;
case 61:
case 64:
if (curChar == 116)
{ jjCheckNAdd(60); }
break;
case 62:
if (curChar == 92)
{ jjAddStates(423, 427); }
break;
case 63:
if (curChar == 108)
{ jjCheckNAdd(59); }
break;
case 65:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 64;
break;
case 66:
if (curChar == 116 && kind > 118)
kind = 118;
break;
case 67:
if (curChar == 103)
{ jjCheckNAdd(66); }
break;
case 68:
if (curChar == 101 && kind > 119)
kind = 119;
break;
case 69:
case 99:
if (curChar == 116)
{ jjCheckNAdd(68); }
break;
case 70:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 69;
break;
case 71:
if (curChar == 100 && kind > 128)
kind = 128;
break;
case 72:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 71;
break;
case 73:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 72;
break;
case 76:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 75;
break;
case 77:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 76;
break;
case 79:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 78;
break;
case 80:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 79;
break;
case 82:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 81;
break;
case 83:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 82;
break;
case 86:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 85;
break;
case 87:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 86;
break;
case 90:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 89;
break;
case 91:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 90;
break;
case 92:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 91;
break;
case 95:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 94;
break;
case 96:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 95;
break;
case 97:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 96;
break;
case 98:
if (curChar == 103)
{ jjCheckNAddTwoStates(66, 99); }
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 100:
case 29:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
break;
case 0:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(29, 30); }
break;
case 1:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(420, 422); }
break;
case 8:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(417, 419); }
break;
case 16:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(432, 433); }
break;
case 19:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(434, 435); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 100 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
private final int jjStopStringLiteralDfa_4(int pos, long active0, long active1, long active2){
switch (pos)
{
case 0:
if ((active2 & 0x40L) != 0L)
return 2;
if ((active1 & 0x4001000000000000L) != 0L)
return 46;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x7000L) != 0L)
{
jjmatchedKind = 143;
return 106;
}
if ((active1 & 0x200000b000000000L) != 0L)
return 56;
if ((active1 & 0x408400000000000L) != 0L)
return 49;
if ((active1 & 0x100000000000L) != 0L || (active2 & 0x4L) != 0L)
return 44;
return -1;
case 1:
if ((active2 & 0x3000L) != 0L)
return 106;
if ((active1 & 0x200000a000000000L) != 0L)
return 55;
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
if (jjmatchedPos != 1)
{
jjmatchedKind = 143;
jjmatchedPos = 1;
}
return 106;
}
return -1;
case 2:
if ((active1 & 0x300000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 2;
return 106;
}
return -1;
case 3:
if ((active1 & 0x200000000L) != 0L)
return 106;
if ((active1 & 0x100000000L) != 0L || (active2 & 0x4000L) != 0L)
{
jjmatchedKind = 143;
jjmatchedPos = 3;
return 106;
}
return -1;
default :
return -1;
}
}
private final int jjStartNfa_4(int pos, long active0, long active1, long active2){
return jjMoveNfa_4(jjStopStringLiteralDfa_4(pos, active0, active1, active2), pos + 1);
}
private int jjMoveStringLiteralDfa0_4(){
switch(curChar)
{
case 33:
jjmatchedKind = 130;
return jjMoveStringLiteralDfa1_4(0x100000000000L, 0x0L);
case 37:
jjmatchedKind = 127;
return jjMoveStringLiteralDfa1_4(0x2000000000000L, 0x0L);
case 40:
return jjStopAtPos(0, 136);
case 41:
return jjStopAtPos(0, 137);
case 42:
jjmatchedKind = 123;
return jjMoveStringLiteralDfa1_4(0x1000800000000000L, 0x0L);
case 43:
jjmatchedKind = 121;
return jjMoveStringLiteralDfa1_4(0x4200000000000L, 0x0L);
case 44:
return jjStopAtPos(0, 131);
case 45:
jjmatchedKind = 122;
return jjMoveStringLiteralDfa1_4(0x8400000000000L, 0x0L);
case 46:
jjmatchedKind = 100;
return jjMoveStringLiteralDfa1_4(0x200000a000000000L, 0x0L);
case 47:
jjmatchedKind = 126;
return jjMoveStringLiteralDfa1_4(0x1000000000000L, 0x0L);
case 58:
return jjStopAtPos(0, 133);
case 59:
return jjStopAtPos(0, 132);
case 61:
jjmatchedKind = 106;
return jjMoveStringLiteralDfa1_4(0x80000000000L, 0x0L);
case 62:
return jjStopAtPos(0, 149);
case 63:
jjmatchedKind = 104;
return jjMoveStringLiteralDfa1_4(0x20000000000L, 0x0L);
case 91:
return jjStartNfaWithStates_4(0, 134, 2);
case 93:
return jjStopAtPos(0, 135);
case 97:
return jjMoveStringLiteralDfa1_4(0x0L, 0x2000L);
case 102:
return jjMoveStringLiteralDfa1_4(0x100000000L, 0x0L);
case 105:
return jjMoveStringLiteralDfa1_4(0x0L, 0x1000L);
case 116:
return jjMoveStringLiteralDfa1_4(0x200000000L, 0x0L);
case 117:
return jjMoveStringLiteralDfa1_4(0x0L, 0x4000L);
case 123:
return jjStopAtPos(0, 138);
case 125:
return jjStopAtPos(0, 139);
default :
return jjMoveNfa_4(1, 0);
}
}
private int jjMoveStringLiteralDfa1_4(long active1, long active2){
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_4(0, 0L, active1, active2);
return 1;
}
switch(curChar)
{
case 42:
if ((active1 & 0x1000000000000000L) != 0L)
return jjStopAtPos(1, 124);
break;
case 43:
if ((active1 & 0x4000000000000L) != 0L)
return jjStopAtPos(1, 114);
break;
case 45:
if ((active1 & 0x8000000000000L) != 0L)
return jjStopAtPos(1, 115);
break;
case 46:
if ((active1 & 0x2000000000L) != 0L)
{
jjmatchedKind = 101;
jjmatchedPos = 1;
}
return jjMoveStringLiteralDfa2_4(active1, 0x2000008000000000L, active2, 0L);
case 61:
if ((active1 & 0x80000000000L) != 0L)
return jjStopAtPos(1, 107);
else if ((active1 & 0x100000000000L) != 0L)
return jjStopAtPos(1, 108);
else if ((active1 & 0x200000000000L) != 0L)
return jjStopAtPos(1, 109);
else if ((active1 & 0x400000000000L) != 0L)
return jjStopAtPos(1, 110);
else if ((active1 & 0x800000000000L) != 0L)
return jjStopAtPos(1, 111);
else if ((active1 & 0x1000000000000L) != 0L)
return jjStopAtPos(1, 112);
else if ((active1 & 0x2000000000000L) != 0L)
return jjStopAtPos(1, 113);
break;
case 63:
if ((active1 & 0x20000000000L) != 0L)
return jjStopAtPos(1, 105);
break;
case 97:
return jjMoveStringLiteralDfa2_4(active1, 0x100000000L, active2, 0L);
case 110:
if ((active2 & 0x1000L) != 0L)
return jjStartNfaWithStates_4(1, 140, 106);
break;
case 114:
return jjMoveStringLiteralDfa2_4(active1, 0x200000000L, active2, 0L);
case 115:
if ((active2 & 0x2000L) != 0L)
return jjStartNfaWithStates_4(1, 141, 106);
return jjMoveStringLiteralDfa2_4(active1, 0L, active2, 0x4000L);
default :
break;
}
return jjStartNfa_4(0, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa2_4(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_4(0, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_4(1, 0L, active1, active2);
return 2;
}
switch(curChar)
{
case 42:
if ((active1 & 0x8000000000L) != 0L)
return jjStopAtPos(2, 103);
break;
case 46:
if ((active1 & 0x2000000000000000L) != 0L)
return jjStopAtPos(2, 125);
break;
case 105:
return jjMoveStringLiteralDfa3_4(active1, 0L, active2, 0x4000L);
case 108:
return jjMoveStringLiteralDfa3_4(active1, 0x100000000L, active2, 0L);
case 117:
return jjMoveStringLiteralDfa3_4(active1, 0x200000000L, active2, 0L);
default :
break;
}
return jjStartNfa_4(1, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa3_4(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_4(1, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_4(2, 0L, active1, active2);
return 3;
}
switch(curChar)
{
case 101:
if ((active1 & 0x200000000L) != 0L)
return jjStartNfaWithStates_4(3, 97, 106);
break;
case 110:
return jjMoveStringLiteralDfa4_4(active1, 0L, active2, 0x4000L);
case 115:
return jjMoveStringLiteralDfa4_4(active1, 0x100000000L, active2, 0L);
default :
break;
}
return jjStartNfa_4(2, 0L, active1, active2);
}
private int jjMoveStringLiteralDfa4_4(long old1, long active1, long old2, long active2){
if (((active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_4(2, 0L, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_4(3, 0L, active1, active2);
return 4;
}
switch(curChar)
{
case 101:
if ((active1 & 0x100000000L) != 0L)
return jjStartNfaWithStates_4(4, 96, 106);
break;
case 103:
if ((active2 & 0x4000L) != 0L)
return jjStartNfaWithStates_4(4, 142, 106);
break;
default :
break;
}
return jjStartNfa_4(3, 0L, active1, active2);
}
private int jjStartNfaWithStates_4(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_4(state, pos + 1);
}
private int jjMoveNfa_4(int startState, int curPos)
{
int startsAt = 0;
jjnewStateCnt = 106;
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 46:
if (curChar == 62 && kind > 150)
kind = 150;
break;
case 56:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 57;
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 55;
break;
case 49:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 52;
else if (curChar == 62)
{
if (kind > 120)
kind = 120;
}
break;
case 1:
if ((0x3ff000000000000L & l) != 0L)
{
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(436, 438); }
}
else if ((0x100002600L & l) != 0L)
{
if (kind > 86)
kind = 86;
{ jjCheckNAdd(0); }
}
else if (curChar == 38)
{ jjAddStates(439, 444); }
else if (curChar == 46)
{ jjAddStates(445, 446); }
else if (curChar == 45)
{ jjAddStates(447, 448); }
else if (curChar == 47)
{ jjAddStates(449, 450); }
else if (curChar == 33)
{ jjCheckNAdd(44); }
else if (curChar == 35)
{ jjCheckNAdd(38); }
else if (curChar == 36)
{ jjCheckNAdd(38); }
else if (curChar == 60)
{ jjCheckNAdd(27); }
else if (curChar == 39)
{ jjCheckNAddStates(361, 363); }
else if (curChar == 34)
{ jjCheckNAddStates(364, 366); }
if (curChar == 36)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 38)
{
if (kind > 128)
kind = 128;
}
else if (curChar == 60)
{
if (kind > 116)
kind = 116;
}
if (curChar == 60)
jjstateSet[jjnewStateCnt++] = 2;
break;
case 2:
if ((0xa00000000L & l) != 0L)
jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 61)
{
if (kind > 144)
kind = 144;
}
break;
case 55:
if (curChar == 33)
{
if (kind > 102)
kind = 102;
}
else if (curChar == 60)
{
if (kind > 102)
kind = 102;
}
break;
case 106:
case 34:
if ((0x3ff001000000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 0:
if ((0x100002600L & l) == 0L)
break;
if (kind > 86)
kind = 86;
{ jjCheckNAdd(0); }
break;
case 3:
if (curChar == 45 && kind > 87)
kind = 87;
break;
case 4:
if (curChar == 45)
jjstateSet[jjnewStateCnt++] = 3;
break;
case 5:
if (curChar == 34)
{ jjCheckNAddStates(364, 366); }
break;
case 6:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 9:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 10:
if (curChar == 34 && kind > 94)
kind = 94;
break;
case 11:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 12:
if (curChar == 39)
{ jjCheckNAddStates(361, 363); }
break;
case 13:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 16:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 17:
if (curChar == 39 && kind > 94)
kind = 94;
break;
case 18:
if ((0x2000008400000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 20:
if (curChar == 34)
{ jjCheckNAddTwoStates(21, 22); }
break;
case 21:
if ((0xfffffffbffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(21, 22); }
break;
case 22:
if (curChar == 34 && kind > 95)
kind = 95;
break;
case 23:
if (curChar == 39)
{ jjCheckNAddTwoStates(24, 25); }
break;
case 24:
if ((0xffffff7fffffffffL & l) != 0L)
{ jjCheckNAddTwoStates(24, 25); }
break;
case 25:
if (curChar == 39 && kind > 95)
kind = 95;
break;
case 26:
if (curChar == 60 && kind > 116)
kind = 116;
break;
case 27:
if (curChar == 61 && kind > 117)
kind = 117;
break;
case 28:
if (curChar == 60)
{ jjCheckNAdd(27); }
break;
case 29:
case 94:
if (curChar == 38 && kind > 128)
kind = 128;
break;
case 33:
if (curChar != 36)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 36:
if ((0x400600800000000L & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 39:
if (curChar == 36)
{ jjCheckNAdd(38); }
break;
case 40:
if (curChar == 35)
{ jjCheckNAdd(38); }
break;
case 41:
if (curChar == 61 && kind > 144)
kind = 144;
break;
case 43:
if (curChar == 33)
{ jjCheckNAdd(44); }
break;
case 44:
if ((0x100002600L & l) == 0L)
break;
if (kind > 154)
kind = 154;
{ jjCheckNAdd(44); }
break;
case 45:
if (curChar == 47)
{ jjAddStates(449, 450); }
break;
case 48:
if (curChar == 45)
{ jjAddStates(447, 448); }
break;
case 50:
if (curChar == 59 && kind > 120)
kind = 120;
break;
case 53:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 52;
break;
case 54:
if (curChar == 46)
{ jjAddStates(445, 446); }
break;
case 57:
if (curChar == 33 && kind > 102)
kind = 102;
break;
case 58:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 57;
break;
case 59:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAddStates(436, 438); }
break;
case 60:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 98)
kind = 98;
{ jjCheckNAdd(60); }
break;
case 61:
if ((0x3ff000000000000L & l) != 0L)
{ jjCheckNAddTwoStates(61, 62); }
break;
case 62:
if (curChar == 46)
{ jjCheckNAdd(63); }
break;
case 63:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 99)
kind = 99;
{ jjCheckNAdd(63); }
break;
case 80:
if (curChar == 38)
{ jjAddStates(439, 444); }
break;
case 81:
if (curChar == 59 && kind > 116)
kind = 116;
break;
case 84:
if (curChar == 59)
{ jjCheckNAdd(27); }
break;
case 87:
if (curChar == 59 && kind > 118)
kind = 118;
break;
case 90:
if (curChar == 61 && kind > 119)
kind = 119;
break;
case 91:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 90;
break;
case 95:
if (curChar == 59 && kind > 128)
kind = 128;
break;
case 99:
if (curChar == 38)
jjstateSet[jjnewStateCnt++] = 98;
break;
case 100:
if (curChar == 59)
jjstateSet[jjnewStateCnt++] = 99;
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 46:
if (curChar == 93 && kind > 150)
kind = 150;
break;
case 1:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 92)
{ jjAddStates(451, 455); }
else if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 41;
else if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 31;
if (curChar == 103)
{ jjCheckNAddTwoStates(72, 105); }
else if (curChar == 108)
{ jjCheckNAddTwoStates(65, 67); }
else if (curChar == 92)
{ jjCheckNAdd(36); }
else if (curChar == 124)
{
if (kind > 129)
kind = 129;
}
else if (curChar == 114)
{ jjAddStates(372, 373); }
else if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 2;
break;
case 106:
if ((0x7fffffe87ffffffL & l) != 0L)
{
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
}
else if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 6:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 7:
if (curChar == 92)
{ jjAddStates(374, 375); }
break;
case 8:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 9;
break;
case 9:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 11:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(364, 366); }
break;
case 13:
if ((0xffffffffefffffffL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 14:
if (curChar == 92)
{ jjAddStates(376, 377); }
break;
case 15:
if (curChar == 120)
jjstateSet[jjnewStateCnt++] = 16;
break;
case 16:
if ((0x7e0000007eL & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 18:
if ((0x81450c610000000L & l) != 0L)
{ jjCheckNAddStates(361, 363); }
break;
case 19:
if (curChar == 114)
{ jjAddStates(372, 373); }
break;
case 21:
{ jjAddStates(378, 379); }
break;
case 24:
{ jjAddStates(380, 381); }
break;
case 30:
case 31:
if (curChar == 124 && kind > 129)
kind = 129;
break;
case 32:
if (curChar == 124)
jjstateSet[jjnewStateCnt++] = 31;
break;
case 33:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 34:
if ((0x7fffffe87ffffffL & l) == 0L)
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 35:
if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 37:
if (curChar == 92)
{ jjCheckNAdd(36); }
break;
case 38:
if (curChar == 123 && kind > 144)
kind = 144;
break;
case 42:
if (curChar == 91)
jjstateSet[jjnewStateCnt++] = 41;
break;
case 51:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 50;
break;
case 52:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 51;
break;
case 64:
if (curChar == 108)
{ jjCheckNAddTwoStates(65, 67); }
break;
case 65:
if (curChar == 116 && kind > 116)
kind = 116;
break;
case 66:
if (curChar == 101 && kind > 117)
kind = 117;
break;
case 67:
case 70:
if (curChar == 116)
{ jjCheckNAdd(66); }
break;
case 68:
if (curChar == 92)
{ jjAddStates(451, 455); }
break;
case 69:
if (curChar == 108)
{ jjCheckNAdd(65); }
break;
case 71:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 70;
break;
case 72:
if (curChar == 116 && kind > 118)
kind = 118;
break;
case 73:
if (curChar == 103)
{ jjCheckNAdd(72); }
break;
case 74:
if (curChar == 101 && kind > 119)
kind = 119;
break;
case 75:
case 105:
if (curChar == 116)
{ jjCheckNAdd(74); }
break;
case 76:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 75;
break;
case 77:
if (curChar == 100 && kind > 128)
kind = 128;
break;
case 78:
if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 77;
break;
case 79:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 78;
break;
case 82:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 81;
break;
case 83:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 82;
break;
case 85:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 84;
break;
case 86:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 85;
break;
case 88:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 87;
break;
case 89:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 88;
break;
case 92:
if (curChar == 116)
jjstateSet[jjnewStateCnt++] = 91;
break;
case 93:
if (curChar == 103)
jjstateSet[jjnewStateCnt++] = 92;
break;
case 96:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 95;
break;
case 97:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 96;
break;
case 98:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 97;
break;
case 101:
if (curChar == 112)
jjstateSet[jjnewStateCnt++] = 100;
break;
case 102:
if (curChar == 109)
jjstateSet[jjnewStateCnt++] = 101;
break;
case 103:
if (curChar == 97)
jjstateSet[jjnewStateCnt++] = 102;
break;
case 104:
if (curChar == 103)
{ jjCheckNAddTwoStates(72, 105); }
break;
default : break;
}
} while(i != startsAt);
}
else
{
int hiByte = (curChar >> 8);
int i1 = hiByte >> 6;
long l1 = 1L << (hiByte & 077);
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
do
{
switch(jjstateSet[--i])
{
case 1:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 106:
case 34:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
if (kind > 143)
kind = 143;
{ jjCheckNAddTwoStates(34, 35); }
break;
case 6:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(364, 366); }
break;
case 13:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(361, 363); }
break;
case 21:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(378, 379); }
break;
case 24:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
{ jjAddStates(380, 381); }
break;
default : if (i1 == 0 || l1 == 0 || i2 == 0 || l2 == 0) break; else break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 106 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
/** Token literal values. */
public static final String[] jjstrLiteralImages = {
"", 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,
"\44\173", "\43\173", "\133\75", null, null, null, null, null, null, null, null, null,
null, "\146\141\154\163\145", "\164\162\165\145", null, null, "\56", "\56\56", null,
"\56\56\52", "\77", "\77\77", "\75", "\75\75", "\41\75", "\53\75", "\55\75", "\52\75",
"\57\75", "\45\75", "\53\53", "\55\55", null, null, null, null, null, "\53", "\55",
"\52", "\52\52", "\56\56\56", "\57", "\45", null, null, "\41", "\54", "\73", "\72",
"\133", "\135", "\50", "\51", "\173", "\175", "\151\156", "\141\163",
"\165\163\151\156\147", null, null, null, null, null, null, "\76", null, "\76", "\76\75", 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;
}
static final int[] jjnextStates = {
10, 12, 4, 5, 3, 4, 5, 701, 716, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
395, 396, 397, 398, 399, 400, 401, 402, 408, 409, 417, 418, 427, 428, 435, 436,
447, 448, 459, 460, 471, 472, 481, 482, 492, 493, 503, 504, 516, 517, 526, 527,
543, 544, 555, 556, 574, 575, 587, 588, 601, 602, 612, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 640, 641, 642,
654, 655, 660, 666, 667, 669, 12, 21, 24, 31, 36, 45, 50, 58, 65, 70,
73, 80, 87, 93, 101, 108, 117, 123, 133, 139, 144, 151, 156, 164, 177, 186,
202, 212, 221, 230, 237, 245, 256, 265, 272, 280, 281, 289, 294, 299, 308, 317,
324, 334, 342, 353, 360, 370, 5, 6, 14, 15, 38, 41, 47, 48, 181, 182,
190, 191, 204, 205, 214, 215, 225, 226, 232, 233, 234, 239, 240, 241, 247, 248,
249, 258, 259, 260, 267, 268, 269, 274, 275, 276, 282, 283, 284, 286, 287, 288,
291, 292, 293, 296, 297, 298, 301, 302, 310, 311, 312, 326, 327, 328, 344, 345,
346, 364, 365, 404, 405, 411, 412, 420, 421, 430, 431, 438, 439, 450, 451, 464,
465, 474, 475, 484, 485, 495, 496, 506, 507, 519, 520, 531, 532, 548, 549, 560,
561, 577, 578, 590, 591, 604, 605, 632, 633, 646, 647, 704, 705, 707, 712, 713,
708, 714, 707, 709, 710, 712, 713, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
397, 398, 399, 400, 401, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681,
682, 683, 684, 685, 686, 687, 688, 613, 614, 615, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 689, 641, 690, 655, 693, 696, 667, 697,
196, 201, 566, 571, 662, 663, 703, 715, 712, 713, 58, 59, 60, 81, 84, 87,
91, 92, 101, 54, 56, 47, 51, 44, 45, 13, 14, 17, 6, 7, 10, 67,
69, 71, 74, 77, 20, 23, 8, 11, 15, 18, 21, 22, 24, 25, 55, 56,
57, 78, 81, 84, 88, 89, 98, 51, 53, 44, 48, 64, 66, 68, 71, 74,
3, 5, 54, 55, 56, 77, 80, 83, 87, 88, 97, 50, 52, 43, 47, 40,
41, 8, 9, 12, 1, 2, 5, 63, 65, 67, 70, 73, 3, 6, 10, 13,
16, 17, 19, 20, 60, 61, 62, 83, 86, 89, 93, 94, 103, 56, 58, 49,
53, 46, 47, 69, 71, 73, 76, 79,
};
private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
{
switch(hiByte)
{
case 0:
return ((jjbitVec2[i2] & l2) != 0L);
default :
if ((jjbitVec0[i1] & l1) != 0L)
return true;
return false;
}
}
private static final boolean jjCanMove_1(int hiByte, int i1, int i2, long l1, long l2)
{
switch(hiByte)
{
case 0:
return ((jjbitVec4[i2] & l2) != 0L);
case 32:
return ((jjbitVec5[i2] & l2) != 0L);
case 33:
return ((jjbitVec6[i2] & l2) != 0L);
case 44:
return ((jjbitVec7[i2] & l2) != 0L);
case 45:
return ((jjbitVec8[i2] & l2) != 0L);
case 46:
return ((jjbitVec9[i2] & l2) != 0L);
case 48:
return ((jjbitVec10[i2] & l2) != 0L);
case 49:
return ((jjbitVec11[i2] & l2) != 0L);
case 51:
return ((jjbitVec12[i2] & l2) != 0L);
case 77:
return ((jjbitVec13[i2] & l2) != 0L);
case 164:
return ((jjbitVec14[i2] & l2) != 0L);
case 166:
return ((jjbitVec15[i2] & l2) != 0L);
case 167:
return ((jjbitVec16[i2] & l2) != 0L);
case 168:
return ((jjbitVec17[i2] & l2) != 0L);
case 169:
return ((jjbitVec18[i2] & l2) != 0L);
case 170:
return ((jjbitVec19[i2] & l2) != 0L);
case 171:
return ((jjbitVec20[i2] & l2) != 0L);
case 215:
return ((jjbitVec21[i2] & l2) != 0L);
case 251:
return ((jjbitVec22[i2] & l2) != 0L);
case 253:
return ((jjbitVec23[i2] & l2) != 0L);
case 254:
return ((jjbitVec24[i2] & l2) != 0L);
case 255:
return ((jjbitVec25[i2] & l2) != 0L);
default :
if ((jjbitVec3[i1] & l1) != 0L)
return true;
return false;
}
}
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(Exception e)
{
jjmatchedKind = 0;
jjmatchedPos = -1;
matchedToken = jjFillToken();
return matchedToken;
}
image = jjimage;
image.setLength(0);
jjimageLen = 0;
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;
case 3:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_3();
break;
case 4:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_4();
break;
case 5:
try { input_stream.backup(0);
while ((curChar < 64 && (0x4000000000000000L & (1L << curChar)) != 0L) ||
(curChar >> 6) == 1 && (0x20000000L & (1L << (curChar & 077))) != 0L)
curChar = input_stream.BeginToken();
}
catch (java.io.IOException e1) { continue EOFLoop; }
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_5();
break;
case 6:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_6();
break;
case 7:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_7();
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];
return matchedToken;
}
else
{
SkipLexicalActions(null);
if (jjnewLexState[jjmatchedKind] != -1)
curLexState = jjnewLexState[jjmatchedKind];
continue EOFLoop;
}
}
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 SkipLexicalActions(Token matchedToken)
{
switch(jjmatchedKind)
{
case 92 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
if (parenthesisNesting > 0) SwitchTo(IN_PAREN);
else if (inInvocation) SwitchTo(NAMED_PARAMETER_EXPRESSION);
else SwitchTo(FM_EXPRESSION);
break;
default :
break;
}
}
void MoreLexicalActions()
{
jjimageLen += (lengthOfMatch = jjmatchedPos + 1);
switch(jjmatchedKind)
{
default :
break;
}
}
void TokenLexicalActions(Token matchedToken)
{
switch(jjmatchedKind)
{
case 6 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 7 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 8 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 9 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 4), FM_EXPRESSION);
break;
case 10 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 11 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 12 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
if (incompatibleImprovements >= _VersionInts.V_2_3_34) handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 13 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 3), FM_EXPRESSION);
break;
case 14 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 15 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 16 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 17 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 18 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 19 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 20 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 21 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 22 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 23 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 24 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 25 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 26 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 27 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 28 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 29 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 30 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 6), FM_EXPRESSION);
break;
case 31 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 4), DEFAULT);
break;
case 32 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
break;
case 33 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 34 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, NO_PARSE); noparseTag = "comment";
break;
case 35 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
noparseTag = "-->"; handleTagSyntaxAndSwitch(matchedToken, NO_PARSE);
break;
case 36 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
int tagNamingConvention = getTagNamingConvention(matchedToken, 2);
handleTagSyntaxAndSwitch(matchedToken, tagNamingConvention, NO_PARSE);
noparseTag = tagNamingConvention == Configuration.CAMEL_CASE_NAMING_CONVENTION ? "noParse" : "noparse";
break;
case 37 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 38 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 39 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 40 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 41 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 42 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 43 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 3), DEFAULT);
break;
case 44 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 45 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 46 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 47 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 48 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 49 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 6), DEFAULT);
break;
case 50 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 4), DEFAULT);
break;
case 51 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
break;
case 52 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 53 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 54 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 55 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 56 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 57 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 58 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 59 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 60 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 61 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 62 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 63 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 64 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 65 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 66 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 67 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 68 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 69 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 70 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 71 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, FM_EXPRESSION);
break;
case 72 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, DEFAULT);
break;
case 73 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
break;
case 74 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
handleTagSyntaxAndSwitch(matchedToken, getTagNamingConvention(matchedToken, 2), DEFAULT);
break;
case 75 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
unifiedCall(matchedToken);
break;
case 76 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
unifiedCallEnd(matchedToken);
break;
case 77 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
ftlHeader(matchedToken);
break;
case 78 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
ftlHeader(matchedToken);
break;
case 79 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
if (!tagSyntaxEstablished && incompatibleImprovements < _VersionInts.V_2_3_19) {
matchedToken.kind = STATIC_TEXT_NON_WS;
} else {
char firstChar = matchedToken.image.charAt(0);
if (!tagSyntaxEstablished && autodetectTagSyntax) {
squBracTagSyntax = (firstChar == '[');
tagSyntaxEstablished = true;
}
if (firstChar == '<' && squBracTagSyntax) {
matchedToken.kind = STATIC_TEXT_NON_WS;
} else if (firstChar == '[' && !squBracTagSyntax) {
matchedToken.kind = STATIC_TEXT_NON_WS;
} else if (strictSyntaxMode) {
String dn = matchedToken.image;
int index = dn.indexOf('#');
dn = dn.substring(index + 1);
// Until the tokenizer/parser is reworked, we have this quirk where something like <#list>
// doesn't match any directive starter tokens, because that token requires whitespace after the
// name as it should be followed by parameters. For now we work this around so we don't report
// unknown directive:
if (_CoreAPI.ALL_BUILT_IN_DIRECTIVE_NAMES.contains(dn)) {
throw new TokenMgrError(
"#" + dn + " is an existing directive, but the tag is malformed. "
+ " (See FreeMarker Manual / Directive Reference.)",
TokenMgrError.LEXICAL_ERROR,
matchedToken.beginLine, matchedToken.beginColumn + 1,
matchedToken.endLine, matchedToken.endColumn);
}
String tip = null;
if (dn.equals("set") || dn.equals("var")) {
tip = "Use #assign or #local or #global, depending on the intented scope "
+ "(#assign is template-scope). " + PLANNED_DIRECTIVE_HINT;
} else if (dn.equals("else_if") || dn.equals("elif")) {
tip = "Use #elseif.";
} else if (dn.equals("no_escape")) {
tip = "Use #noescape instead.";
} else if (dn.equals("method")) {
tip = "Use #function instead.";
} else if (dn.equals("head") || dn.equals("template") || dn.equals("fm")) {
tip = "You may meant #ftl.";
} else if (dn.equals("try") || dn.equals("atempt")) {
tip = "You may meant #attempt.";
} else if (dn.equals("for") || dn.equals("each") || dn.equals("iterate") || dn.equals("iterator")) {
tip = "You may meant #list (http://freemarker.org/docs/ref_directive_list.html).";
} else if (dn.equals("prefix")) {
tip = "You may meant #import. " + PLANNED_DIRECTIVE_HINT;
} else if (dn.equals("item") || dn.equals("row") || dn.equals("rows")) {
tip = "You may meant #items.";
} else if (dn.equals("separator") || dn.equals("separate") || dn.equals("separ")) {
tip = "You may meant #sep.";
} else {
tip = "Help (latest version): http://freemarker.org/docs/ref_directive_alphaidx.html; "
+ "you're using FreeMarker " + Configuration.getVersion() + ".";
}
throw new TokenMgrError(
"Unknown directive: #" + dn + (tip != null ? ". " + tip : ""),
TokenMgrError.LEXICAL_ERROR,
matchedToken.beginLine, matchedToken.beginColumn + 1,
matchedToken.endLine, matchedToken.endColumn);
}
}
break;
case 83 :
image.append(jjstrLiteralImages[83]);
lengthOfMatch = jjstrLiteralImages[83].length();
startInterpolation(matchedToken);
break;
case 84 :
image.append(jjstrLiteralImages[84]);
lengthOfMatch = jjstrLiteralImages[84].length();
startInterpolation(matchedToken);
break;
case 85 :
image.append(jjstrLiteralImages[85]);
lengthOfMatch = jjstrLiteralImages[85].length();
startInterpolation(matchedToken);
break;
case 134 :
image.append(jjstrLiteralImages[134]);
lengthOfMatch = jjstrLiteralImages[134].length();
++bracketNesting;
break;
case 135 :
image.append(jjstrLiteralImages[135]);
lengthOfMatch = jjstrLiteralImages[135].length();
if (bracketNesting > 0) {
--bracketNesting;
} else if (interpolationSyntax == SQUARE_BRACKET_INTERPOLATION_SYNTAX && postInterpolationLexState != -1) {
endInterpolation(matchedToken);
} else {
// There's a legacy glitch where you can always close a tag with `]`, like `<#if x]`. We have to keep that
// working for backward compatibility, hence we don't always throw at !squBracTagSyntax:
if (!squBracTagSyntax
&& (incompatibleImprovements >= _VersionInts.V_2_3_28
|| interpolationSyntax == SQUARE_BRACKET_INTERPOLATION_SYNTAX)
|| postInterpolationLexState != -1 /* We're in an interpolation => We aren't in a tag */) {
throw newUnexpectedClosingTokenException(matchedToken);
}
// Close tag, either legally or to emulate legacy glitch:
matchedToken.kind = DIRECTIVE_END;
if (inFTLHeader) {
eatNewline();
inFTLHeader = false;
}
SwitchTo(DEFAULT);
}
break;
case 136 :
image.append(jjstrLiteralImages[136]);
lengthOfMatch = jjstrLiteralImages[136].length();
++parenthesisNesting;
if (parenthesisNesting == 1) SwitchTo(IN_PAREN);
break;
case 137 :
image.append(jjstrLiteralImages[137]);
lengthOfMatch = jjstrLiteralImages[137].length();
--parenthesisNesting;
if (parenthesisNesting == 0) {
if (inInvocation) SwitchTo(NAMED_PARAMETER_EXPRESSION);
else SwitchTo(FM_EXPRESSION);
}
break;
case 138 :
image.append(jjstrLiteralImages[138]);
lengthOfMatch = jjstrLiteralImages[138].length();
++curlyBracketNesting;
break;
case 139 :
image.append(jjstrLiteralImages[139]);
lengthOfMatch = jjstrLiteralImages[139].length();
if (curlyBracketNesting > 0) {
--curlyBracketNesting;
} else if (interpolationSyntax != SQUARE_BRACKET_INTERPOLATION_SYNTAX && postInterpolationLexState != -1) {
endInterpolation(matchedToken);
} else {
throw newUnexpectedClosingTokenException(matchedToken);
}
break;
case 143 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
// Remove backslashes from Token.image:
final String s = matchedToken.image;
if (s.indexOf('\\') != -1) {
final int srcLn = s.length();
final char[] newS = new char[srcLn - 1];
int dstIdx = 0;
for (int srcIdx = 0; srcIdx < srcLn; srcIdx++) {
final char c = s.charAt(srcIdx);
if (c != '\\') {
newS[dstIdx++] = c;
}
}
matchedToken.image = new String(newS, 0, dstIdx);
}
break;
case 144 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
if ("".length() == 0) { // prevents unreachabe "break" compilation error in generated Java
char closerC = matchedToken.image.charAt(0) != '[' ? '}' : ']';
throw new TokenMgrError(
"You can't use " + matchedToken.image + "..." + closerC + " (an interpolation) here as you are "
+ "already in FreeMarker-expression-mode. Thus, instead of " + matchedToken.image + "myExpression"
+ closerC + ", just write myExpression. (" + matchedToken.image + "..." + closerC + " is only "
+ "used where otherwise static text is expected, i.e., outside FreeMarker tags and "
+ "interpolations, or inside string literals.)",
TokenMgrError.LEXICAL_ERROR,
matchedToken.beginLine, matchedToken.beginColumn,
matchedToken.endLine, matchedToken.endColumn);
}
break;
case 149 :
image.append(jjstrLiteralImages[149]);
lengthOfMatch = jjstrLiteralImages[149].length();
if (inFTLHeader) {
eatNewline();
inFTLHeader = false;
}
if (squBracTagSyntax || postInterpolationLexState != -1 /* We are in an interpolation */) {
matchedToken.kind = NATURAL_GT;
} else {
SwitchTo(DEFAULT);
}
break;
case 150 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
if (tagSyntaxEstablished && (incompatibleImprovements >= _VersionInts.V_2_3_28
|| interpolationSyntax == SQUARE_BRACKET_INTERPOLATION_SYNTAX)) {
String image = matchedToken.image;
char lastChar = image.charAt(image.length() - 1);
if (!squBracTagSyntax && lastChar != '>' || squBracTagSyntax && lastChar != ']') {
throw new TokenMgrError(
"The tag shouldn't end with \"" + lastChar + "\".",
TokenMgrError.LEXICAL_ERROR,
matchedToken.beginLine, matchedToken.beginColumn,
matchedToken.endLine, matchedToken.endColumn);
}
}
if (inFTLHeader) {
eatNewline();
inFTLHeader = false;
}
SwitchTo(DEFAULT);
break;
case 155 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
if (noparseTag.equals("-->")) {
boolean squareBracket = matchedToken.image.endsWith("]");
if ((squBracTagSyntax && squareBracket) || (!squBracTagSyntax && !squareBracket)) {
matchedToken.image = matchedToken.image + ";";
SwitchTo(DEFAULT);
}
}
break;
case 156 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
StringTokenizer st = new StringTokenizer(image.toString(), " \t\n\r<>[]/#", false);
if (st.nextToken().equals(noparseTag)) {
matchedToken.image = matchedToken.image + ";";
SwitchTo(DEFAULT);
}
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 FMParserTokenManager(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 FMParserTokenManager (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 = 717; 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 >= 8 || 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",
"NO_DIRECTIVE",
"FM_EXPRESSION",
"IN_PAREN",
"NAMED_PARAMETER_EXPRESSION",
"EXPRESSION_COMMENT",
"NO_SPACE_EXPRESSION",
"NO_PARSE",
};
/** 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, 5, -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, 2, 2, -1, -1, -1, -1,
};
static final long[] jjtoToken = {
0xffffffffffffffc1L, 0xffffffffc03fffffL, 0x7fe1ffffL,
};
static final long[] jjtoSkip = {
0x0L, 0x1fc00000L, 0x0L,
};
static final long[] jjtoSpecial = {
0x0L, 0x0L, 0x0L,
};
static final long[] jjtoMore = {
0x0L, 0x0L, 0x0L,
};
protected SimpleCharStream input_stream;
private final int[] jjrounds = new int[717];
private final int[] jjstateSet = new int[2 * 717];
private final StringBuilder jjimage = new StringBuilder();
private StringBuilder image = jjimage;
private int jjimageLen;
private int lengthOfMatch;
protected int curChar;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy