# $ANTLR 3.1.3 Mar 18, 2009 10:09:25 mexp.g 2010-08-30 14:33:36
import sys
from schrodinger.application.desmond.antlr3 import DEFAULT_CHANNEL
from schrodinger.application.desmond.antlr3 import DFA
from schrodinger.application.desmond.antlr3 import BaseRecognizer
from schrodinger.application.desmond.antlr3 import EarlyExitException
from schrodinger.application.desmond.antlr3 import Lexer
from schrodinger.application.desmond.antlr3 import MismatchedSetException
from schrodinger.application.desmond.antlr3 import NoViableAltException
from schrodinger.application.desmond.antlr3 import RecognizerSharedState
from schrodinger.application.desmond.antlr3 import version_str_to_tuple
# for convenience in actions
HIDDEN = BaseRecognizer.HIDDEN
# token types
POPEN = 25
SUBTROP = 30
COPEN = 37
ADDOP = 31
EOF = -1
INTERVAL = 18
IF = 9
ELEM = 5
T__55 = 55
T__56 = 56
T__57 = 57
PCLOSE = 27
NAME = 16
PROG = 13
T__58 = 58
T__51 = 51
T__52 = 52
T__53 = 53
T__54 = 54
EXP = 34
MULTOP = 32
COMMA = 23
BIND = 7
IDENT = 24
VAR = 10
DIGIT = 40
HEADER = 12
EQ = 28
COMMENT = 42
T__50 = 50
DECL_OUTPUT = 14
BCLOSE = 36
T__46 = 46
T__47 = 47
T__45 = 45
SERIES = 8
T__48 = 48
STATIC = 11
T__49 = 49
ITER = 6
LIT = 26
INITKER = 21
CCLOSE = 38
DECL_META = 15
SEMI = 22
ALPHA = 41
COLON = 39
WS = 44
NEWLINE = 43
BLOCK = 4
DIVOP = 33
DIM = 20
CUTOFF = 19
BOPEN = 35
STRING = 29
FIRST = 17
[docs]class mexpLexer(Lexer):
grammarFileName = "mexp.g"
antlr_version = version_str_to_tuple("3.1.3 Mar 18, 2009 10:09:25")
antlr_version_str = "3.1.3 Mar 18, 2009 10:09:25"
[docs] def __init__(self, input=None, state=None):
if state is None:
state = RecognizerSharedState()
super(mexpLexer, self).__init__(input, state)
self.dfa12 = self.DFA12(self,
12,
eot=self.DFA12_eot,
eof=self.DFA12_eof,
min=self.DFA12_min,
max=self.DFA12_max,
accept=self.DFA12_accept,
special=self.DFA12_special,
transition=self.DFA12_transition)
[docs] def reportError(self, err):
import sys
BaseRecognizer.reportError(self, err)
sys.stderr.write("unable to parse m-expression\n")
exit(1)
# $ANTLR start "T__45"
[docs] def mT__45(self,):
try:
_type = T__45
_channel = DEFAULT_CHANNEL
# mexp.g:15:7: ( 'static' )
# mexp.g:15:9: 'static'
self.match("static")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__45"
# $ANTLR start "T__46"
[docs] def mT__46(self,):
try:
_type = T__46
_channel = DEFAULT_CHANNEL
# mexp.g:16:7: ( 'declare_output' )
# mexp.g:16:9: 'declare_output'
self.match("declare_output")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__46"
# $ANTLR start "T__47"
[docs] def mT__47(self,):
try:
_type = T__47
_channel = DEFAULT_CHANNEL
# mexp.g:17:7: ( 'declare_meta' )
# mexp.g:17:9: 'declare_meta'
self.match("declare_meta")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__47"
# $ANTLR start "T__48"
[docs] def mT__48(self,):
try:
_type = T__48
_channel = DEFAULT_CHANNEL
# mexp.g:18:7: ( 'name' )
# mexp.g:18:9: 'name'
self.match("name")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__48"
# $ANTLR start "T__49"
[docs] def mT__49(self,):
try:
_type = T__49
_channel = DEFAULT_CHANNEL
# mexp.g:19:7: ( 'first' )
# mexp.g:19:9: 'first'
self.match("first")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__49"
# $ANTLR start "T__50"
[docs] def mT__50(self,):
try:
_type = T__50
_channel = DEFAULT_CHANNEL
# mexp.g:20:7: ( 'inf' )
# mexp.g:20:9: 'inf'
self.match("inf")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__50"
# $ANTLR start "T__51"
[docs] def mT__51(self,):
try:
_type = T__51
_channel = DEFAULT_CHANNEL
# mexp.g:21:7: ( 'interval' )
# mexp.g:21:9: 'interval'
self.match("interval")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__51"
# $ANTLR start "T__52"
[docs] def mT__52(self,):
try:
_type = T__52
_channel = DEFAULT_CHANNEL
# mexp.g:22:7: ( 'cutoff' )
# mexp.g:22:9: 'cutoff'
self.match("cutoff")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__52"
# $ANTLR start "T__53"
[docs] def mT__53(self,):
try:
_type = T__53
_channel = DEFAULT_CHANNEL
# mexp.g:23:7: ( 'dimension' )
# mexp.g:23:9: 'dimension'
self.match("dimension")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__53"
# $ANTLR start "T__54"
[docs] def mT__54(self,):
try:
_type = T__54
_channel = DEFAULT_CHANNEL
# mexp.g:24:7: ( 'initial' )
# mexp.g:24:9: 'initial'
self.match("initial")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__54"
# $ANTLR start "T__55"
[docs] def mT__55(self,):
try:
_type = T__55
_channel = DEFAULT_CHANNEL
# mexp.g:25:7: ( 'series' )
# mexp.g:25:9: 'series'
self.match("series")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__55"
# $ANTLR start "T__56"
[docs] def mT__56(self,):
try:
_type = T__56
_channel = DEFAULT_CHANNEL
# mexp.g:26:7: ( 'if' )
# mexp.g:26:9: 'if'
self.match("if")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__56"
# $ANTLR start "T__57"
[docs] def mT__57(self,):
try:
_type = T__57
_channel = DEFAULT_CHANNEL
# mexp.g:27:7: ( 'then' )
# mexp.g:27:9: 'then'
self.match("then")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__57"
# $ANTLR start "T__58"
[docs] def mT__58(self,):
try:
_type = T__58
_channel = DEFAULT_CHANNEL
# mexp.g:28:7: ( 'else' )
# mexp.g:28:9: 'else'
self.match("else")
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "T__58"
# $ANTLR start "LIT"
[docs] def mLIT(self,):
try:
_type = LIT
_channel = DEFAULT_CHANNEL
# mexp.g:106:6: ( ( DIGIT )+ ( '.' ( DIGIT )* )? ( ( 'e' | 'E' ) ( '+' | '-' )? ( DIGIT )+ )? )
# mexp.g:106:8: ( DIGIT )+ ( '.' ( DIGIT )* )? ( ( 'e' | 'E' ) ( '+' | '-' )? ( DIGIT )+ )?
# mexp.g:106:8: ( DIGIT )+
cnt1 = 0
while True: #loop1
alt1 = 2
LA1_0 = self.input.LA(1)
if ((48 <= LA1_0 <= 57)):
alt1 = 1
if alt1 == 1:
# mexp.g:106:8: DIGIT
self.mDIGIT()
else:
if cnt1 >= 1:
break #loop1
eee = EarlyExitException(1, self.input)
raise eee
cnt1 += 1
# mexp.g:106:15: ( '.' ( DIGIT )* )?
alt3 = 2
LA3_0 = self.input.LA(1)
if (LA3_0 == 46):
alt3 = 1
if alt3 == 1:
# mexp.g:106:18: '.' ( DIGIT )*
self.match(46)
# mexp.g:106:22: ( DIGIT )*
while True: #loop2
alt2 = 2
LA2_0 = self.input.LA(1)
if ((48 <= LA2_0 <= 57)):
alt2 = 1
if alt2 == 1:
# mexp.g:106:22: DIGIT
self.mDIGIT()
else:
break #loop2
# mexp.g:106:33: ( ( 'e' | 'E' ) ( '+' | '-' )? ( DIGIT )+ )?
alt6 = 2
LA6_0 = self.input.LA(1)
if (LA6_0 == 69 or LA6_0 == 101):
alt6 = 1
if alt6 == 1:
# mexp.g:106:34: ( 'e' | 'E' ) ( '+' | '-' )? ( DIGIT )+
if self.input.LA(1) == 69 or self.input.LA(1) == 101:
self.input.consume()
else:
mse = MismatchedSetException(None, self.input)
self.recover(mse)
raise mse
# mexp.g:106:44: ( '+' | '-' )?
alt4 = 2
LA4_0 = self.input.LA(1)
if (LA4_0 == 43 or LA4_0 == 45):
alt4 = 1
if alt4 == 1:
# mexp.g:
if self.input.LA(1) == 43 or self.input.LA(1) == 45:
self.input.consume()
else:
mse = MismatchedSetException(None, self.input)
self.recover(mse)
raise mse
# mexp.g:106:58: ( DIGIT )+
cnt5 = 0
while True: #loop5
alt5 = 2
LA5_0 = self.input.LA(1)
if ((48 <= LA5_0 <= 57)):
alt5 = 1
if alt5 == 1:
# mexp.g:106:58: DIGIT
self.mDIGIT()
else:
if cnt5 >= 1:
break #loop5
eee = EarlyExitException(5, self.input)
raise eee
cnt5 += 1
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "LIT"
# $ANTLR start "IDENT"
[docs] def mIDENT(self,):
try:
_type = IDENT
_channel = DEFAULT_CHANNEL
# mexp.g:107:7: ( ALPHA ( ALPHA | DIGIT | '_' )* )
# mexp.g:107:9: ALPHA ( ALPHA | DIGIT | '_' )*
self.mALPHA()
# mexp.g:107:15: ( ALPHA | DIGIT | '_' )*
while True: #loop7
alt7 = 2
LA7_0 = self.input.LA(1)
if ((48 <= LA7_0 <= 57) or (65 <= LA7_0 <= 90) or LA7_0 == 95 or
(97 <= LA7_0 <= 122)):
alt7 = 1
if alt7 == 1:
# mexp.g:
if (48 <= self.input.LA(1) <= 57) or (
65 <= self.input.LA(1) <= 90) or self.input.LA(
1) == 95 or (97 <= self.input.LA(1) <= 122):
self.input.consume()
else:
mse = MismatchedSetException(None, self.input)
self.recover(mse)
raise mse
else:
break #loop7
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "IDENT"
# $ANTLR start "EQ"
[docs] def mEQ(self,):
try:
_type = EQ
_channel = DEFAULT_CHANNEL
# mexp.g:109:4: ( '=' )
# mexp.g:109:6: '='
self.match(61)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "EQ"
# $ANTLR start "EXP"
[docs] def mEXP(self,):
try:
_type = EXP
_channel = DEFAULT_CHANNEL
# mexp.g:110:6: ( '^' )
# mexp.g:110:8: '^'
self.match(94)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "EXP"
# $ANTLR start "ADDOP"
[docs] def mADDOP(self,):
try:
_type = ADDOP
_channel = DEFAULT_CHANNEL
# mexp.g:111:7: ( '+' )
# mexp.g:111:9: '+'
self.match(43)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "ADDOP"
# $ANTLR start "SUBTROP"
[docs] def mSUBTROP(self,):
try:
_type = SUBTROP
_channel = DEFAULT_CHANNEL
# mexp.g:111:9: ( '-' )
# mexp.g:111:11: '-'
self.match(45)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "SUBTROP"
# $ANTLR start "MULTOP"
[docs] def mMULTOP(self,):
try:
_type = MULTOP
_channel = DEFAULT_CHANNEL
# mexp.g:112:8: ( '*' )
# mexp.g:112:10: '*'
self.match(42)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "MULTOP"
# $ANTLR start "DIVOP"
[docs] def mDIVOP(self,):
try:
_type = DIVOP
_channel = DEFAULT_CHANNEL
# mexp.g:112:7: ( '/' )
# mexp.g:112:9: '/'
self.match(47)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "DIVOP"
# $ANTLR start "POPEN"
[docs] def mPOPEN(self,):
try:
_type = POPEN
_channel = DEFAULT_CHANNEL
# mexp.g:113:8: ( '(' )
# mexp.g:113:10: '('
self.match(40)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "POPEN"
# $ANTLR start "PCLOSE"
[docs] def mPCLOSE(self,):
try:
_type = PCLOSE
_channel = DEFAULT_CHANNEL
# mexp.g:113:8: ( ')' )
# mexp.g:113:10: ')'
self.match(41)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "PCLOSE"
# $ANTLR start "BOPEN"
[docs] def mBOPEN(self,):
try:
_type = BOPEN
_channel = DEFAULT_CHANNEL
# mexp.g:114:7: ( '[' )
# mexp.g:114:9: '['
self.match(91)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "BOPEN"
# $ANTLR start "BCLOSE"
[docs] def mBCLOSE(self,):
try:
_type = BCLOSE
_channel = DEFAULT_CHANNEL
# mexp.g:114:8: ( ']' )
# mexp.g:114:10: ']'
self.match(93)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "BCLOSE"
# $ANTLR start "COPEN"
[docs] def mCOPEN(self,):
try:
_type = COPEN
_channel = DEFAULT_CHANNEL
# mexp.g:115:7: ( '{' )
# mexp.g:115:9: '{'
self.match(123)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "COPEN"
# $ANTLR start "CCLOSE"
[docs] def mCCLOSE(self,):
try:
_type = CCLOSE
_channel = DEFAULT_CHANNEL
# mexp.g:115:8: ( '}' )
# mexp.g:115:10: '}'
self.match(125)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "CCLOSE"
# $ANTLR start "STRING"
[docs] def mSTRING(self,):
try:
_type = STRING
_channel = DEFAULT_CHANNEL
# mexp.g:117:8: ( '\"' (~ '\"' )* '\"' )
# mexp.g:117:10: '\"' (~ '\"' )* '\"'
self.match(34)
# mexp.g:117:14: (~ '\"' )*
while True: #loop8
alt8 = 2
LA8_0 = self.input.LA(1)
if ((0 <= LA8_0 <= 33) or (35 <= LA8_0 <= 65535)):
alt8 = 1
if alt8 == 1:
# mexp.g:117:15: ~ '\"'
if (0 <= self.input.LA(1) <= 33) or (35 <= self.input.LA(1)
<= 65535):
self.input.consume()
else:
mse = MismatchedSetException(None, self.input)
self.recover(mse)
raise mse
else:
break #loop8
self.match(34)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "STRING"
# $ANTLR start "SEMI"
[docs] def mSEMI(self,):
try:
_type = SEMI
_channel = DEFAULT_CHANNEL
# mexp.g:119:6: ( ';' )
# mexp.g:119:8: ';'
self.match(59)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "SEMI"
# $ANTLR start "COLON"
[docs] def mCOLON(self,):
try:
_type = COLON
_channel = DEFAULT_CHANNEL
# mexp.g:119:7: ( ':' )
# mexp.g:119:9: ':'
self.match(58)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "COLON"
# $ANTLR start "COMMA"
[docs] def mCOMMA(self,):
try:
_type = COMMA
_channel = DEFAULT_CHANNEL
# mexp.g:120:7: ( ',' )
# mexp.g:120:9: ','
self.match(44)
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "COMMA"
# $ANTLR start "WS"
[docs] def mWS(self,):
try:
_type = WS
_channel = DEFAULT_CHANNEL
# mexp.g:121:4: ( ( ' ' | '\\t' | COMMENT | NEWLINE ) )
# mexp.g:121:6: ( ' ' | '\\t' | COMMENT | NEWLINE )
# mexp.g:121:6: ( ' ' | '\\t' | COMMENT | NEWLINE )
alt9 = 4
LA9 = self.input.LA(1)
if LA9 == 32:
alt9 = 1
elif LA9 == 9:
alt9 = 2
elif LA9 == 35:
alt9 = 3
elif LA9 == 10 or LA9 == 13:
alt9 = 4
else:
nvae = NoViableAltException("", 9, 0, self.input)
raise nvae
if alt9 == 1:
# mexp.g:121:7: ' '
self.match(32)
elif alt9 == 2:
# mexp.g:121:13: '\\t'
self.match(9)
elif alt9 == 3:
# mexp.g:121:20: COMMENT
self.mCOMMENT()
elif alt9 == 4:
# mexp.g:121:30: NEWLINE
self.mNEWLINE()
#action start
_channel = HIDDEN
#action end
self._state.type = _type
self._state.channel = _channel
finally:
pass
# $ANTLR end "WS"
# $ANTLR start "COMMENT"
# $ANTLR end "COMMENT"
# $ANTLR start "NEWLINE"
[docs] def mNEWLINE(self,):
try:
# mexp.g:124:18: ( '\\r\\n' | '\\r' | '\\n' )
alt11 = 3
LA11_0 = self.input.LA(1)
if (LA11_0 == 13):
LA11_1 = self.input.LA(2)
if (LA11_1 == 10):
alt11 = 1
else:
alt11 = 2
elif (LA11_0 == 10):
alt11 = 3
else:
nvae = NoViableAltException("", 11, 0, self.input)
raise nvae
if alt11 == 1:
# mexp.g:124:20: '\\r\\n'
self.match("\r\n")
elif alt11 == 2:
# mexp.g:124:29: '\\r'
self.match(13)
elif alt11 == 3:
# mexp.g:124:36: '\\n'
self.match(10)
finally:
pass
# $ANTLR end "NEWLINE"
# $ANTLR start "ALPHA"
[docs] def mALPHA(self,):
try:
# mexp.g:125:24: ( 'a' .. 'z' | 'A' .. 'Z' )
# mexp.g:
if (65 <= self.input.LA(1) <= 90) or (97 <= self.input.LA(1) <=
122):
self.input.consume()
else:
mse = MismatchedSetException(None, self.input)
self.recover(mse)
raise mse
finally:
pass
# $ANTLR end "ALPHA"
# $ANTLR start "DIGIT"
[docs] def mDIGIT(self,):
try:
# mexp.g:126:18: ( '0' .. '9' )
# mexp.g:126:20: '0' .. '9'
self.matchRange(48, 57)
finally:
pass
# $ANTLR end "DIGIT"
[docs] def mTokens(self):
# mexp.g:1:8: ( T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | LIT | IDENT | EQ | EXP | ADDOP | SUBTROP | MULTOP | DIVOP | POPEN | PCLOSE | BOPEN | BCLOSE | COPEN | CCLOSE | STRING | SEMI | COLON | COMMA | WS )
alt12 = 33
alt12 = self.dfa12.predict(self.input)
if alt12 == 1:
# mexp.g:1:10: T__45
self.mT__45()
elif alt12 == 2:
# mexp.g:1:16: T__46
self.mT__46()
elif alt12 == 3:
# mexp.g:1:22: T__47
self.mT__47()
elif alt12 == 4:
# mexp.g:1:28: T__48
self.mT__48()
elif alt12 == 5:
# mexp.g:1:34: T__49
self.mT__49()
elif alt12 == 6:
# mexp.g:1:40: T__50
self.mT__50()
elif alt12 == 7:
# mexp.g:1:46: T__51
self.mT__51()
elif alt12 == 8:
# mexp.g:1:52: T__52
self.mT__52()
elif alt12 == 9:
# mexp.g:1:58: T__53
self.mT__53()
elif alt12 == 10:
# mexp.g:1:64: T__54
self.mT__54()
elif alt12 == 11:
# mexp.g:1:70: T__55
self.mT__55()
elif alt12 == 12:
# mexp.g:1:76: T__56
self.mT__56()
elif alt12 == 13:
# mexp.g:1:82: T__57
self.mT__57()
elif alt12 == 14:
# mexp.g:1:88: T__58
self.mT__58()
elif alt12 == 15:
# mexp.g:1:94: LIT
self.mLIT()
elif alt12 == 16:
# mexp.g:1:98: IDENT
self.mIDENT()
elif alt12 == 17:
# mexp.g:1:104: EQ
self.mEQ()
elif alt12 == 18:
# mexp.g:1:107: EXP
self.mEXP()
elif alt12 == 19:
# mexp.g:1:111: ADDOP
self.mADDOP()
elif alt12 == 20:
# mexp.g:1:117: SUBTROP
self.mSUBTROP()
elif alt12 == 21:
# mexp.g:1:125: MULTOP
self.mMULTOP()
elif alt12 == 22:
# mexp.g:1:132: DIVOP
self.mDIVOP()
elif alt12 == 23:
# mexp.g:1:138: POPEN
self.mPOPEN()
elif alt12 == 24:
# mexp.g:1:144: PCLOSE
self.mPCLOSE()
elif alt12 == 25:
# mexp.g:1:151: BOPEN
self.mBOPEN()
elif alt12 == 26:
# mexp.g:1:157: BCLOSE
self.mBCLOSE()
elif alt12 == 27:
# mexp.g:1:164: COPEN
self.mCOPEN()
elif alt12 == 28:
# mexp.g:1:170: CCLOSE
self.mCCLOSE()
elif alt12 == 29:
# mexp.g:1:177: STRING
self.mSTRING()
elif alt12 == 30:
# mexp.g:1:184: SEMI
self.mSEMI()
elif alt12 == 31:
# mexp.g:1:189: COLON
self.mCOLON()
elif alt12 == 32:
# mexp.g:1:195: COMMA
self.mCOMMA()
elif alt12 == 33:
# mexp.g:1:201: WS
self.mWS()
# lookup tables for DFA #12
DFA12_eot = DFA.unpack(
u"\1\uffff\10\12\23\uffff\7\12\1\60\11\12\1\72\2\12\1\uffff\7\12"
u"\1\104\1\12\1\uffff\3\12\1\111\1\112\4\12\1\uffff\1\117\3\12\2"
u"\uffff\1\123\1\124\2\12\1\uffff\2\12\1\131\2\uffff\3\12\1\135\1"
u"\uffff\2\12\1\141\1\uffff\2\12\1\144\1\uffff\2\12\1\uffff\3\12"
u"\1\152\1\12\1\uffff\1\154\1\uffff")
DFA12_eof = DFA.unpack(u"\155\uffff")
DFA12_min = DFA.unpack(
u"\1\11\2\145\1\141\1\151\1\146\1\165\1\150\1\154\23\uffff\1\141"
u"\1\162\1\143\2\155\1\162\1\146\1\60\1\164\1\145\1\163\1\164\1\151"
u"\1\154\2\145\1\163\1\60\1\145\1\164\1\uffff\1\157\1\156\1\145\1"
u"\151\1\145\1\141\1\156\1\60\1\164\1\uffff\1\162\1\151\1\146\2\60"
u"\1\143\1\163\1\162\1\163\1\uffff\1\60\1\166\1\141\1\146\2\uffff"
u"\2\60\1\145\1\151\1\uffff\1\141\1\154\1\60\2\uffff\1\137\1\157"
u"\1\154\1\60\1\uffff\1\155\1\156\1\60\1\uffff\1\165\1\145\1\60\1"
u"\uffff\2\164\1\uffff\1\160\1\141\1\165\1\60\1\164\1\uffff\1\60"
u"\1\uffff")
DFA12_max = DFA.unpack(
u"\1\175\1\164\1\151\1\141\1\151\1\156\1\165\1\150\1\154\23\uffff"
u"\1\141\1\162\1\143\2\155\1\162\1\164\1\172\1\164\1\145\1\163\1"
u"\164\1\151\1\154\2\145\1\163\1\172\1\145\1\164\1\uffff\1\157\1"
u"\156\1\145\1\151\1\145\1\141\1\156\1\172\1\164\1\uffff\1\162\1"
u"\151\1\146\2\172\1\143\1\163\1\162\1\163\1\uffff\1\172\1\166\1"
u"\141\1\146\2\uffff\2\172\1\145\1\151\1\uffff\1\141\1\154\1\172"
u"\2\uffff\1\137\1\157\1\154\1\172\1\uffff\1\157\1\156\1\172\1\uffff"
u"\1\165\1\145\1\172\1\uffff\2\164\1\uffff\1\160\1\141\1\165\1\172"
u"\1\164\1\uffff\1\172\1\uffff")
DFA12_accept = DFA.unpack(
u"\11\uffff\1\17\1\20\1\21\1\22\1\23\1\24\1\25\1\26\1\27\1\30\1\31"
u"\1\32\1\33\1\34\1\35\1\36\1\37\1\40\1\41\24\uffff\1\14\11\uffff"
u"\1\6\11\uffff\1\4\4\uffff\1\15\1\16\4\uffff\1\5\3\uffff\1\1\1\13"
u"\4\uffff\1\10\3\uffff\1\12\3\uffff\1\7\2\uffff\1\11\5\uffff\1\3"
u"\1\uffff\1\2")
DFA12_special = DFA.unpack(u"\155\uffff")
DFA12_transition = [
DFA.unpack(
u"\2\33\2\uffff\1\33\22\uffff\1\33\1\uffff\1\27\1\33\4"
u"\uffff\1\21\1\22\1\17\1\15\1\32\1\16\1\uffff\1\20\12\11\1\31\1"
u"\30\1\uffff\1\13\3\uffff\32\12\1\23\1\uffff\1\24\1\14\2\uffff\2"
u"\12\1\6\1\2\1\10\1\4\2\12\1\5\4\12\1\3\4\12\1\1\1\7\6\12\1\25\1"
u"\uffff\1\26"),
DFA.unpack(u"\1\35\16\uffff\1\34"),
DFA.unpack(u"\1\36\3\uffff\1\37"),
DFA.unpack(u"\1\40"),
DFA.unpack(u"\1\41"),
DFA.unpack(u"\1\43\7\uffff\1\42"),
DFA.unpack(u"\1\44"),
DFA.unpack(u"\1\45"),
DFA.unpack(u"\1\46"),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u"\1\47"),
DFA.unpack(u"\1\50"),
DFA.unpack(u"\1\51"),
DFA.unpack(u"\1\52"),
DFA.unpack(u"\1\53"),
DFA.unpack(u"\1\54"),
DFA.unpack(u"\1\55\2\uffff\1\57\12\uffff\1\56"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\1\61"),
DFA.unpack(u"\1\62"),
DFA.unpack(u"\1\63"),
DFA.unpack(u"\1\64"),
DFA.unpack(u"\1\65"),
DFA.unpack(u"\1\66"),
DFA.unpack(u"\1\67"),
DFA.unpack(u"\1\70"),
DFA.unpack(u"\1\71"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\1\73"),
DFA.unpack(u"\1\74"),
DFA.unpack(u""),
DFA.unpack(u"\1\75"),
DFA.unpack(u"\1\76"),
DFA.unpack(u"\1\77"),
DFA.unpack(u"\1\100"),
DFA.unpack(u"\1\101"),
DFA.unpack(u"\1\102"),
DFA.unpack(u"\1\103"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\1\105"),
DFA.unpack(u""),
DFA.unpack(u"\1\106"),
DFA.unpack(u"\1\107"),
DFA.unpack(u"\1\110"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\1\113"),
DFA.unpack(u"\1\114"),
DFA.unpack(u"\1\115"),
DFA.unpack(u"\1\116"),
DFA.unpack(u""),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\1\120"),
DFA.unpack(u"\1\121"),
DFA.unpack(u"\1\122"),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\1\125"),
DFA.unpack(u"\1\126"),
DFA.unpack(u""),
DFA.unpack(u"\1\127"),
DFA.unpack(u"\1\130"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u""),
DFA.unpack(u""),
DFA.unpack(u"\1\132"),
DFA.unpack(u"\1\133"),
DFA.unpack(u"\1\134"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u""),
DFA.unpack(u"\1\137\1\uffff\1\136"),
DFA.unpack(u"\1\140"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u""),
DFA.unpack(u"\1\142"),
DFA.unpack(u"\1\143"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u""),
DFA.unpack(u"\1\145"),
DFA.unpack(u"\1\146"),
DFA.unpack(u""),
DFA.unpack(u"\1\147"),
DFA.unpack(u"\1\150"),
DFA.unpack(u"\1\151"),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"\1\153"),
DFA.unpack(u""),
DFA.unpack(u"\12\12\7\uffff\32\12\4\uffff\1\12\1\uffff\32\12"),
DFA.unpack(u"")
]
# class definition for DFA #12
[docs]def main(argv, stdin=sys.stdin, stdout=sys.stdout, stderr=sys.stderr):
from antlr3.main import LexerMain
main = LexerMain(mexpLexer)
main.stdin = stdin
main.stdout = stdout
main.stderr = stderr
main.execute(argv)
if __name__ == '__main__':
main(sys.argv)