org.geolatte.common.cql.lexer.Lexer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of geolatte-common Show documentation
Show all versions of geolatte-common Show documentation
This GeoLatte-common library contains the transformer framework and other common classes used by other
GeoLatte modules.
/* This file was generated by SableCC (http://www.sablecc.org/). */
package org.geolatte.common.cql.lexer;
import java.io.*;
import org.geolatte.common.cql.node.*;
@SuppressWarnings("nls")
public class Lexer
{
protected Token token;
protected State state = State.NORMAL;
private PushbackReader in;
private int line;
private int pos;
private boolean cr;
private boolean eof;
private final StringBuffer text = new StringBuffer();
@SuppressWarnings("unused")
protected void filter() throws LexerException, IOException
{
// Do nothing
}
public Lexer(@SuppressWarnings("hiding") PushbackReader in)
{
this.in = in;
}
public Token peek() throws LexerException, IOException
{
while(this.token == null)
{
this.token = getToken();
filter();
}
return this.token;
}
public Token next() throws LexerException, IOException
{
while(this.token == null)
{
this.token = getToken();
filter();
}
Token result = this.token;
this.token = null;
return result;
}
protected Token getToken() throws IOException, LexerException
{
int dfa_state = 0;
int start_pos = this.pos;
int start_line = this.line;
int accept_state = -1;
int accept_token = -1;
int accept_length = -1;
int accept_pos = -1;
int accept_line = -1;
@SuppressWarnings("hiding") int[][][] gotoTable = Lexer.gotoTable[this.state.id()];
@SuppressWarnings("hiding") int[] accept = Lexer.accept[this.state.id()];
this.text.setLength(0);
while(true)
{
int c = getChar();
if(c != -1)
{
switch(c)
{
case 10:
if(this.cr)
{
this.cr = false;
}
else
{
this.line++;
this.pos = 0;
}
break;
case 13:
this.line++;
this.pos = 0;
this.cr = true;
break;
default:
this.pos++;
this.cr = false;
break;
}
this.text.append((char) c);
do
{
int oldState = (dfa_state < -1) ? (-2 -dfa_state) : dfa_state;
dfa_state = -1;
int[][] tmp1 = gotoTable[oldState];
int low = 0;
int high = tmp1.length - 1;
while(low <= high)
{
int middle = (low + high) / 2;
int[] tmp2 = tmp1[middle];
if(c < tmp2[0])
{
high = middle - 1;
}
else if(c > tmp2[1])
{
low = middle + 1;
}
else
{
dfa_state = tmp2[2];
break;
}
}
}while(dfa_state < -1);
}
else
{
dfa_state = -1;
}
if(dfa_state >= 0)
{
if(accept[dfa_state] != -1)
{
accept_state = dfa_state;
accept_token = accept[dfa_state];
accept_length = this.text.length();
accept_pos = this.pos;
accept_line = this.line;
}
}
else
{
if(accept_state != -1)
{
switch(accept_token)
{
case 0:
{
@SuppressWarnings("hiding") Token token = new0(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 1:
{
@SuppressWarnings("hiding") Token token = new1(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 2:
{
@SuppressWarnings("hiding") Token token = new2(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 3:
{
@SuppressWarnings("hiding") Token token = new3(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 4:
{
@SuppressWarnings("hiding") Token token = new4(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 5:
{
@SuppressWarnings("hiding") Token token = new5(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 6:
{
@SuppressWarnings("hiding") Token token = new6(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 7:
{
@SuppressWarnings("hiding") Token token = new7(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.WKT; break;
case 1: state = State.WKT; break;
}
return token;
}
case 8:
{
@SuppressWarnings("hiding") Token token = new8(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 9:
{
@SuppressWarnings("hiding") Token token = new9(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 10:
{
@SuppressWarnings("hiding") Token token = new10(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 11:
{
@SuppressWarnings("hiding") Token token = new11(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 12:
{
@SuppressWarnings("hiding") Token token = new12(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 13:
{
@SuppressWarnings("hiding") Token token = new13(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 14:
{
@SuppressWarnings("hiding") Token token = new14(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 15:
{
@SuppressWarnings("hiding") Token token = new15(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 16:
{
@SuppressWarnings("hiding") Token token = new16(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 17:
{
@SuppressWarnings("hiding") Token token = new17(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 18:
{
@SuppressWarnings("hiding") Token token = new18(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 19:
{
@SuppressWarnings("hiding") Token token = new19(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 20:
{
@SuppressWarnings("hiding") Token token = new20(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 21:
{
@SuppressWarnings("hiding") Token token = new21(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 22:
{
@SuppressWarnings("hiding") Token token = new22(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 23:
{
@SuppressWarnings("hiding") Token token = new23(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 24:
{
@SuppressWarnings("hiding") Token token = new24(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 25:
{
@SuppressWarnings("hiding") Token token = new25(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 26:
{
@SuppressWarnings("hiding") Token token = new26(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 27:
{
@SuppressWarnings("hiding") Token token = new27(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 28:
{
@SuppressWarnings("hiding") Token token = new28(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 29:
{
@SuppressWarnings("hiding") Token token = new29(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 30:
{
@SuppressWarnings("hiding") Token token = new30(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 31:
{
@SuppressWarnings("hiding") Token token = new31(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 32:
{
@SuppressWarnings("hiding") Token token = new32(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 33:
{
@SuppressWarnings("hiding") Token token = new33(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 34:
{
@SuppressWarnings("hiding") Token token = new34(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 35:
{
@SuppressWarnings("hiding") Token token = new35(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 36:
{
@SuppressWarnings("hiding") Token token = new36(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 37:
{
@SuppressWarnings("hiding") Token token = new37(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 38:
{
@SuppressWarnings("hiding") Token token = new38(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 39:
{
@SuppressWarnings("hiding") Token token = new39(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 40:
{
@SuppressWarnings("hiding") Token token = new40(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 41:
{
@SuppressWarnings("hiding") Token token = new41(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 42:
{
@SuppressWarnings("hiding") Token token = new42(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 43:
{
@SuppressWarnings("hiding") Token token = new43(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 44:
{
@SuppressWarnings("hiding") Token token = new44(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 45:
{
@SuppressWarnings("hiding") Token token = new45(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 46:
{
@SuppressWarnings("hiding") Token token = new46(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 47:
{
@SuppressWarnings("hiding") Token token = new47(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 48:
{
@SuppressWarnings("hiding") Token token = new48(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 49:
{
@SuppressWarnings("hiding") Token token = new49(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 50:
{
@SuppressWarnings("hiding") Token token = new50(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 51:
{
@SuppressWarnings("hiding") Token token = new51(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 52:
{
@SuppressWarnings("hiding") Token token = new52(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 53:
{
@SuppressWarnings("hiding") Token token = new53(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
return token;
}
case 54:
{
@SuppressWarnings("hiding") Token token = new54(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 55:
{
@SuppressWarnings("hiding") Token token = new55(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 56:
{
@SuppressWarnings("hiding") Token token = new56(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 57:
{
@SuppressWarnings("hiding") Token token = new57(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 58:
{
@SuppressWarnings("hiding") Token token = new58(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 59:
{
@SuppressWarnings("hiding") Token token = new59(
getText(accept_length),
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 60:
{
@SuppressWarnings("hiding") Token token = new60(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 61:
{
@SuppressWarnings("hiding") Token token = new61(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 62:
{
@SuppressWarnings("hiding") Token token = new62(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 63:
{
@SuppressWarnings("hiding") Token token = new63(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 64:
{
@SuppressWarnings("hiding") Token token = new64(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
case 65:
{
@SuppressWarnings("hiding") Token token = new65(
start_line + 1,
start_pos + 1);
pushBack(accept_length);
this.pos = accept_pos;
this.line = accept_line;
switch(state.id())
{
case 0: state = State.NORMAL; break;
}
return token;
}
}
}
else
{
if(this.text.length() > 0)
{
throw new LexerException(
"[" + (start_line + 1) + "," + (start_pos + 1) + "]" +
" Unknown token: " + this.text);
}
@SuppressWarnings("hiding") EOF token = new EOF(
start_line + 1,
start_pos + 1);
return token;
}
}
}
}
Token new0(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktPointLiteral(text, line, pos); }
Token new1(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktLineStringLiteral(text, line, pos); }
Token new2(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktPolygonLiteral(text, line, pos); }
Token new3(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktMultiPointLiteral(text, line, pos); }
Token new4(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktMultiLineStringLiteral(text, line, pos); }
Token new5(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktMultiPolygonLiteral(text, line, pos); }
Token new6(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktGeometryCollectionLiteral(text, line, pos); }
Token new7(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TWktEmptySetLiteral(text, line, pos); }
Token new8(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBlank(text, line, pos); }
Token new9(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSpace(text, line, pos); }
Token new10(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNewline(text, line, pos); }
Token new11(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSign(text, line, pos); }
Token new12(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TLeftParen(line, pos); }
Token new13(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TRightParen(line, pos); }
Token new14(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TPeriod(line, pos); }
Token new15(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TColon(text, line, pos); }
Token new16(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TComma(text, line, pos); }
Token new17(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TLessThanOperator(line, pos); }
Token new18(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TEqualsOperator(line, pos); }
Token new19(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGreaterThanOperator(line, pos); }
Token new20(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNotEqualsOperator(line, pos); }
Token new21(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGreaterThanOrEqualsOperator(line, pos); }
Token new22(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TLessThanOrEqualsOperator(line, pos); }
Token new23(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBooleanNotOperator(text, line, pos); }
Token new24(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBooleanAndOperator(text, line, pos); }
Token new25(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBooleanOrOperator(text, line, pos); }
Token new26(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTextLikeOperator(text, line, pos); }
Token new27(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTextIlikeOperator(text, line, pos); }
Token new28(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TExistsOperator(text, line, pos); }
Token new29(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDoesnotexistOperator(text, line, pos); }
Token new30(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTemporalBeforeOperator(text, line, pos); }
Token new31(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTemporalBeforeorduringOperator(text, line, pos); }
Token new32(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTemporalDuringOperator(text, line, pos); }
Token new33(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTemporalDuringorafterOperator(text, line, pos); }
Token new34(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTemporalAfterOperator(text, line, pos); }
Token new35(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNullIsOperator(text, line, pos); }
Token new36(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNullNotOperator(text, line, pos); }
Token new37(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoEqualsOperator(text, line, pos); }
Token new38(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoDisjointOperator(text, line, pos); }
Token new39(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoIntersectsOperator(text, line, pos); }
Token new40(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoTouchesOperator(text, line, pos); }
Token new41(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoCrossesOperator(text, line, pos); }
Token new42(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoWithinOperator(text, line, pos); }
Token new43(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoContainsOperator(text, line, pos); }
Token new44(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoOverlapsOperator(text, line, pos); }
Token new45(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TGeoRelateOperator(text, line, pos); }
Token new46(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TRelgeoDwithinOperator(text, line, pos); }
Token new47(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TRelgeoBeyondOperator(text, line, pos); }
Token new48(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBooleanTrue(text, line, pos); }
Token new49(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBooleanFalse(text, line, pos); }
Token new50(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TBooleanUnknown(text, line, pos); }
Token new51(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TNullConstant(text, line, pos); }
Token new52(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TSignedNumericLiteral(text, line, pos); }
Token new53(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TUnsignedInteger(text, line, pos); }
Token new54(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TCharacterStringLiteral(text, line, pos); }
Token new55(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TIdentifier(text, line, pos); }
Token new56(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurationDateTimeSeparator(text, line, pos); }
Token new57(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurationSymbol(text, line, pos); }
Token new58(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TTimeSpanSeparator(text, line, pos); }
Token new59(@SuppressWarnings("hiding") String text, @SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDatetime(text, line, pos); }
Token new60(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurDaySymbol(line, pos); }
Token new61(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurMonthSymbol(line, pos); }
Token new62(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurYearSymbol(line, pos); }
Token new63(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurSecondSymbol(line, pos); }
Token new64(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurMinuteSymbol(line, pos); }
Token new65(@SuppressWarnings("hiding") int line, @SuppressWarnings("hiding") int pos) { return new TDurHourSymbol(line, pos); }
private int getChar() throws IOException
{
if(this.eof)
{
return -1;
}
int result = this.in.read();
if(result == -1)
{
this.eof = true;
}
return result;
}
private void pushBack(int acceptLength) throws IOException
{
int length = this.text.length();
for(int i = length - 1; i >= acceptLength; i--)
{
this.eof = false;
this.in.unread(this.text.charAt(i));
}
}
protected void unread(@SuppressWarnings("hiding") Token token) throws IOException
{
@SuppressWarnings("hiding") String text = token.getText();
int length = text.length();
for(int i = length - 1; i >= 0; i--)
{
this.eof = false;
this.in.unread(text.charAt(i));
}
this.pos = token.getPos() - 1;
this.line = token.getLine() - 1;
}
private String getText(int acceptLength)
{
StringBuffer s = new StringBuffer(acceptLength);
for(int i = 0; i < acceptLength; i++)
{
s.append(this.text.charAt(i));
}
return s.toString();
}
private static int[][][][] gotoTable;
/* {
{ // NORMAL
{{9, 9, 1}, {10, 10, 2}, {13, 13, 3}, {32, 32, 4}, {39, 39, 5}, {40, 40, 6}, {41, 41, 7}, {43, 43, 8}, {44, 44, 9}, {45, 45, 10}, {46, 46, 11}, {47, 47, 12}, {48, 48, 13}, {49, 49, 14}, {50, 50, 15}, {51, 51, 16}, {52, 52, 17}, {53, 53, 18}, {54, 54, 19}, {55, 55, 20}, {56, 56, 21}, {57, 57, 22}, {58, 58, 23}, {60, 60, 24}, {61, 61, 25}, {62, 62, 26}, {65, 65, 27}, {66, 66, 28}, {67, 67, 29}, {68, 68, 30}, {69, 69, 31}, {70, 70, 32}, {71, 71, 33}, {72, 72, 34}, {73, 73, 35}, {74, 74, 36}, {75, 75, 37}, {76, 76, 38}, {77, 77, 39}, {78, 78, 40}, {79, 79, 41}, {80, 80, 42}, {81, 81, 43}, {82, 82, 44}, {83, 83, 45}, {84, 84, 46}, {85, 85, 47}, {86, 86, 48}, {87, 87, 49}, {88, 88, 50}, {89, 89, 51}, {90, 90, 52}, {97, 97, 53}, {98, 98, 54}, {99, 99, 55}, {100, 100, 56}, {101, 101, 57}, {102, 102, 58}, {103, 103, 59}, {104, 104, 60}, {105, 105, 61}, {106, 106, 62}, {107, 107, 63}, {108, 108, 64}, {109, 109, 65}, {110, 110, 66}, {111, 111, 67}, {112, 112, 68}, {113, 113, 69}, {114, 114, 70}, {115, 115, 71}, {116, 116, 72}, {117, 117, 73}, {118, 118, 74}, {119, 119, 75}, {120, 120, 76}, {121, 121, 77}, {122, 122, 78}, },
{{9, 9, 1}, {10, 10, 79}, {13, 13, 80}, {32, 32, 81}, },
{{9, 32, -3}, },
{{9, 9, 1}, {10, 10, 82}, {13, 32, -3}, },
{{9, 32, -3}, },
{{0, 38, 83}, {39, 39, 84}, {40, 65535, 83}, },
{},
{},
{{46, 46, 85}, {48, 48, 86}, {49, 49, 87}, {50, 50, 88}, {51, 51, 89}, {52, 52, 90}, {53, 53, 91}, {54, 54, 92}, {55, 55, 93}, {56, 56, 94}, {57, 57, 95}, },
{},
{{46, 57, -10}, },
{{48, 48, 96}, {49, 49, 97}, {50, 50, 98}, {51, 51, 99}, {52, 52, 100}, {53, 53, 101}, {54, 54, 102}, {55, 55, 103}, {56, 56, 104}, {57, 57, 105}, },
{},
{{46, 46, 85}, {48, 48, 106}, {49, 49, 107}, {50, 50, 108}, {51, 51, 109}, {52, 52, 110}, {53, 53, 111}, {54, 54, 112}, {55, 55, 113}, {56, 56, 114}, {57, 57, 115}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{{46, 57, -15}, },
{},
{{61, 61, 116}, {62, 62, 117}, },
{},
{{61, 61, 118}, },
{{48, 48, 119}, {49, 49, 120}, {50, 50, 121}, {51, 51, 122}, {52, 52, 123}, {53, 53, 124}, {54, 54, 125}, {55, 55, 126}, {56, 56, 127}, {57, 57, 128}, {65, 65, 129}, {66, 66, 130}, {67, 67, 131}, {68, 68, 132}, {69, 69, 133}, {70, 70, 134}, {71, 71, 135}, {72, 72, 136}, {73, 73, 137}, {74, 74, 138}, {75, 75, 139}, {76, 76, 140}, {77, 77, 141}, {78, 78, 142}, {79, 79, 143}, {80, 80, 144}, {81, 81, 145}, {82, 82, 146}, {83, 83, 147}, {84, 84, 148}, {85, 85, 149}, {86, 86, 150}, {87, 87, 151}, {88, 88, 152}, {89, 89, 153}, {90, 90, 154}, {95, 95, 155}, {97, 97, 156}, {98, 98, 157}, {99, 99, 158}, {100, 100, 159}, {101, 101, 160}, {102, 102, 161}, {103, 103, 162}, {104, 104, 163}, {105, 105, 164}, {106, 106, 165}, {107, 107, 166}, {108, 108, 167}, {109, 109, 168}, {110, 110, 169}, {111, 111, 170}, {112, 112, 171}, {113, 113, 172}, {114, 114, 173}, {115, 115, 174}, {116, 116, 175}, {117, 117, 176}, {118, 118, 177}, {119, 119, 178}, {120, 120, 179}, {121, 121, 180}, {122, 122, 181}, },
{{48, 68, -29}, {69, 69, 182}, {70, 70, 183}, {71, 77, -29}, {78, 78, 184}, {79, 100, -29}, {101, 101, 185}, {102, 102, 186}, {103, 109, -29}, {110, 110, 187}, {111, 122, -29}, },
{{48, 69, -29}, {70, 78, -30}, {79, 79, 188}, {80, 81, -29}, {82, 82, 189}, {83, 101, -29}, {102, 110, -30}, {111, 111, 190}, {112, 113, -29}, {114, 114, 191}, {115, 122, -29}, },
{{48, 72, -31}, {73, 73, 192}, {74, 78, -30}, {79, 79, 193}, {80, 84, -29}, {85, 85, 194}, {86, 86, 150}, {87, 87, 195}, {88, 104, -31}, {105, 105, 196}, {106, 110, -30}, {111, 111, 197}, {112, 116, -29}, {117, 117, 198}, {118, 118, 177}, {119, 119, 199}, {120, 122, -29}, },
{{48, 76, -31}, {77, 77, 200}, {78, 80, -30}, {81, 81, 201}, {82, 87, -29}, {88, 88, 202}, {89, 108, -31}, {109, 109, 203}, {110, 112, -30}, {113, 113, 204}, {114, 119, -29}, {120, 120, 205}, {121, 122, -29}, },
{{48, 57, -29}, {65, 65, 206}, {66, 78, -31}, {79, 95, -29}, {97, 97, 207}, {98, 110, -31}, {111, 122, -29}, },
{{48, 68, -29}, {69, 69, 208}, {70, 100, -30}, {101, 101, 209}, {102, 122, -30}, },
{{48, 78, -31}, {79, 101, -29}, {102, 122, -30}, },
{{48, 75, -31}, {76, 76, 210}, {77, 77, 141}, {78, 78, 211}, {79, 82, -29}, {83, 83, 212}, {84, 107, -31}, {108, 108, 213}, {109, 109, 168}, {110, 110, 214}, {111, 114, -29}, {115, 115, 215}, {116, 122, -29}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 72, -31}, {73, 73, 216}, {74, 104, -36}, {105, 105, 217}, {106, 122, -30}, },
{{48, 84, -36}, {85, 85, 218}, {86, 116, -36}, {117, 117, 219}, {118, 122, -29}, },
{{48, 78, -31}, {79, 79, 220}, {80, 84, -29}, {85, 85, 221}, {86, 110, -31}, {111, 111, 222}, {112, 116, -29}, {117, 117, 223}, {118, 122, -29}, },
{{48, 81, -36}, {82, 82, 224}, {83, 85, -29}, {86, 86, 225}, {87, 113, -36}, {114, 114, 226}, {115, 117, -29}, {118, 118, 227}, {119, 122, -29}, },
{{48, 78, -31}, {79, 79, 228}, {80, 110, -36}, {111, 111, 229}, {112, 122, -29}, },
{{48, 122, -36}, },
{{48, 68, -29}, {69, 69, 230}, {70, 100, -30}, {101, 101, 231}, {102, 122, -30}, },
{{48, 122, -36}, },
{{48, 78, -31}, {79, 79, 232}, {80, 81, -29}, {82, 82, 233}, {83, 110, -31}, {111, 111, 234}, {112, 113, -29}, {114, 114, 235}, {115, 122, -29}, },
{{48, 77, -31}, {78, 78, 236}, {79, 109, -36}, {110, 110, 237}, {111, 122, -29}, },
{{48, 122, -36}, },
{{48, 72, -31}, {73, 73, 238}, {74, 104, -36}, {105, 105, 239}, {106, 122, -30}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -29}, },
{{48, 122, -30}, },
{{48, 122, -31}, },
{{48, 122, -32}, },
{{48, 122, -33}, },
{{48, 122, -34}, },
{{48, 122, -35}, },
{{48, 122, -36}, },
{{48, 122, -37}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -40}, },
{{48, 122, -41}, },
{{48, 122, -42}, },
{{48, 122, -43}, },
{{48, 122, -44}, },
{{48, 122, -36}, },
{{48, 122, -46}, },
{{48, 122, -36}, },
{{48, 122, -48}, },
{{48, 122, -49}, },
{{48, 122, -36}, },
{{48, 122, -51}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{9, 32, -3}, },
{{9, 9, 1}, {10, 10, 240}, {13, 32, -3}, },
{{9, 32, -3}, },
{{9, 32, -3}, },
{{0, 38, 83}, {39, 39, 241}, {40, 65535, 83}, },
{{39, 39, 242}, },
{{48, 57, -13}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{46, 57, -10}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{48, 57, -13}, },
{{46, 46, 85}, {48, 48, 243}, {49, 49, 244}, {50, 50, 245}, {51, 51, 246}, {52, 52, 247}, {53, 53, 248}, {54, 54, 249}, {55, 55, 250}, {56, 56, 251}, {57, 57, 252}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{{46, 57, -108}, },
{},
{},
{},
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 83, -36}, {84, 84, 253}, {85, 115, -36}, {116, 116, 254}, {117, 122, -29}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 67, -29}, {68, 68, 255}, {69, 99, -36}, {100, 100, 256}, {101, 122, -34}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -136}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -144}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 69, -29}, {70, 70, 257}, {71, 88, -30}, {89, 89, 258}, {90, 101, -29}, {102, 102, 259}, {103, 120, -30}, {121, 121, 260}, {122, 122, 181}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -184}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 77, -31}, {78, 78, 261}, {79, 109, -36}, {110, 110, 262}, {111, 122, -29}, },
{{48, 78, -31}, {79, 79, 263}, {80, 110, -36}, {111, 111, 264}, {112, 122, -29}, },
{{48, 122, -190}, },
{{48, 122, -191}, },
{{48, 82, -36}, {83, 83, 265}, {84, 114, -36}, {115, 115, 266}, {116, 122, -29}, },
{{48, 68, -29}, {69, 69, 267}, {70, 100, -30}, {101, 101, 268}, {102, 122, -30}, },
{{48, 81, -36}, {82, 82, 269}, {83, 113, -36}, {114, 114, 270}, {115, 122, -29}, },
{{48, 72, -31}, {73, 73, 271}, {74, 104, -36}, {105, 105, 272}, {106, 122, -30}, },
{{48, 122, -194}, },
{{48, 122, -195}, },
{{48, 122, -196}, },
{{48, 122, -197}, },
{{48, 79, -36}, {80, 80, 273}, {81, 111, -36}, {112, 112, 274}, {113, 122, -29}, },
{{48, 84, -36}, {85, 85, 275}, {86, 116, -36}, {117, 117, 276}, {118, 122, -29}, },
{{48, 72, -31}, {73, 73, 277}, {74, 104, -36}, {105, 105, 278}, {106, 122, -30}, },
{{48, 122, -202}, },
{{48, 122, -203}, },
{{48, 122, -204}, },
{{48, 75, -31}, {76, 76, 279}, {77, 107, -36}, {108, 108, 280}, {109, 122, -30}, },
{{48, 122, -208}, },
{{48, 78, -31}, {79, 79, 281}, {80, 110, -36}, {111, 111, 282}, {112, 122, -29}, },
{{48, 122, -210}, },
{{48, 72, -31}, {73, 73, 283}, {74, 104, -36}, {105, 105, 284}, {106, 122, -30}, },
{{48, 83, -36}, {84, 84, 285}, {85, 115, -36}, {116, 116, 286}, {117, 122, -29}, },
{{48, 122, -36}, },
{{48, 122, -212}, },
{{48, 122, -213}, },
{{48, 122, -36}, },
{{48, 74, -31}, {75, 75, 287}, {76, 77, -29}, {78, 78, 288}, {79, 106, -36}, {107, 107, 289}, {108, 109, -29}, {110, 110, 290}, {111, 122, -29}, },
{{48, 122, -218}, },
{{48, 75, -31}, {76, 76, 291}, {77, 107, -36}, {108, 108, 292}, {109, 122, -30}, },
{{48, 122, -220}, },
{{48, 83, -36}, {84, 84, 293}, {85, 115, -36}, {116, 116, 294}, {117, 122, -29}, },
{{48, 75, -31}, {76, 76, 295}, {77, 107, -36}, {108, 108, 296}, {109, 122, -30}, },
{{48, 122, -222}, },
{{48, 122, -223}, },
{{48, 122, -36}, },
{{48, 68, -29}, {69, 69, 297}, {70, 100, -30}, {101, 101, 298}, {102, 122, -30}, },
{{48, 122, -36}, },
{{48, 122, -227}, },
{{48, 72, -31}, {73, 73, 299}, {74, 75, -29}, {76, 76, 300}, {77, 104, -36}, {105, 105, 301}, {106, 107, -29}, {108, 108, 302}, {109, 122, -30}, },
{{48, 122, -230}, },
{{48, 75, -31}, {76, 76, 303}, {77, 107, -36}, {108, 108, 304}, {109, 122, -30}, },
{{48, 122, -232}, },
{{48, 84, -36}, {85, 85, 305}, {86, 116, -36}, {117, 117, 306}, {118, 122, -29}, },
{{48, 84, -36}, {85, 85, 307}, {86, 116, -36}, {117, 117, 308}, {118, 122, -29}, },
{{48, 122, -234}, },
{{48, 122, -235}, },
{{48, 74, -31}, {75, 75, 309}, {76, 106, -36}, {107, 107, 310}, {108, 122, -30}, },
{{48, 122, -238}, },
{{48, 83, -36}, {84, 84, 311}, {85, 115, -36}, {116, 116, 312}, {117, 122, -29}, },
{{48, 122, -240}, },
{{9, 32, -3}, },
{{39, 39, 242}, },
{{0, 65535, -85}, },
{{46, 46, 85}, {48, 48, 313}, {49, 49, 314}, {50, 50, 315}, {51, 51, 316}, {52, 52, 317}, {53, 53, 318}, {54, 54, 319}, {55, 55, 320}, {56, 56, 321}, {57, 57, 322}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{46, 57, -245}, },
{{48, 68, -29}, {69, 69, 323}, {70, 100, -30}, {101, 101, 324}, {102, 122, -30}, },
{{48, 122, -255}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 78, -31}, {79, 79, 325}, {80, 110, -36}, {111, 111, 326}, {112, 122, -29}, },
{{48, 78, -31}, {79, 79, 327}, {80, 110, -36}, {111, 111, 328}, {112, 122, -29}, },
{{48, 122, -259}, },
{{48, 122, -260}, },
{{48, 83, -36}, {84, 84, 329}, {85, 115, -36}, {116, 116, 330}, {117, 122, -29}, },
{{48, 122, -263}, },
{{48, 82, -36}, {83, 83, 331}, {84, 114, -36}, {115, 115, 332}, {116, 122, -29}, },
{{48, 122, -265}, },
{{48, 73, -31}, {74, 74, 333}, {75, 105, -36}, {106, 106, 334}, {107, 122, -30}, },
{{48, 122, -267}, },
{{48, 82, -36}, {83, 83, 335}, {84, 114, -36}, {115, 115, 336}, {116, 122, -29}, },
{{48, 122, -269}, },
{{48, 72, -31}, {73, 73, 337}, {74, 104, -36}, {105, 105, 338}, {106, 122, -30}, },
{{48, 122, -271}, },
{{48, 83, -36}, {84, 84, 339}, {85, 115, -36}, {116, 116, 340}, {117, 122, -29}, },
{{48, 122, -273}, },
{{48, 83, -36}, {84, 84, 341}, {85, 115, -36}, {116, 116, 342}, {117, 122, -29}, },
{{48, 122, -275}, },
{{48, 57, -29}, {65, 65, 343}, {66, 95, -34}, {97, 97, 344}, {98, 122, -34}, },
{{48, 122, -277}, },
{{48, 82, -36}, {83, 83, 345}, {84, 114, -36}, {115, 115, 346}, {116, 122, -29}, },
{{48, 122, -279}, },
{{48, 82, -36}, {83, 83, 347}, {84, 114, -36}, {115, 115, 348}, {116, 122, -29}, },
{{48, 122, -281}, },
{{48, 76, -31}, {77, 77, 349}, {78, 108, -36}, {109, 109, 350}, {110, 122, -30}, },
{{48, 122, -283}, },
{{48, 74, -31}, {75, 75, 351}, {76, 106, -36}, {107, 107, 352}, {108, 122, -30}, },
{{48, 122, -285}, },
{{48, 68, -29}, {69, 69, 353}, {70, 100, -30}, {101, 101, 354}, {102, 122, -30}, },
{{48, 122, -287}, },
{{48, 68, -29}, {69, 69, 355}, {70, 100, -30}, {101, 101, 356}, {102, 122, -30}, },
{{48, 68, -29}, {69, 69, 357}, {70, 100, -30}, {101, 101, 358}, {102, 122, -30}, },
{{48, 122, -289}, },
{{48, 122, -290}, },
{{48, 83, -36}, {84, 84, 359}, {85, 115, -36}, {116, 116, 360}, {117, 122, -29}, },
{{48, 122, -293}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 75, -31}, {76, 76, 361}, {77, 107, -36}, {108, 108, 362}, {109, 122, -30}, },
{{48, 122, -297}, },
{{48, 81, -36}, {82, 82, 363}, {83, 113, -36}, {114, 114, 364}, {115, 122, -29}, },
{{48, 122, -299}, },
{{48, 77, -31}, {78, 78, 365}, {79, 109, -36}, {110, 110, 366}, {111, 122, -29}, },
{{48, 88, -36}, {89, 89, 367}, {90, 120, -36}, {121, 121, 368}, {122, 122, 181}, },
{{48, 122, -301}, },
{{48, 122, -302}, },
{{48, 57, -29}, {65, 65, 369}, {66, 95, -34}, {97, 97, 370}, {98, 122, -34}, },
{{48, 122, -305}, },
{{48, 66, -29}, {67, 67, 371}, {68, 98, -36}, {99, 99, 372}, {100, 122, -34}, },
{{48, 122, -307}, },
{{48, 68, -29}, {69, 69, 373}, {70, 100, -30}, {101, 101, 374}, {102, 122, -30}, },
{{48, 122, -309}, },
{{48, 77, -31}, {78, 78, 375}, {79, 109, -36}, {110, 110, 376}, {111, 122, -29}, },
{{48, 122, -311}, },
{{48, 71, -31}, {72, 72, 377}, {73, 103, -36}, {104, 104, 378}, {105, 122, -30}, },
{{48, 122, -313}, },
{{45, 45, 379}, {46, 46, 85}, {48, 48, 380}, {49, 49, 381}, {50, 50, 382}, {51, 51, 383}, {52, 52, 384}, {53, 53, 385}, {54, 54, 386}, {55, 55, 387}, {56, 56, 388}, {57, 57, 389}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{45, 57, -315}, },
{{48, 81, -36}, {82, 82, 390}, {83, 113, -36}, {114, 114, 391}, {115, 122, -29}, },
{{48, 122, -325}, },
{{48, 81, -36}, {82, 82, 392}, {83, 113, -36}, {114, 114, 393}, {115, 122, -29}, },
{{48, 122, -327}, },
{{48, 77, -31}, {78, 78, 394}, {79, 109, -36}, {110, 110, 395}, {111, 122, -29}, },
{{48, 122, -329}, },
{{48, 57, -29}, {65, 65, 396}, {66, 95, -34}, {97, 97, 397}, {98, 122, -34}, },
{{48, 122, -331}, },
{{48, 82, -36}, {83, 83, 398}, {84, 114, -36}, {115, 115, 399}, {116, 122, -29}, },
{{48, 122, -333}, },
{{48, 78, -31}, {79, 79, 400}, {80, 110, -36}, {111, 111, 401}, {112, 122, -29}, },
{{48, 122, -335}, },
{{45, 45, 402}, {48, 122, -36}, },
{{45, 122, -337}, },
{{48, 77, -31}, {78, 78, 403}, {79, 109, -36}, {110, 110, 404}, {111, 122, -29}, },
{{48, 122, -339}, },
{{48, 71, -31}, {72, 72, 405}, {73, 103, -36}, {104, 104, 406}, {105, 122, -30}, },
{{48, 122, -341}, },
{{48, 88, -36}, {89, 89, 407}, {90, 120, -36}, {121, 121, 408}, {122, 122, 181}, },
{{48, 122, -343}, },
{{48, 75, -31}, {76, 76, 409}, {77, 107, -36}, {108, 108, 410}, {109, 122, -30}, },
{{48, 122, -345}, },
{{48, 83, -36}, {84, 84, 411}, {85, 115, -36}, {116, 116, 412}, {117, 122, -29}, },
{{48, 122, -347}, },
{{48, 68, -29}, {69, 69, 413}, {70, 100, -30}, {101, 101, 414}, {102, 122, -30}, },
{{48, 122, -349}, },
{{48, 68, -29}, {69, 69, 415}, {70, 100, -30}, {101, 101, 416}, {102, 122, -30}, },
{{48, 122, -351}, },
{{48, 68, -29}, {69, 69, 417}, {70, 100, -30}, {101, 101, 418}, {102, 122, -30}, },
{{48, 122, -353}, },
{{48, 81, -36}, {82, 82, 419}, {83, 113, -36}, {114, 114, 420}, {115, 122, -29}, },
{{48, 122, -355}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 82, -36}, {83, 83, 421}, {84, 114, -36}, {115, 115, 422}, {116, 122, -29}, },
{{48, 122, -359}, },
{{48, 72, -31}, {73, 73, 423}, {74, 104, -36}, {105, 105, 424}, {106, 122, -30}, },
{{48, 122, -361}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 75, -31}, {76, 76, 425}, {77, 107, -36}, {108, 108, 426}, {109, 122, -30}, },
{{48, 122, -365}, },
{{48, 83, -36}, {84, 84, 427}, {85, 115, -36}, {116, 116, 428}, {117, 122, -29}, },
{{48, 122, -367}, },
{{48, 70, -31}, {71, 71, 429}, {72, 102, -36}, {103, 103, 430}, {104, 122, -30}, },
{{48, 122, -369}, },
{{48, 83, -36}, {84, 84, 431}, {85, 115, -36}, {116, 116, 432}, {117, 122, -29}, },
{{48, 122, -371}, },
{{48, 71, -31}, {72, 72, 433}, {73, 103, -36}, {104, 104, 434}, {105, 122, -30}, },
{{48, 122, -373}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 78, -31}, {79, 79, 435}, {80, 110, -36}, {111, 111, 436}, {112, 122, -29}, },
{{48, 122, -377}, },
{{48, 72, -31}, {73, 73, 437}, {74, 104, -36}, {105, 105, 438}, {106, 122, -30}, },
{{48, 122, -379}, },
{{48, 48, 439}, {49, 49, 440}, {50, 50, 441}, {51, 51, 442}, {52, 52, 443}, {53, 53, 444}, {54, 54, 445}, {55, 55, 446}, {56, 56, 447}, {57, 57, 448}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{46, 57, -315}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 68, -29}, {69, 69, 449}, {70, 100, -30}, {101, 101, 450}, {102, 122, -30}, },
{{48, 122, -394}, },
{{48, 67, -29}, {68, 68, 451}, {69, 99, -36}, {100, 100, 452}, {101, 122, -34}, },
{{48, 122, -396}, },
{{48, 72, -31}, {73, 73, 453}, {74, 104, -36}, {105, 105, 454}, {106, 122, -30}, },
{{48, 122, -398}, },
{{48, 68, -29}, {69, 69, 455}, {70, 100, -30}, {101, 101, 456}, {102, 122, -30}, },
{{48, 122, -400}, },
{{48, 72, -31}, {73, 73, 457}, {74, 104, -36}, {105, 105, 458}, {106, 122, -30}, },
{{48, 122, -402}, },
{{78, 78, 459}, {110, 110, 460}, },
{{48, 70, -31}, {71, 71, 461}, {72, 102, -36}, {103, 103, 462}, {104, 122, -30}, },
{{48, 122, -405}, },
{{48, 72, -31}, {73, 73, 463}, {74, 104, -36}, {105, 105, 464}, {106, 122, -30}, },
{{48, 122, -407}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 82, -36}, {83, 83, 465}, {84, 114, -36}, {115, 115, 466}, {116, 122, -29}, },
{{48, 122, -411}, },
{{48, 82, -36}, {83, 83, 467}, {84, 114, -36}, {115, 115, 468}, {116, 122, -29}, },
{{48, 122, -413}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 83, -36}, {84, 84, 469}, {85, 115, -36}, {116, 116, 470}, {117, 122, -29}, },
{{48, 122, -417}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 82, -36}, {83, 83, 471}, {84, 114, -36}, {115, 115, 472}, {116, 122, -29}, },
{{48, 122, -421}, },
{{48, 83, -36}, {84, 84, 473}, {85, 115, -36}, {116, 116, 474}, {117, 122, -29}, },
{{48, 122, -423}, },
{{48, 75, -31}, {76, 76, 475}, {77, 79, -30}, {80, 80, 476}, {81, 107, -36}, {108, 108, 477}, {109, 111, -30}, {112, 112, 478}, {113, 122, -29}, },
{{48, 122, -425}, },
{{48, 57, -29}, {65, 65, 479}, {66, 95, -34}, {97, 97, 480}, {98, 122, -34}, },
{{48, 122, -427}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 78, -31}, {79, 79, 481}, {80, 110, -36}, {111, 111, 482}, {112, 122, -29}, },
{{48, 122, -431}, },
{{48, 68, -29}, {69, 69, 483}, {70, 100, -30}, {101, 101, 484}, {102, 122, -30}, },
{{48, 122, -433}, },
{{48, 68, -29}, {69, 69, 485}, {70, 100, -30}, {101, 101, 486}, {102, 122, -30}, },
{{48, 122, -435}, },
{{48, 86, -36}, {87, 87, 487}, {88, 118, -36}, {119, 119, 488}, {120, 122, -29}, },
{{48, 122, -437}, },
{{48, 77, -31}, {78, 78, 489}, {79, 109, -36}, {110, 110, 490}, {111, 122, -29}, },
{{48, 122, -439}, },
{{48, 48, 491}, {49, 49, 492}, {50, 50, 493}, {51, 51, 494}, {52, 52, 495}, {53, 53, 496}, {54, 54, 497}, {55, 55, 498}, {56, 56, 499}, {57, 57, 500}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{48, 57, -441}, },
{{32, 32, 501}, {48, 122, -36}, },
{{32, 122, -451}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 77, -31}, {78, 78, 502}, {79, 109, -36}, {110, 110, 503}, {111, 122, -29}, },
{{48, 122, -455}, },
{{48, 82, -36}, {83, 83, 504}, {84, 114, -36}, {115, 115, 505}, {116, 122, -29}, },
{{48, 122, -457}, },
{{48, 77, -31}, {78, 78, 506}, {79, 109, -36}, {110, 110, 507}, {111, 122, -29}, },
{{48, 122, -459}, },
{{79, 79, 508}, {111, 111, 509}, },
{{79, 111, -461}, },
{{32, 32, 510}, {48, 122, -36}, },
{{32, 122, -463}, },
{{48, 77, -31}, {78, 78, 511}, {79, 109, -36}, {110, 110, 512}, {111, 122, -29}, },
{{48, 122, -465}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 81, -36}, {82, 82, 513}, {83, 113, -36}, {114, 114, 514}, {115, 122, -29}, },
{{48, 122, -471}, },
{{48, 68, -29}, {69, 69, 515}, {70, 100, -30}, {101, 101, 516}, {102, 122, -30}, },
{{48, 122, -473}, },
{{48, 81, -36}, {82, 82, 517}, {83, 113, -36}, {114, 114, 518}, {115, 122, -29}, },
{{48, 122, -475}, },
{{48, 72, -31}, {73, 73, 519}, {74, 104, -36}, {105, 105, 520}, {106, 122, -30}, },
{{48, 78, -31}, {79, 79, 521}, {80, 110, -36}, {111, 111, 522}, {112, 122, -29}, },
{{48, 122, -477}, },
{{48, 122, -478}, },
{{48, 79, -36}, {80, 80, 523}, {81, 111, -36}, {112, 112, 524}, {113, 122, -29}, },
{{48, 122, -481}, },
{{48, 77, -31}, {78, 78, 525}, {79, 109, -36}, {110, 110, 526}, {111, 122, -29}, },
{{48, 122, -483}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 82, -36}, {83, 83, 527}, {84, 114, -36}, {115, 115, 528}, {116, 122, -29}, },
{{48, 122, -487}, },
{{48, 77, -31}, {78, 78, 529}, {79, 109, -36}, {110, 110, 530}, {111, 122, -29}, },
{{48, 122, -489}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{45, 45, 531}, },
{{79, 79, 532}, {111, 111, 533}, },
{{48, 82, -36}, {83, 83, 534}, {84, 114, -36}, {115, 115, 535}, {116, 122, -29}, },
{{48, 122, -504}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 83, -36}, {84, 84, 536}, {85, 115, -36}, {116, 116, 537}, {117, 122, -29}, },
{{48, 122, -508}, },
{{84, 84, 538}, {116, 116, 539}, },
{{84, 116, -510}, },
{{79, 79, 540}, {111, 111, 541}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 88, -36}, {89, 89, 542}, {90, 120, -36}, {121, 121, 543}, {122, 122, 181}, },
{{48, 122, -515}, },
{{48, 66, -29}, {67, 67, 544}, {68, 98, -36}, {99, 99, 545}, {100, 122, -34}, },
{{48, 122, -517}, },
{{48, 72, -31}, {73, 73, 546}, {74, 104, -36}, {105, 105, 547}, {106, 122, -30}, },
{{48, 122, -519}, },
{{48, 77, -31}, {78, 78, 548}, {79, 109, -36}, {110, 110, 549}, {111, 122, -29}, },
{{48, 122, -521}, },
{{48, 72, -31}, {73, 73, 550}, {74, 75, -29}, {76, 76, 551}, {77, 104, -36}, {105, 105, 552}, {106, 107, -29}, {108, 108, 553}, {109, 122, -30}, },
{{48, 122, -523}, },
{{48, 82, -36}, {83, 83, 554}, {84, 114, -36}, {115, 115, 555}, {116, 122, -29}, },
{{48, 122, -525}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 48, 556}, {49, 49, 557}, {50, 50, 558}, {51, 51, 559}, {52, 52, 560}, {53, 53, 561}, {54, 54, 562}, {55, 55, 563}, {56, 56, 564}, {57, 57, 565}, },
{{82, 82, 566}, {114, 114, 567}, },
{{82, 114, -534}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{45, 45, 568}, },
{{45, 45, 568}, },
{{82, 82, 569}, {114, 114, 570}, },
{{82, 114, -542}, },
{{48, 66, -29}, {67, 67, 571}, {68, 98, -36}, {99, 99, 572}, {100, 122, -34}, },
{{48, 122, -544}, },
{{48, 83, -36}, {84, 84, 573}, {85, 115, -36}, {116, 116, 574}, {117, 122, -29}, },
{{48, 122, -546}, },
{{48, 77, -31}, {78, 78, 575}, {79, 109, -36}, {110, 110, 576}, {111, 122, -29}, },
{{48, 122, -548}, },
{{48, 68, -29}, {69, 69, 577}, {70, 100, -30}, {101, 101, 578}, {102, 122, -30}, },
{{48, 122, -550}, },
{{48, 77, -31}, {78, 78, 579}, {79, 109, -36}, {110, 110, 580}, {111, 122, -29}, },
{{48, 88, -36}, {89, 89, 581}, {90, 120, -36}, {121, 121, 582}, {122, 122, 181}, },
{{48, 122, -552}, },
{{48, 122, -553}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 48, 583}, {49, 49, 584}, {50, 50, 585}, {51, 51, 586}, {52, 52, 587}, {53, 53, 588}, {54, 54, 589}, {55, 55, 590}, {56, 56, 591}, {57, 57, 592}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{48, 57, -558}, },
{{32, 32, 593}, },
{{32, 32, 593}, },
{{69, 69, 594}, {101, 101, 595}, },
{{32, 32, 596}, },
{{32, 32, 596}, },
{{48, 78, -31}, {79, 79, 597}, {80, 110, -36}, {111, 111, 598}, {112, 122, -29}, },
{{48, 122, -573}, },
{{48, 82, -36}, {83, 83, 599}, {84, 114, -36}, {115, 115, 600}, {116, 122, -29}, },
{{48, 122, -575}, },
{{48, 70, -31}, {71, 71, 601}, {72, 102, -36}, {103, 103, 602}, {104, 122, -30}, },
{{48, 122, -577}, },
{{48, 82, -36}, {83, 83, 603}, {84, 114, -36}, {115, 115, 604}, {116, 122, -29}, },
{{48, 122, -579}, },
{{48, 83, -36}, {84, 84, 605}, {85, 115, -36}, {116, 116, 606}, {117, 122, -29}, },
{{48, 122, -581}, },
{{48, 70, -31}, {71, 71, 607}, {72, 102, -36}, {103, 103, 608}, {104, 122, -30}, },
{{48, 122, -583}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{84, 84, 609}, },
{{68, 68, 610}, {100, 100, 611}, },
{{88, 88, 612}, {120, 120, 613}, },
{{88, 120, -596}, },
{{65, 65, 614}, {97, 97, 615}, },
{{48, 75, -31}, {76, 76, 616}, {77, 107, -36}, {108, 108, 617}, {109, 122, -30}, },
{{48, 122, -599}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 83, -36}, {84, 84, 618}, {85, 115, -36}, {116, 116, 619}, {117, 122, -29}, },
{{48, 122, -605}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{48, 78, -31}, {79, 79, 620}, {80, 110, -36}, {111, 111, 621}, {112, 122, -29}, },
{{48, 122, -609}, },
{{48, 48, 622}, {49, 49, 623}, {50, 50, 624}, {51, 51, 625}, {52, 52, 626}, {53, 53, 627}, {54, 54, 628}, {55, 55, 629}, {56, 56, 630}, {57, 57, 631}, },
{{85, 85, 632}, {117, 117, 633}, },
{{85, 117, -612}, },
{{73, 73, 634}, {105, 105, 635}, },
{{73, 105, -614}, },
{{70, 70, 636}, {102, 102, 637}, },
{{70, 102, -616}, },
{{48, 75, -31}, {76, 76, 638}, {77, 107, -36}, {108, 108, 639}, {109, 122, -30}, },
{{48, 122, -618}, },
{{48, 81, -36}, {82, 82, 640}, {83, 113, -36}, {114, 114, 641}, {115, 122, -29}, },
{{48, 122, -620}, },
{{48, 77, -31}, {78, 78, 642}, {79, 109, -36}, {110, 110, 643}, {111, 122, -29}, },
{{48, 122, -622}, },
{{48, 48, 644}, {49, 49, 645}, {50, 50, 646}, {51, 51, 647}, {52, 52, 648}, {53, 53, 649}, {54, 54, 650}, {55, 55, 651}, {56, 56, 652}, {57, 57, 653}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{48, 57, -624}, },
{{82, 82, 654}, {114, 114, 655}, },
{{82, 114, -634}, },
{{83, 83, 656}, {115, 115, 657}, },
{{83, 115, -636}, },
{{84, 84, 658}, {116, 116, 659}, },
{{84, 116, -638}, },
{{48, 68, -29}, {69, 69, 660}, {70, 100, -30}, {101, 101, 661}, {102, 122, -30}, },
{{48, 122, -640}, },
{{48, 72, -31}, {73, 73, 662}, {74, 104, -36}, {105, 105, 663}, {106, 122, -30}, },
{{48, 122, -642}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{58, 58, 664}, },
{{73, 73, 665}, {105, 105, 666}, },
{{73, 105, -656}, },
{{84, 84, 667}, {116, 116, 668}, },
{{84, 116, -658}, },
{{69, 69, 669}, {101, 101, 670}, },
{{69, 101, -660}, },
{{48, 66, -29}, {67, 67, 671}, {68, 98, -36}, {99, 99, 672}, {100, 122, -34}, },
{{48, 122, -662}, },
{{48, 77, -31}, {78, 78, 673}, {79, 109, -36}, {110, 110, 674}, {111, 122, -29}, },
{{48, 122, -664}, },
{{48, 48, 675}, {49, 49, 676}, {50, 50, 677}, {51, 51, 678}, {52, 52, 679}, {53, 53, 680}, {54, 54, 681}, {55, 55, 682}, {56, 56, 683}, {57, 57, 684}, },
{{78, 78, 685}, {110, 110, 686}, },
{{78, 110, -667}, },
{},
{},
{{82, 82, 687}, {114, 114, 688}, },
{{82, 114, -671}, },
{{48, 83, -36}, {84, 84, 689}, {85, 115, -36}, {116, 116, 690}, {117, 122, -29}, },
{{48, 122, -673}, },
{{48, 70, -31}, {71, 71, 691}, {72, 102, -36}, {103, 103, 692}, {104, 122, -30}, },
{{48, 122, -675}, },
{{48, 48, 693}, {49, 49, 694}, {50, 50, 695}, {51, 51, 696}, {52, 52, 697}, {53, 53, 698}, {54, 54, 699}, {55, 55, 700}, {56, 56, 701}, {57, 57, 702}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{48, 57, -677}, },
{{71, 71, 703}, {103, 103, 704}, },
{{71, 103, -687}, },
{},
{},
{{48, 72, -31}, {73, 73, 705}, {74, 104, -36}, {105, 105, 706}, {106, 122, -30}, },
{{48, 122, -691}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{{58, 58, 707}, },
{},
{},
{{48, 78, -31}, {79, 79, 708}, {80, 110, -36}, {111, 111, 709}, {112, 122, -29}, },
{{48, 122, -707}, },
{{48, 48, 710}, {49, 49, 711}, {50, 50, 712}, {51, 51, 713}, {52, 52, 714}, {53, 53, 715}, {54, 54, 716}, {55, 55, 717}, {56, 56, 718}, {57, 57, 719}, },
{{48, 77, -31}, {78, 78, 720}, {79, 109, -36}, {110, 110, 721}, {111, 122, -29}, },
{{48, 122, -710}, },
{{48, 48, 722}, {49, 49, 723}, {50, 50, 724}, {51, 51, 725}, {52, 52, 726}, {53, 53, 727}, {54, 54, 728}, {55, 55, 729}, {56, 56, 730}, {57, 57, 731}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 57, -712}, },
{{48, 122, -36}, },
{{48, 122, -36}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{46, 46, 732}, },
{{48, 48, 733}, {49, 49, 734}, {50, 50, 735}, {51, 51, 736}, {52, 52, 737}, {53, 53, 738}, {54, 54, 739}, {55, 55, 740}, {56, 56, 741}, {57, 57, 742}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
{{48, 57, -734}, },
}
{ // WKT
{{9, 9, 1}, {10, 10, 2}, {13, 13, 3}, {32, 32, 4}, {40, 40, 5}, {41, 41, 6}, {43, 43, 7}, {44, 44, 8}, {45, 45, 9}, {46, 46, 10}, {48, 48, 11}, {49, 49, 12}, {50, 50, 13}, {51, 51, 14}, {52, 52, 15}, {53, 53, 16}, {54, 54, 17}, {55, 55, 18}, {56, 56, 19}, {57, 57, 20}, {58, 58, 21}, {69, 69, 22}, {71, 71, 23}, {76, 76, 24}, {77, 77, 25}, {80, 80, 26}, {101, 101, 27}, {103, 103, 28}, {108, 108, 29}, {109, 109, 30}, {112, 112, 31}, },
{{9, 9, 1}, {10, 10, 32}, {13, 13, 33}, {32, 32, 34}, },
{{9, 32, -3}, },
{{9, 9, 1}, {10, 10, 35}, {13, 32, -3}, },
{{9, 32, -3}, },
{},
{},
{{46, 46, 36}, {48, 48, 37}, {49, 49, 38}, {50, 50, 39}, {51, 51, 40}, {52, 52, 41}, {53, 53, 42}, {54, 54, 43}, {55, 55, 44}, {56, 56, 45}, {57, 57, 46}, },
{},
{{46, 57, -9}, },
{{48, 48, 47}, {49, 49, 48}, {50, 50, 49}, {51, 51, 50}, {52, 52, 51}, {53, 53, 52}, {54, 54, 53}, {55, 55, 54}, {56, 56, 55}, {57, 57, 56}, },
{{46, 46, 36}, {48, 57, -2}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{{46, 57, -13}, },
{},
{{77, 77, 57}, {109, 109, 58}, },
{{69, 69, 59}, {101, 101, 60}, },
{{73, 73, 61}, {105, 105, 62}, },
{{85, 85, 63}, {117, 117, 64}, },
{{79, 79, 65}, {111, 111, 66}, },
{{77, 109, -24}, },
{{69, 101, -25}, },
{{73, 105, -26}, },
{{85, 117, -27}, },
{{79, 111, -28}, },
{{9, 32, -3}, },
{{9, 9, 1}, {10, 10, 67}, {13, 32, -3}, },
{{9, 32, -3}, },
{{9, 32, -3}, },
{{48, 57, -12}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{46, 57, -9}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{48, 57, -12}, },
{{80, 80, 68}, {112, 112, 69}, },
{{80, 112, -59}, },
{{79, 79, 70}, {111, 111, 71}, },
{{79, 111, -61}, },
{{78, 78, 72}, {110, 110, 73}, },
{{78, 110, -63}, },
{{76, 76, 74}, {108, 108, 75}, },
{{76, 108, -65}, },
{{73, 73, 76}, {76, 76, 77}, {105, 105, 78}, {108, 108, 79}, },
{{73, 108, -67}, },
{{9, 32, -3}, },
{{84, 84, 80}, {116, 116, 81}, },
{{84, 116, -70}, },
{{77, 77, 82}, {109, 109, 83}, },
{{77, 109, -72}, },
{{69, 69, 84}, {101, 101, 85}, },
{{69, 101, -74}, },
{{84, 84, 86}, {116, 116, 87}, },
{{84, 116, -76}, },
{{78, 78, 88}, {110, 110, 89}, },
{{89, 89, 90}, {121, 121, 91}, },
{{78, 110, -78}, },
{{89, 121, -79}, },
{{89, 89, 92}, {121, 121, 93}, },
{{89, 121, -82}, },
{{69, 69, 94}, {101, 101, 95}, },
{{69, 101, -84}, },
{{83, 83, 96}, {115, 115, 97}, },
{{83, 115, -86}, },
{{73, 73, 98}, {105, 105, 99}, },
{{73, 105, -88}, },
{{84, 84, 100}, {116, 116, 101}, },
{{84, 116, -90}, },
{{71, 71, 102}, {103, 103, 103}, },
{{71, 103, -92}, },
{},
{},
{{84, 84, 104}, {116, 116, 105}, },
{{84, 116, -96}, },
{{84, 84, 106}, {116, 116, 107}, },
{{84, 116, -98}, },
{{76, 76, 108}, {80, 80, 109}, {108, 108, 110}, {112, 112, 111}, },
{{76, 112, -100}, },
{},
{},
{{79, 79, 112}, {111, 111, 113}, },
{{79, 111, -104}, },
{{82, 82, 114}, {114, 114, 115}, },
{{82, 114, -106}, },
{{82, 82, 116}, {114, 114, 117}, },
{{82, 114, -108}, },
{{73, 73, 118}, {105, 105, 119}, },
{{79, 79, 120}, {111, 111, 121}, },
{{73, 105, -110}, },
{{79, 111, -111}, },
{{78, 78, 122}, {110, 110, 123}, },
{{78, 110, -114}, },
{{89, 89, 124}, {121, 121, 125}, },
{{89, 121, -116}, },
{{73, 73, 126}, {105, 105, 127}, },
{{73, 105, -118}, },
{{78, 78, 128}, {110, 110, 129}, },
{{78, 110, -120}, },
{{73, 73, 130}, {76, 76, 131}, {105, 105, 132}, {108, 108, 133}, },
{{73, 108, -122}, },
{},
{},
{{67, 67, 134}, {99, 99, 135}, },
{{67, 99, -126}, },
{{78, 78, 136}, {110, 110, 137}, },
{{78, 110, -128}, },
{{69, 69, 138}, {101, 101, 139}, },
{{69, 101, -130}, },
{{78, 78, 140}, {110, 110, 141}, },
{{89, 89, 142}, {121, 121, 143}, },
{{78, 110, -132}, },
{{89, 121, -133}, },
{{79, 79, 144}, {111, 111, 145}, },
{{79, 111, -136}, },
{{71, 71, 146}, {103, 103, 147}, },
{{71, 103, -138}, },
{{83, 83, 148}, {115, 115, 149}, },
{{83, 115, -140}, },
{{84, 84, 150}, {116, 116, 151}, },
{{84, 116, -142}, },
{{71, 71, 152}, {103, 103, 153}, },
{{71, 103, -144}, },
{{76, 76, 154}, {108, 108, 155}, },
{{76, 108, -146}, },
{},
{},
{{84, 84, 156}, {116, 116, 157}, },
{{84, 116, -150}, },
{},
{},
{{79, 79, 158}, {111, 111, 159}, },
{{79, 111, -154}, },
{{76, 76, 160}, {108, 108, 161}, },
{{76, 108, -156}, },
{{82, 82, 162}, {114, 114, 163}, },
{{82, 114, -158}, },
{{78, 78, 164}, {110, 110, 165}, },
{{78, 110, -160}, },
{{69, 69, 166}, {101, 101, 167}, },
{{69, 101, -162}, },
{{73, 73, 168}, {105, 105, 169}, },
{{73, 105, -164}, },
{},
{},
{{67, 67, 170}, {99, 99, 171}, },
{{67, 99, -168}, },
{{78, 78, 172}, {110, 110, 173}, },
{{78, 110, -170}, },
{{84, 84, 174}, {116, 116, 175}, },
{{84, 116, -172}, },
{{71, 71, 176}, {103, 103, 177}, },
{{71, 103, -174}, },
{{73, 73, 178}, {105, 105, 179}, },
{{73, 105, -176}, },
{},
{},
{{79, 79, 180}, {111, 111, 181}, },
{{79, 111, -180}, },
{{78, 78, 182}, {110, 110, 183}, },
{{78, 110, -182}, },
{},
{},
}
};*/
private static int[][] accept;
/* {
// NORMAL
{-1, 8, 8, 8, 8, -1, 12, 13, 11, 16, 11, 14, 58, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 15, 17, 18, 19, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 8, 8, 8, 8, -1, -1, -1, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 22, 20, 21, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 35, 55, 55, 35, 55, 55, 55, 55, 55, 55, 55, 55, 25, 55, 25, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 8, 54, -1, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 55, 55, 24, 24, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 23, 23, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 26, 26, 55, 55, 55, 55, 51, 51, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 48, 48, 55, 55, 55, 55, -1, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 34, 34, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, -1, 55, 55, 55, 55, 7, 7, 55, 55, 55, 55, 49, 49, 55, 55, 27, 27, 55, 55, 55, 55, 55, 55, 55, 55, 0, 0, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 30, 30, 47, 47, 55, 55, 55, 55, 55, 55, -1, -1, 32, 32, 55, 55, 37, 37, 28, 28, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 45, 45, 55, 55, 55, 55, 42, 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 55, 41, 41, 55, 55, -1, -1, -1, 46, 46, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 2, 2, 40, 40, 50, 50, -1, -1, -1, 43, 43, 38, 38, -1, -1, -1, -1, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 44, 44, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 55, 39, 39, 1, 1, 55, 55, 3, 3, 55, 55, -1, -1, -1, -1, -1, -1, -1, 55, 55, 55, 55, 55, 55, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 55, 55, 55, 5, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 55, 55, 55, -1, -1, -1, 29, 29, -1, -1, 55, 55, 55, 55, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 33, 33, 55, 55, 4, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 31, 31, 55, 55, -1, 55, 55, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6, 6, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, -1, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, },
// WKT
{-1, 8, 8, 8, 8, 12, 13, 11, 16, 11, 14, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8, 8, 8, 8, -1, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, 7, -1, -1, -1, -1, -1, -1, 0, 0, -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, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 1, -1, -1, 3, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, 4, -1, -1, -1, -1, 6, 6, },
};*/
public static class State
{
public final static State NORMAL = new State(0);
public final static State WKT = new State(1);
private int id;
private State(@SuppressWarnings("hiding") int id)
{
this.id = id;
}
public int id()
{
return this.id;
}
}
static
{
try
{
DataInputStream s = new DataInputStream(
new BufferedInputStream(
Lexer.class.getResourceAsStream("lexer.dat")));
// read gotoTable
int length = s.readInt();
gotoTable = new int[length][][][];
for(int i = 0; i < gotoTable.length; i++)
{
length = s.readInt();
gotoTable[i] = new int[length][][];
for(int j = 0; j < gotoTable[i].length; j++)
{
length = s.readInt();
gotoTable[i][j] = new int[length][3];
for(int k = 0; k < gotoTable[i][j].length; k++)
{
for(int l = 0; l < 3; l++)
{
gotoTable[i][j][k][l] = s.readInt();
}
}
}
}
// read accept
length = s.readInt();
accept = new int[length][];
for(int i = 0; i < accept.length; i++)
{
length = s.readInt();
accept[i] = new int[length];
for(int j = 0; j < accept[i].length; j++)
{
accept[i][j] = s.readInt();
}
}
s.close();
}
catch(Exception e)
{
throw new RuntimeException("The file \"lexer.dat\" is either missing or corrupted.");
}
}
}