# $ANTLR 3.0.1 C.g 2010-02-23 09:58:53
from antlr3 import *
## @file
# The file defines the Lexer for C source files.
#
# THIS FILE IS AUTO-GENENERATED. PLEASE DON NOT MODIFY THIS FILE.
# This file is generated by running:
# java org.antlr.Tool C.g
#
# Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available
# under the terms and conditions of the BSD License which accompanies this
# distribution. The full text of the license may be found at:
#
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
##
# for convenience in actions
# token types
self, 25,
)
self, 35,
)
# $ANTLR start T25
try:
# C.g:27:5: ( ';' )
# C.g:27:7: ';'
finally:
pass
# $ANTLR end T25
# $ANTLR start T26
try:
# C.g:28:5: ( 'typedef' )
# C.g:28:7: 'typedef'
finally:
pass
# $ANTLR end T26
# $ANTLR start T27
try:
# C.g:29:5: ( ',' )
# C.g:29:7: ','
finally:
pass
# $ANTLR end T27
# $ANTLR start T28
try:
# C.g:30:5: ( '=' )
# C.g:30:7: '='
finally:
pass
# $ANTLR end T28
# $ANTLR start T29
try:
# C.g:31:5: ( 'extern' )
# C.g:31:7: 'extern'
finally:
pass
# $ANTLR end T29
# $ANTLR start T30
try:
# C.g:32:5: ( 'static' )
# C.g:32:7: 'static'
finally:
pass
# $ANTLR end T30
# $ANTLR start T31
try:
# C.g:33:5: ( 'auto' )
# C.g:33:7: 'auto'
finally:
pass
# $ANTLR end T31
# $ANTLR start T32
try:
# C.g:34:5: ( 'register' )
# C.g:34:7: 'register'
finally:
pass
# $ANTLR end T32
# $ANTLR start T33
try:
# C.g:35:5: ( 'STATIC' )
# C.g:35:7: 'STATIC'
finally:
pass
# $ANTLR end T33
# $ANTLR start T34
try:
# C.g:36:5: ( 'void' )
# C.g:36:7: 'void'
finally:
pass
# $ANTLR end T34
# $ANTLR start T35
try:
# C.g:37:5: ( 'char' )
# C.g:37:7: 'char'
finally:
pass
# $ANTLR end T35
# $ANTLR start T36
try:
# C.g:38:5: ( 'short' )
# C.g:38:7: 'short'
finally:
pass
# $ANTLR end T36
# $ANTLR start T37
try:
# C.g:39:5: ( 'int' )
# C.g:39:7: 'int'
finally:
pass
# $ANTLR end T37
# $ANTLR start T38
try:
# C.g:40:5: ( 'long' )
# C.g:40:7: 'long'
finally:
pass
# $ANTLR end T38
# $ANTLR start T39
try:
# C.g:41:5: ( 'float' )
# C.g:41:7: 'float'
finally:
pass
# $ANTLR end T39
# $ANTLR start T40
try:
# C.g:42:5: ( 'double' )
# C.g:42:7: 'double'
finally:
pass
# $ANTLR end T40
# $ANTLR start T41
try:
# C.g:43:5: ( 'signed' )
# C.g:43:7: 'signed'
finally:
pass
# $ANTLR end T41
# $ANTLR start T42
try:
# C.g:44:5: ( 'unsigned' )
# C.g:44:7: 'unsigned'
finally:
pass
# $ANTLR end T42
# $ANTLR start T43
try:
# C.g:45:5: ( '{' )
# C.g:45:7: '{'
finally:
pass
# $ANTLR end T43
# $ANTLR start T44
try:
# C.g:46:5: ( '}' )
# C.g:46:7: '}'
finally:
pass
# $ANTLR end T44
# $ANTLR start T45
try:
# C.g:47:5: ( 'struct' )
# C.g:47:7: 'struct'
finally:
pass
# $ANTLR end T45
# $ANTLR start T46
try:
# C.g:48:5: ( 'union' )
# C.g:48:7: 'union'
finally:
pass
# $ANTLR end T46
# $ANTLR start T47
try:
# C.g:49:5: ( ':' )
# C.g:49:7: ':'
finally:
pass
# $ANTLR end T47
# $ANTLR start T48
try:
# C.g:50:5: ( 'enum' )
# C.g:50:7: 'enum'
finally:
pass
# $ANTLR end T48
# $ANTLR start T49
try:
# C.g:51:5: ( 'const' )
# C.g:51:7: 'const'
finally:
pass
# $ANTLR end T49
# $ANTLR start T50
try:
# C.g:52:5: ( 'volatile' )
# C.g:52:7: 'volatile'
finally:
pass
# $ANTLR end T50
# $ANTLR start T51
try:
# C.g:53:5: ( 'IN' )
# C.g:53:7: 'IN'
finally:
pass
# $ANTLR end T51
# $ANTLR start T52
try:
# C.g:54:5: ( 'OUT' )
# C.g:54:7: 'OUT'
finally:
pass
# $ANTLR end T52
# $ANTLR start T53
try:
# C.g:55:5: ( 'OPTIONAL' )
# C.g:55:7: 'OPTIONAL'
finally:
pass
# $ANTLR end T53
# $ANTLR start T54
try:
# C.g:56:5: ( 'CONST' )
# C.g:56:7: 'CONST'
finally:
pass
# $ANTLR end T54
# $ANTLR start T55
try:
# C.g:57:5: ( 'UNALIGNED' )
# C.g:57:7: 'UNALIGNED'
finally:
pass
# $ANTLR end T55
# $ANTLR start T56
try:
# C.g:58:5: ( 'VOLATILE' )
# C.g:58:7: 'VOLATILE'
finally:
pass
# $ANTLR end T56
# $ANTLR start T57
try:
# C.g:59:5: ( 'GLOBAL_REMOVE_IF_UNREFERENCED' )
# C.g:59:7: 'GLOBAL_REMOVE_IF_UNREFERENCED'
finally:
pass
# $ANTLR end T57
# $ANTLR start T58
try:
# C.g:60:5: ( 'EFIAPI' )
# C.g:60:7: 'EFIAPI'
finally:
pass
# $ANTLR end T58
# $ANTLR start T59
try:
# C.g:61:5: ( 'EFI_BOOTSERVICE' )
# C.g:61:7: 'EFI_BOOTSERVICE'
finally:
pass
# $ANTLR end T59
# $ANTLR start T60
try:
# C.g:62:5: ( 'EFI_RUNTIMESERVICE' )
# C.g:62:7: 'EFI_RUNTIMESERVICE'
finally:
pass
# $ANTLR end T60
# $ANTLR start T61
try:
# C.g:63:5: ( 'PACKED' )
# C.g:63:7: 'PACKED'
finally:
pass
# $ANTLR end T61
# $ANTLR start T62
try:
# C.g:64:5: ( '(' )
# C.g:64:7: '('
finally:
pass
# $ANTLR end T62
# $ANTLR start T63
try:
# C.g:65:5: ( ')' )
# C.g:65:7: ')'
finally:
pass
# $ANTLR end T63
# $ANTLR start T64
try:
# C.g:66:5: ( '[' )
# C.g:66:7: '['
finally:
pass
# $ANTLR end T64
# $ANTLR start T65
try:
# C.g:67:5: ( ']' )
# C.g:67:7: ']'
finally:
pass
# $ANTLR end T65
# $ANTLR start T66
try:
# C.g:68:5: ( '*' )
# C.g:68:7: '*'
finally:
pass
# $ANTLR end T66
# $ANTLR start T67
try:
# C.g:69:5: ( '...' )
# C.g:69:7: '...'
finally:
pass
# $ANTLR end T67
# $ANTLR start T68
try:
# C.g:70:5: ( '+' )
# C.g:70:7: '+'
finally:
pass
# $ANTLR end T68
# $ANTLR start T69
try:
# C.g:71:5: ( '-' )
# C.g:71:7: '-'
finally:
pass
# $ANTLR end T69
# $ANTLR start T70
try:
# C.g:72:5: ( '/' )
# C.g:72:7: '/'
finally:
pass
# $ANTLR end T70
# $ANTLR start T71
try:
# C.g:73:5: ( '%' )
# C.g:73:7: '%'
finally:
pass
# $ANTLR end T71
# $ANTLR start T72
try:
# C.g:74:5: ( '++' )
# C.g:74:7: '++'
finally:
pass
# $ANTLR end T72
# $ANTLR start T73
try:
# C.g:75:5: ( '--' )
# C.g:75:7: '--'
finally:
pass
# $ANTLR end T73
# $ANTLR start T74
try:
# C.g:76:5: ( 'sizeof' )
# C.g:76:7: 'sizeof'
finally:
pass
# $ANTLR end T74
# $ANTLR start T75
try:
# C.g:77:5: ( '.' )
# C.g:77:7: '.'
finally:
pass
# $ANTLR end T75
# $ANTLR start T76
try:
# C.g:78:5: ( '->' )
# C.g:78:7: '->'
finally:
pass
# $ANTLR end T76
# $ANTLR start T77
try:
# C.g:79:5: ( '&' )
# C.g:79:7: '&'
finally:
pass
# $ANTLR end T77
# $ANTLR start T78
try:
# C.g:80:5: ( '~' )
# C.g:80:7: '~'
finally:
pass
# $ANTLR end T78
# $ANTLR start T79
try:
# C.g:81:5: ( '!' )
# C.g:81:7: '!'
finally:
pass
# $ANTLR end T79
# $ANTLR start T80
try:
# C.g:82:5: ( '*=' )
# C.g:82:7: '*='
finally:
pass
# $ANTLR end T80
# $ANTLR start T81
try:
# C.g:83:5: ( '/=' )
# C.g:83:7: '/='
finally:
pass
# $ANTLR end T81
# $ANTLR start T82
try:
# C.g:84:5: ( '%=' )
# C.g:84:7: '%='
finally:
pass
# $ANTLR end T82
# $ANTLR start T83
try:
# C.g:85:5: ( '+=' )
# C.g:85:7: '+='
finally:
pass
# $ANTLR end T83
# $ANTLR start T84
try:
# C.g:86:5: ( '-=' )
# C.g:86:7: '-='
finally:
pass
# $ANTLR end T84
# $ANTLR start T85
try:
# C.g:87:5: ( '<<=' )
# C.g:87:7: '<<='
finally:
pass
# $ANTLR end T85
# $ANTLR start T86
try:
# C.g:88:5: ( '>>=' )
# C.g:88:7: '>>='
finally:
pass
# $ANTLR end T86
# $ANTLR start T87
try:
# C.g:89:5: ( '&=' )
# C.g:89:7: '&='
finally:
pass
# $ANTLR end T87
# $ANTLR start T88
try:
# C.g:90:5: ( '^=' )
# C.g:90:7: '^='
finally:
pass
# $ANTLR end T88
# $ANTLR start T89
try:
# C.g:91:5: ( '|=' )
# C.g:91:7: '|='
finally:
pass
# $ANTLR end T89
# $ANTLR start T90
try:
# C.g:92:5: ( '?' )
# C.g:92:7: '?'
finally:
pass
# $ANTLR end T90
# $ANTLR start T91
try:
# C.g:93:5: ( '||' )
# C.g:93:7: '||'
finally:
pass
# $ANTLR end T91
# $ANTLR start T92
try:
# C.g:94:5: ( '&&' )
# C.g:94:7: '&&'
finally:
pass
# $ANTLR end T92
# $ANTLR start T93
try:
# C.g:95:5: ( '|' )
# C.g:95:7: '|'
finally:
pass
# $ANTLR end T93
# $ANTLR start T94
try:
# C.g:96:5: ( '^' )
# C.g:96:7: '^'
finally:
pass
# $ANTLR end T94
# $ANTLR start T95
try:
# C.g:97:5: ( '==' )
# C.g:97:7: '=='
finally:
pass
# $ANTLR end T95
# $ANTLR start T96
try:
# C.g:98:5: ( '!=' )
# C.g:98:7: '!='
finally:
pass
# $ANTLR end T96
# $ANTLR start T97
try:
# C.g:99:5: ( '<' )
# C.g:99:7: '<'
finally:
pass
# $ANTLR end T97
# $ANTLR start T98
try:
# C.g:100:5: ( '>' )
# C.g:100:7: '>'
finally:
pass
# $ANTLR end T98
# $ANTLR start T99
try:
# C.g:101:5: ( '<=' )
# C.g:101:7: '<='
finally:
pass
# $ANTLR end T99
# $ANTLR start T100
try:
# C.g:102:6: ( '>=' )
# C.g:102:8: '>='
finally:
pass
# $ANTLR end T100
# $ANTLR start T101
try:
# C.g:103:6: ( '<<' )
# C.g:103:8: '<<'
finally:
pass
# $ANTLR end T101
# $ANTLR start T102
try:
# C.g:104:6: ( '>>' )
# C.g:104:8: '>>'
finally:
pass
# $ANTLR end T102
# $ANTLR start T103
try:
# C.g:105:6: ( '__asm__' )
# C.g:105:8: '__asm__'
finally:
pass
# $ANTLR end T103
# $ANTLR start T104
try:
# C.g:106:6: ( '_asm' )
# C.g:106:8: '_asm'
finally:
pass
# $ANTLR end T104
# $ANTLR start T105
try:
# C.g:107:6: ( '__asm' )
# C.g:107:8: '__asm'
finally:
pass
# $ANTLR end T105
# $ANTLR start T106
try:
# C.g:108:6: ( 'case' )
# C.g:108:8: 'case'
finally:
pass
# $ANTLR end T106
# $ANTLR start T107
try:
# C.g:109:6: ( 'default' )
# C.g:109:8: 'default'
finally:
pass
# $ANTLR end T107
# $ANTLR start T108
try:
# C.g:110:6: ( 'if' )
# C.g:110:8: 'if'
finally:
pass
# $ANTLR end T108
# $ANTLR start T109
try:
# C.g:111:6: ( 'else' )
# C.g:111:8: 'else'
finally:
pass
# $ANTLR end T109
# $ANTLR start T110
try:
# C.g:112:6: ( 'switch' )
# C.g:112:8: 'switch'
finally:
pass
# $ANTLR end T110
# $ANTLR start T111
try:
# C.g:113:6: ( 'while' )
# C.g:113:8: 'while'
finally:
pass
# $ANTLR end T111
# $ANTLR start T112
try:
# C.g:114:6: ( 'do' )
# C.g:114:8: 'do'
finally:
pass
# $ANTLR end T112
# $ANTLR start T113
try:
# C.g:115:6: ( 'for' )
# C.g:115:8: 'for'
finally:
pass
# $ANTLR end T113
# $ANTLR start T114
try:
# C.g:116:6: ( 'goto' )
# C.g:116:8: 'goto'
finally:
pass
# $ANTLR end T114
# $ANTLR start T115
try:
# C.g:117:6: ( 'continue' )
# C.g:117:8: 'continue'
finally:
pass
# $ANTLR end T115
# $ANTLR start T116
try:
# C.g:118:6: ( 'break' )
# C.g:118:8: 'break'
finally:
pass
# $ANTLR end T116
# $ANTLR start T117
try:
# C.g:119:6: ( 'return' )
# C.g:119:8: 'return'
finally:
pass
# $ANTLR end T117
# $ANTLR start IDENTIFIER
try:
# C.g:586:2: ( LETTER ( LETTER | '0' .. '9' )* )
# C.g:586:4: LETTER ( LETTER | '0' .. '9' )*
# C.g:586:11: ( LETTER | '0' .. '9' )*
while True: #loop1
alt1 = 2
if (LA1_0 == u'$' or (u'0' <= LA1_0 <= u'9') or (u'A' <= LA1_0 <= u'Z') or LA1_0 == u'_' or (u'a' <= LA1_0 <= u'z')) :
alt1 = 1
if alt1 == 1:
# C.g:
if self.input.LA(1) == u'$' or (u'0' <= self.input.LA(1) <= u'9') or (u'A' <= self.input.LA(1) <= u'Z') or self.input.LA(1) == u'_' or (u'a' <= self.input.LA(1) <= u'z'):
else:
raise mse
else:
break #loop1
finally:
pass
# $ANTLR end IDENTIFIER
# $ANTLR start LETTER
try:
# C.g:591:2: ( '$' | 'A' .. 'Z' | 'a' .. 'z' | '_' )
# C.g:
if self.input.LA(1) == u'$' or (u'A' <= self.input.LA(1) <= u'Z') or self.input.LA(1) == u'_' or (u'a' <= self.input.LA(1) <= u'z'):
else:
raise mse
finally:
pass
# $ANTLR end LETTER
# $ANTLR start CHARACTER_LITERAL
try:
# C.g:598:5: ( ( 'L' )? '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) ) '\\'' )
# C.g:598:9: ( 'L' )? '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) ) '\\''
# C.g:598:9: ( 'L' )?
alt2 = 2
if (LA2_0 == u'L') :
alt2 = 1
if alt2 == 1:
# C.g:598:10: 'L'
# C.g:598:21: ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )
alt3 = 2
if (LA3_0 == u'\\') :
alt3 = 1
alt3 = 2
else:
raise nvae
if alt3 == 1:
# C.g:598:23: EscapeSequence
elif alt3 == 2:
# C.g:598:40: ~ ( '\\'' | '\\\\' )
if (u'\u0000' <= self.input.LA(1) <= u'&') or (u'(' <= self.input.LA(1) <= u'[') or (u']' <= self.input.LA(1) <= u'\uFFFE'):
else:
raise mse
finally:
pass
# $ANTLR end CHARACTER_LITERAL
# $ANTLR start STRING_LITERAL
try:
# C.g:602:5: ( ( 'L' )? '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
# C.g:602:8: ( 'L' )? '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
# C.g:602:8: ( 'L' )?
alt4 = 2
if (LA4_0 == u'L') :
alt4 = 1
if alt4 == 1:
# C.g:602:9: 'L'
# C.g:602:19: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
while True: #loop5
alt5 = 3
if (LA5_0 == u'\\') :
alt5 = 1
alt5 = 2
if alt5 == 1:
# C.g:602:21: EscapeSequence
elif alt5 == 2:
# C.g:602:38: ~ ( '\\\\' | '\"' )
if (u'\u0000' <= self.input.LA(1) <= u'!') or (u'#' <= self.input.LA(1) <= u'[') or (u']' <= self.input.LA(1) <= u'\uFFFE'):
else:
raise mse
else:
break #loop5
finally:
pass
# $ANTLR end STRING_LITERAL
# $ANTLR start HEX_LITERAL
try:
# C.g:605:13: ( '0' ( 'x' | 'X' ) ( HexDigit )+ ( IntegerTypeSuffix )? )
# C.g:605:15: '0' ( 'x' | 'X' ) ( HexDigit )+ ( IntegerTypeSuffix )?
else:
raise mse
# C.g:605:29: ( HexDigit )+
cnt6 = 0
while True: #loop6
alt6 = 2
alt6 = 1
if alt6 == 1:
# C.g:605:29: HexDigit
else:
if cnt6 >= 1:
break #loop6
raise eee
cnt6 += 1
# C.g:605:39: ( IntegerTypeSuffix )?
alt7 = 2
alt7 = 1
if alt7 == 1:
# C.g:605:39: IntegerTypeSuffix
finally:
pass
# $ANTLR end HEX_LITERAL
# $ANTLR start DECIMAL_LITERAL
try:
# C.g:607:17: ( ( '0' | '1' .. '9' ( '0' .. '9' )* ) ( IntegerTypeSuffix )? )
# C.g:607:19: ( '0' | '1' .. '9' ( '0' .. '9' )* ) ( IntegerTypeSuffix )?
# C.g:607:19: ( '0' | '1' .. '9' ( '0' .. '9' )* )
alt9 = 2
if (LA9_0 == u'0') :
alt9 = 1
alt9 = 2
else:
raise nvae
if alt9 == 1:
# C.g:607:20: '0'
elif alt9 == 2:
# C.g:607:26: '1' .. '9' ( '0' .. '9' )*
# C.g:607:35: ( '0' .. '9' )*
while True: #loop8
alt8 = 2
alt8 = 1
if alt8 == 1:
# C.g:607:35: '0' .. '9'
else:
break #loop8
# C.g:607:46: ( IntegerTypeSuffix )?
alt10 = 2
alt10 = 1
if alt10 == 1:
# C.g:607:46: IntegerTypeSuffix
finally:
pass
# $ANTLR end DECIMAL_LITERAL
# $ANTLR start OCTAL_LITERAL
try:
# C.g:609:15: ( '0' ( '0' .. '7' )+ ( IntegerTypeSuffix )? )
# C.g:609:17: '0' ( '0' .. '7' )+ ( IntegerTypeSuffix )?
# C.g:609:21: ( '0' .. '7' )+
cnt11 = 0
while True: #loop11
alt11 = 2
alt11 = 1
if alt11 == 1:
# C.g:609:22: '0' .. '7'
else:
if cnt11 >= 1:
break #loop11
raise eee
cnt11 += 1
# C.g:609:33: ( IntegerTypeSuffix )?
alt12 = 2
alt12 = 1
if alt12 == 1:
# C.g:609:33: IntegerTypeSuffix
finally:
pass
# $ANTLR end OCTAL_LITERAL
# $ANTLR start HexDigit
try:
# C.g:612:10: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
# C.g:612:12: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )
if (u'0' <= self.input.LA(1) <= u'9') or (u'A' <= self.input.LA(1) <= u'F') or (u'a' <= self.input.LA(1) <= u'f'):
else:
raise mse
finally:
pass
# $ANTLR end HexDigit
# $ANTLR start IntegerTypeSuffix
try:
# C.g:616:2: ( ( 'u' | 'U' ) | ( 'l' | 'L' ) | ( 'u' | 'U' ) ( 'l' | 'L' ) | ( 'u' | 'U' ) ( 'l' | 'L' ) ( 'l' | 'L' ) )
alt13 = 4
alt13 = 4
else:
alt13 = 3
else:
alt13 = 1
alt13 = 2
else:
nvae = NoViableAltException("614:1: fragment IntegerTypeSuffix : ( ( 'u' | 'U' ) | ( 'l' | 'L' ) | ( 'u' | 'U' ) ( 'l' | 'L' ) | ( 'u' | 'U' ) ( 'l' | 'L' ) ( 'l' | 'L' ) );", 13, 0, self.input)
raise nvae
if alt13 == 1:
# C.g:616:4: ( 'u' | 'U' )
else:
raise mse
elif alt13 == 2:
# C.g:617:4: ( 'l' | 'L' )
else:
raise mse
elif alt13 == 3:
# C.g:618:4: ( 'u' | 'U' ) ( 'l' | 'L' )
else:
raise mse
else:
raise mse
elif alt13 == 4:
# C.g:619:4: ( 'u' | 'U' ) ( 'l' | 'L' ) ( 'l' | 'L' )
else:
raise mse
else:
raise mse
else:
raise mse
finally:
pass
# $ANTLR end IntegerTypeSuffix
# $ANTLR start FLOATING_POINT_LITERAL
try:
# C.g:623:5: ( ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )? | '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )? | ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )? | ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix )
alt25 = 4
if alt25 == 1:
# C.g:623:9: ( '0' .. '9' )+ '.' ( '0' .. '9' )* ( Exponent )? ( FloatTypeSuffix )?
# C.g:623:9: ( '0' .. '9' )+
cnt14 = 0
while True: #loop14
alt14 = 2
alt14 = 1
if alt14 == 1:
# C.g:623:10: '0' .. '9'
else:
if cnt14 >= 1:
break #loop14
raise eee
cnt14 += 1
# C.g:623:25: ( '0' .. '9' )*
while True: #loop15
alt15 = 2
alt15 = 1
if alt15 == 1:
# C.g:623:26: '0' .. '9'
else:
break #loop15
# C.g:623:37: ( Exponent )?
alt16 = 2
alt16 = 1
if alt16 == 1:
# C.g:623:37: Exponent
# C.g:623:47: ( FloatTypeSuffix )?
alt17 = 2
alt17 = 1
if alt17 == 1:
# C.g:623:47: FloatTypeSuffix
elif alt25 == 2:
# C.g:624:9: '.' ( '0' .. '9' )+ ( Exponent )? ( FloatTypeSuffix )?
# C.g:624:13: ( '0' .. '9' )+
cnt18 = 0
while True: #loop18
alt18 = 2
alt18 = 1
if alt18 == 1:
# C.g:624:14: '0' .. '9'
else:
if cnt18 >= 1:
break #loop18
raise eee
cnt18 += 1
# C.g:624:25: ( Exponent )?
alt19 = 2
alt19 = 1
if alt19 == 1:
# C.g:624:25: Exponent
# C.g:624:35: ( FloatTypeSuffix )?
alt20 = 2
alt20 = 1
if alt20 == 1:
# C.g:624:35: FloatTypeSuffix
elif alt25 == 3:
# C.g:625:9: ( '0' .. '9' )+ Exponent ( FloatTypeSuffix )?
# C.g:625:9: ( '0' .. '9' )+
cnt21 = 0
while True: #loop21
alt21 = 2
alt21 = 1
if alt21 == 1:
# C.g:625:10: '0' .. '9'
else:
if cnt21 >= 1:
break #loop21
raise eee
cnt21 += 1
# C.g:625:30: ( FloatTypeSuffix )?
alt22 = 2
alt22 = 1
if alt22 == 1:
# C.g:625:30: FloatTypeSuffix
elif alt25 == 4:
# C.g:626:9: ( '0' .. '9' )+ ( Exponent )? FloatTypeSuffix
# C.g:626:9: ( '0' .. '9' )+
cnt23 = 0
while True: #loop23
alt23 = 2
alt23 = 1
if alt23 == 1:
# C.g:626:10: '0' .. '9'
else:
if cnt23 >= 1:
break #loop23
raise eee
cnt23 += 1
# C.g:626:21: ( Exponent )?
alt24 = 2
alt24 = 1
if alt24 == 1:
# C.g:626:21: Exponent
finally:
pass
# $ANTLR end FLOATING_POINT_LITERAL
# $ANTLR start Exponent
try:
# C.g:630:10: ( ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+ )
# C.g:630:12: ( 'e' | 'E' ) ( '+' | '-' )? ( '0' .. '9' )+
else:
raise mse
# C.g:630:22: ( '+' | '-' )?
alt26 = 2
alt26 = 1
if alt26 == 1:
# C.g:
else:
raise mse
# C.g:630:33: ( '0' .. '9' )+
cnt27 = 0
while True: #loop27
alt27 = 2
alt27 = 1
if alt27 == 1:
# C.g:630:34: '0' .. '9'
else:
if cnt27 >= 1:
break #loop27
raise eee
cnt27 += 1
finally:
pass
# $ANTLR end Exponent
# $ANTLR start FloatTypeSuffix
try:
# C.g:633:17: ( ( 'f' | 'F' | 'd' | 'D' ) )
# C.g:633:19: ( 'f' | 'F' | 'd' | 'D' )
if self.input.LA(1) == u'D' or self.input.LA(1) == u'F' or self.input.LA(1) == u'd' or self.input.LA(1) == u'f':
else:
raise mse
finally:
pass
# $ANTLR end FloatTypeSuffix
# $ANTLR start EscapeSequence
try:
# C.g:637:5: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | OctalEscape )
alt28 = 2
if (LA28_0 == u'\\') :
if (LA28_1 == u'"' or LA28_1 == u'\'' or LA28_1 == u'\\' or LA28_1 == u'b' or LA28_1 == u'f' or LA28_1 == u'n' or LA28_1 == u'r' or LA28_1 == u't') :
alt28 = 1
alt28 = 2
else:
nvae = NoViableAltException("635:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | OctalEscape );", 28, 1, self.input)
raise nvae
else:
nvae = NoViableAltException("635:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | OctalEscape );", 28, 0, self.input)
raise nvae
if alt28 == 1:
# C.g:637:8: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
if self.input.LA(1) == u'"' or self.input.LA(1) == u'\'' or self.input.LA(1) == u'\\' or self.input.LA(1) == u'b' or self.input.LA(1) == u'f' or self.input.LA(1) == u'n' or self.input.LA(1) == u'r' or self.input.LA(1) == u't':
else:
raise mse
elif alt28 == 2:
# C.g:638:9: OctalEscape
finally:
pass
# $ANTLR end EscapeSequence
# $ANTLR start OctalEscape
try:
# C.g:643:5: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
alt29 = 3
if (LA29_0 == u'\\') :
alt29 = 1
else:
alt29 = 2
else:
alt29 = 3
alt29 = 2
else:
alt29 = 3
else:
nvae = NoViableAltException("641:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 29, 1, self.input)
raise nvae
else:
nvae = NoViableAltException("641:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 29, 0, self.input)
raise nvae
if alt29 == 1:
# C.g:643:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
# C.g:643:14: ( '0' .. '3' )
# C.g:643:15: '0' .. '3'
# C.g:643:25: ( '0' .. '7' )
# C.g:643:26: '0' .. '7'
# C.g:643:36: ( '0' .. '7' )
# C.g:643:37: '0' .. '7'
elif alt29 == 2:
# C.g:644:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
# C.g:644:14: ( '0' .. '7' )
# C.g:644:15: '0' .. '7'
# C.g:644:25: ( '0' .. '7' )
# C.g:644:26: '0' .. '7'
elif alt29 == 3:
# C.g:645:9: '\\\\' ( '0' .. '7' )
# C.g:645:14: ( '0' .. '7' )
# C.g:645:15: '0' .. '7'
finally:
pass
# $ANTLR end OctalEscape
# $ANTLR start UnicodeEscape
try:
# C.g:650:5: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
# C.g:650:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
finally:
pass
# $ANTLR end UnicodeEscape
# $ANTLR start WS
try:
# C.g:653:5: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
# C.g:653:8: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' )
if (u'\t' <= self.input.LA(1) <= u'\n') or (u'\f' <= self.input.LA(1) <= u'\r') or self.input.LA(1) == u' ':
else:
raise mse
#action start
#action end
finally:
pass
# $ANTLR end WS
# $ANTLR start BS
try:
# C.g:657:5: ( ( '\\\\' ) )
# C.g:657:7: ( '\\\\' )
# C.g:657:7: ( '\\\\' )
# C.g:657:8: '\\\\'
#action start
#action end
finally:
pass
# $ANTLR end BS
# $ANTLR start UnicodeVocabulary
try:
# C.g:665:5: ( '\\u0003' .. '\\uFFFE' )
# C.g:665:7: '\\u0003' .. '\\uFFFE'
finally:
pass
# $ANTLR end UnicodeVocabulary
# $ANTLR start COMMENT
try:
# C.g:668:5: ( '/*' ( options {greedy=false; } : . )* '*/' )
# C.g:668:9: '/*' ( options {greedy=false; } : . )* '*/'
# C.g:668:14: ( options {greedy=false; } : . )*
while True: #loop30
alt30 = 2
if (LA30_0 == u'*') :
if (LA30_1 == u'/') :
alt30 = 2
alt30 = 1
alt30 = 1
if alt30 == 1:
# C.g:668:42: .
else:
break #loop30
#action start
#action end
finally:
pass
# $ANTLR end COMMENT
# $ANTLR start LINE_COMMENT
try:
# C.g:673:5: ( '//' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n' )
# C.g:673:7: '//' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n'
# C.g:673:12: (~ ( '\\n' | '\\r' ) )*
while True: #loop31
alt31 = 2
if ((u'\u0000' <= LA31_0 <= u'\t') or (u'\u000B' <= LA31_0 <= u'\f') or (u'\u000E' <= LA31_0 <= u'\uFFFE')) :
alt31 = 1
if alt31 == 1:
# C.g:673:12: ~ ( '\\n' | '\\r' )
if (u'\u0000' <= self.input.LA(1) <= u'\t') or (u'\u000B' <= self.input.LA(1) <= u'\f') or (u'\u000E' <= self.input.LA(1) <= u'\uFFFE'):
else:
raise mse
else:
break #loop31
# C.g:673:26: ( '\\r' )?
alt32 = 2
if (LA32_0 == u'\r') :
alt32 = 1
if alt32 == 1:
# C.g:673:26: '\\r'
#action start
#action end
finally:
pass
# $ANTLR end LINE_COMMENT
# $ANTLR start LINE_COMMAND
try:
# C.g:678:5: ( '#' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n' )
# C.g:678:7: '#' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n'
# C.g:678:11: (~ ( '\\n' | '\\r' ) )*
while True: #loop33
alt33 = 2
if ((u'\u0000' <= LA33_0 <= u'\t') or (u'\u000B' <= LA33_0 <= u'\f') or (u'\u000E' <= LA33_0 <= u'\uFFFE')) :
alt33 = 1
if alt33 == 1:
# C.g:678:11: ~ ( '\\n' | '\\r' )
if (u'\u0000' <= self.input.LA(1) <= u'\t') or (u'\u000B' <= self.input.LA(1) <= u'\f') or (u'\u000E' <= self.input.LA(1) <= u'\uFFFE'):
else:
raise mse
else:
break #loop33
# C.g:678:25: ( '\\r' )?
alt34 = 2
if (LA34_0 == u'\r') :
alt34 = 1
if alt34 == 1:
# C.g:678:25: '\\r'
#action start
#action end
finally:
pass
# $ANTLR end LINE_COMMAND
# C.g:1:8: ( T25 | T26 | T27 | T28 | T29 | T30 | T31 | T32 | T33 | T34 | T35 | T36 | T37 | T38 | T39 | T40 | T41 | T42 | T43 | T44 | T45 | T46 | T47 | T48 | T49 | T50 | T51 | T52 | T53 | T54 | T55 | T56 | T57 | T58 | T59 | T60 | T61 | T62 | T63 | T64 | T65 | T66 | T67 | T68 | T69 | T70 | T71 | T72 | T73 | T74 | T75 | T76 | T77 | T78 | T79 | T80 | T81 | T82 | T83 | T84 | T85 | T86 | T87 | T88 | T89 | T90 | T91 | T92 | T93 | T94 | T95 | T96 | T97 | T98 | T99 | T100 | T101 | T102 | T103 | T104 | T105 | T106 | T107 | T108 | T109 | T110 | T111 | T112 | T113 | T114 | T115 | T116 | T117 | IDENTIFIER | CHARACTER_LITERAL | STRING_LITERAL | HEX_LITERAL | DECIMAL_LITERAL | OCTAL_LITERAL | FLOATING_POINT_LITERAL | WS | BS | UnicodeVocabulary | COMMENT | LINE_COMMENT | LINE_COMMAND )
alt35 = 106
if alt35 == 1:
# C.g:1:10: T25
elif alt35 == 2:
# C.g:1:14: T26
elif alt35 == 3:
# C.g:1:18: T27
elif alt35 == 4:
# C.g:1:22: T28
elif alt35 == 5:
# C.g:1:26: T29
elif alt35 == 6:
# C.g:1:30: T30
elif alt35 == 7:
# C.g:1:34: T31
elif alt35 == 8:
# C.g:1:38: T32
elif alt35 == 9:
# C.g:1:42: T33
elif alt35 == 10:
# C.g:1:46: T34
elif alt35 == 11:
# C.g:1:50: T35
elif alt35 == 12:
# C.g:1:54: T36
elif alt35 == 13:
# C.g:1:58: T37
elif alt35 == 14:
# C.g:1:62: T38
elif alt35 == 15:
# C.g:1:66: T39
elif alt35 == 16:
# C.g:1:70: T40
elif alt35 == 17:
# C.g:1:74: T41
elif alt35 == 18:
# C.g:1:78: T42
elif alt35 == 19:
# C.g:1:82: T43
elif alt35 == 20:
# C.g:1:86: T44
elif alt35 == 21:
# C.g:1:90: T45
elif alt35 == 22:
# C.g:1:94: T46
elif alt35 == 23:
# C.g:1:98: T47
elif alt35 == 24:
# C.g:1:102: T48
elif alt35 == 25:
# C.g:1:106: T49
elif alt35 == 26:
# C.g:1:110: T50
elif alt35 == 27:
# C.g:1:114: T51
elif alt35 == 28:
# C.g:1:118: T52
elif alt35 == 29:
# C.g:1:122: T53
elif alt35 == 30:
# C.g:1:126: T54
elif alt35 == 31:
# C.g:1:130: T55
elif alt35 == 32:
# C.g:1:134: T56
elif alt35 == 33:
# C.g:1:138: T57
elif alt35 == 34:
# C.g:1:142: T58
elif alt35 == 35:
# C.g:1:146: T59
elif alt35 == 36:
# C.g:1:150: T60
elif alt35 == 37:
# C.g:1:154: T61
elif alt35 == 38:
# C.g:1:158: T62
elif alt35 == 39:
# C.g:1:162: T63
elif alt35 == 40:
# C.g:1:166: T64
elif alt35 == 41:
# C.g:1:170: T65
elif alt35 == 42:
# C.g:1:174: T66
elif alt35 == 43:
# C.g:1:178: T67
elif alt35 == 44:
# C.g:1:182: T68
elif alt35 == 45:
# C.g:1:186: T69
elif alt35 == 46:
# C.g:1:190: T70
elif alt35 == 47:
# C.g:1:194: T71
elif alt35 == 48:
# C.g:1:198: T72
elif alt35 == 49:
# C.g:1:202: T73
elif alt35 == 50:
# C.g:1:206: T74
elif alt35 == 51:
# C.g:1:210: T75
elif alt35 == 52:
# C.g:1:214: T76
elif alt35 == 53:
# C.g:1:218: T77
elif alt35 == 54:
# C.g:1:222: T78
elif alt35 == 55:
# C.g:1:226: T79
elif alt35 == 56:
# C.g:1:230: T80
elif alt35 == 57:
# C.g:1:234: T81
elif alt35 == 58:
# C.g:1:238: T82
elif alt35 == 59:
# C.g:1:242: T83
elif alt35 == 60:
# C.g:1:246: T84
elif alt35 == 61:
# C.g:1:250: T85
elif alt35 == 62:
# C.g:1:254: T86
elif alt35 == 63:
# C.g:1:258: T87
elif alt35 == 64:
# C.g:1:262: T88
elif alt35 == 65:
# C.g:1:266: T89
elif alt35 == 66:
# C.g:1:270: T90
elif alt35 == 67:
# C.g:1:274: T91
elif alt35 == 68:
# C.g:1:278: T92
elif alt35 == 69:
# C.g:1:282: T93
elif alt35 == 70:
# C.g:1:286: T94
elif alt35 == 71:
# C.g:1:290: T95
elif alt35 == 72:
# C.g:1:294: T96
elif alt35 == 73:
# C.g:1:298: T97
elif alt35 == 74:
# C.g:1:302: T98
elif alt35 == 75:
# C.g:1:306: T99
elif alt35 == 76:
# C.g:1:310: T100
elif alt35 == 77:
# C.g:1:315: T101
elif alt35 == 78:
# C.g:1:320: T102
elif alt35 == 79:
# C.g:1:325: T103
elif alt35 == 80:
# C.g:1:330: T104
elif alt35 == 81:
# C.g:1:335: T105
elif alt35 == 82:
# C.g:1:340: T106
elif alt35 == 83:
# C.g:1:345: T107
elif alt35 == 84:
# C.g:1:350: T108
elif alt35 == 85:
# C.g:1:355: T109
elif alt35 == 86:
# C.g:1:360: T110
elif alt35 == 87:
# C.g:1:365: T111
elif alt35 == 88:
# C.g:1:370: T112
elif alt35 == 89:
# C.g:1:375: T113
elif alt35 == 90:
# C.g:1:380: T114
elif alt35 == 91:
# C.g:1:385: T115
elif alt35 == 92:
# C.g:1:390: T116
elif alt35 == 93:
# C.g:1:395: T117
elif alt35 == 94:
# C.g:1:400: IDENTIFIER
elif alt35 == 95:
# C.g:1:411: CHARACTER_LITERAL
elif alt35 == 96:
# C.g:1:429: STRING_LITERAL
elif alt35 == 97:
# C.g:1:444: HEX_LITERAL
elif alt35 == 98:
# C.g:1:456: DECIMAL_LITERAL
elif alt35 == 99:
# C.g:1:472: OCTAL_LITERAL
elif alt35 == 100:
# C.g:1:486: FLOATING_POINT_LITERAL
elif alt35 == 101:
# C.g:1:509: WS
elif alt35 == 102:
# C.g:1:512: BS
elif alt35 == 103:
# C.g:1:515: UnicodeVocabulary
elif alt35 == 104:
# C.g:1:533: COMMENT
elif alt35 == 105:
# C.g:1:541: LINE_COMMENT
elif alt35 == 106:
# C.g:1:554: LINE_COMMAND
# lookup tables for DFA #25
u"\7\uffff\1\10\2\uffff"
)
u"\12\uffff"
)
u"\2\56\2\uffff\1\53\1\uffff\2\60\2\uffff"
)
u"\1\71\1\146\2\uffff\1\71\1\uffff\1\71\1\146\2\uffff"
)
u"\2\uffff\1\2\1\1\1\uffff\1\4\2\uffff\2\3"
)
u"\12\uffff"
)
DFA25_transition = [
u"\1\4\1\5"),
u"\1\11"),
]
# class definition for DFA #25
# lookup tables for DFA #35
u"\2\uffff\1\76\1\uffff\1\101\14\76\3\uffff\10\76\4\uffff\1\151\1"
u"\153\1\157\1\163\1\167\1\171\1\174\1\uffff\1\177\1\u0082\1\u0085"
u"\1\u0087\1\u008a\1\uffff\5\76\1\uffff\2\73\2\u0095\2\uffff\1\73"
u"\2\uffff\1\76\4\uffff\16\76\1\u00ad\5\76\1\u00b4\1\76\3\uffff\1"
u"\u00b7\10\76\34\uffff\1\u00c1\2\uffff\1\u00c3\10\uffff\5\76\3\uffff"
u"\1\u00c9\1\uffff\1\u0095\3\uffff\23\76\1\uffff\1\u00de\1\76\1\u00e0"
u"\3\76\1\uffff\2\76\1\uffff\1\76\1\u00e7\6\76\4\uffff\5\76\1\uffff"
u"\1\76\1\u00f5\1\76\1\u00f7\6\76\1\u00fe\4\76\1\u0103\1\u0104\2"
u"\76\1\u0107\1\uffff\1\u0108\1\uffff\6\76\1\uffff\10\76\1\u0118"
u"\1\76\1\u011a\2\76\1\uffff\1\76\1\uffff\5\76\1\u0123\1\uffff\4"
u"\76\2\uffff\1\76\1\u0129\2\uffff\1\u012a\3\76\1\u012e\1\76\1\u0130"
u"\7\76\1\u0139\1\uffff\1\u013a\1\uffff\1\u013b\1\76\1\u013d\1\u013e"
u"\1\u013f\1\u0140\1\u0141\1\u0142\1\uffff\1\76\1\u0144\1\u0145\2"
u"\76\2\uffff\1\76\1\u0149\1\76\1\uffff\1\76\1\uffff\5\76\1\u0151"
u"\1\u0152\1\76\3\uffff\1\u0154\6\uffff\1\76\2\uffff\2\76\1\u0158"
u"\1\uffff\7\76\2\uffff\1\u0160\1\uffff\1\u0161\1\u0162\1\u0163\1"
u"\uffff\1\u0164\1\u0165\1\76\1\u0167\3\76\6\uffff\1\u016b\1\uffff"
u"\3\76\1\uffff\21\76\1\u0180\2\76\1\uffff\3\76\1\u0186\1\76\1\uffff"
u"\11\76\1\u0191\1\uffff"
)
u"\u0192\uffff"
)
u"\1\3\1\uffff\1\171\1\uffff\1\75\1\154\1\150\1\165\1\145\1\124\1"
u"\157\1\141\1\146\1\157\1\154\1\145\1\156\3\uffff\1\116\1\120\1"
u"\117\1\116\1\117\1\114\1\106\1\101\4\uffff\1\75\1\56\1\53\1\55"
u"\1\52\1\75\1\46\1\uffff\1\75\1\74\3\75\1\uffff\1\137\1\150\1\157"
u"\1\162\1\42\1\uffff\2\0\2\56\2\uffff\1\0\2\uffff\1\160\4\uffff"
u"\1\163\1\164\1\165\1\151\1\141\1\147\1\157\1\164\1\147\1\101\1"
u"\151\1\163\1\156\1\141\1\44\1\164\1\156\1\162\1\157\1\146\1\44"
u"\1\151\3\uffff\1\44\2\124\1\116\1\101\1\114\1\117\1\111\1\103\34"
u"\uffff\1\75\2\uffff\1\75\10\uffff\1\141\1\163\1\151\1\164\1\145"
u"\3\uffff\1\56\1\uffff\1\56\3\uffff\3\145\1\155\2\164\1\165\1\145"
u"\1\156\1\162\1\157\1\151\1\165\1\124\1\141\1\144\1\145\1\163\1"
u"\162\1\uffff\1\44\1\147\1\44\2\141\1\142\1\uffff\1\151\1\157\1"
u"\uffff\1\111\1\44\1\123\1\114\1\101\1\102\1\101\1\113\4\uffff\1"
u"\163\1\155\1\154\1\157\1\141\1\uffff\1\144\1\44\1\162\1\44\1\143"
u"\1\151\1\143\1\157\1\145\1\164\1\44\1\163\1\162\1\111\1\164\2\44"
u"\1\151\1\164\1\44\1\uffff\1\44\1\uffff\1\164\1\165\1\154\1\147"
u"\1\156\1\117\1\uffff\1\124\1\111\1\124\1\101\1\102\1\120\1\105"
u"\1\155\1\44\1\145\1\44\1\153\1\145\1\uffff\1\156\1\uffff\1\150"
u"\1\143\1\164\1\146\1\144\1\44\1\uffff\1\164\1\156\1\103\1\151\2"
u"\uffff\1\156\1\44\2\uffff\1\44\1\154\1\145\1\156\1\44\1\116\1\44"
u"\1\107\1\111\1\114\1\125\1\117\1\111\1\104\1\44\1\uffff\1\44\1"
u"\uffff\1\44\1\146\6\44\1\uffff\1\145\2\44\1\154\1\165\2\uffff\1"
u"\164\1\44\1\145\1\uffff\1\101\1\uffff\1\116\1\114\1\137\1\116\1"
u"\117\2\44\1\137\3\uffff\1\44\6\uffff\1\162\2\uffff\2\145\1\44\1"
u"\uffff\1\144\1\114\2\105\1\122\2\124\2\uffff\1\44\1\uffff\3\44"
u"\1\uffff\2\44\1\104\1\44\1\105\1\111\1\123\6\uffff\1\44\1\uffff"
u"\2\115\1\105\1\uffff\1\117\1\105\1\122\1\126\1\123\1\126\2\105"
u"\1\111\1\137\1\122\1\103\1\111\1\126\1\105\1\106\1\111\1\44\1\137"
u"\1\103\1\uffff\1\125\1\105\1\116\1\44\1\122\1\uffff\1\105\1\106"
u"\1\105\1\122\1\105\1\116\1\103\1\105\1\104\1\44\1\uffff"
)
u"\1\ufffe\1\uffff\1\171\1\uffff\1\75\1\170\1\167\1\165\1\145\1\124"
u"\2\157\1\156\3\157\1\156\3\uffff\1\116\1\125\1\117\1\116\1\117"
u"\1\114\1\106\1\101\4\uffff\1\75\1\71\1\75\1\76\3\75\1\uffff\2\75"
u"\1\76\1\75\1\174\1\uffff\1\141\1\150\1\157\1\162\1\47\1\uffff\2"
u"\ufffe\1\170\1\146\2\uffff\1\ufffe\2\uffff\1\160\4\uffff\1\163"
u"\1\164\1\165\1\151\1\162\1\172\1\157\2\164\1\101\1\154\1\163\1"
u"\156\1\141\1\172\1\164\1\156\1\162\1\157\1\146\1\172\1\163\3\uffff"
u"\1\172\2\124\1\116\1\101\1\114\1\117\1\111\1\103\34\uffff\1\75"
u"\2\uffff\1\75\10\uffff\1\141\1\163\1\151\1\164\1\145\3\uffff\1"
u"\146\1\uffff\1\146\3\uffff\3\145\1\155\2\164\1\165\1\145\1\156"
u"\1\162\1\157\1\151\1\165\1\124\1\141\1\144\1\145\1\164\1\162\1"
u"\uffff\1\172\1\147\1\172\2\141\1\142\1\uffff\1\151\1\157\1\uffff"
u"\1\111\1\172\1\123\1\114\1\101\1\102\1\137\1\113\4\uffff\1\163"
u"\1\155\1\154\1\157\1\141\1\uffff\1\144\1\172\1\162\1\172\1\143"
u"\1\151\1\143\1\157\1\145\1\164\1\172\1\163\1\162\1\111\1\164\2"
u"\172\1\151\1\164\1\172\1\uffff\1\172\1\uffff\1\164\1\165\1\154"
u"\1\147\1\156\1\117\1\uffff\1\124\1\111\1\124\1\101\1\122\1\120"
u"\1\105\1\155\1\172\1\145\1\172\1\153\1\145\1\uffff\1\156\1\uffff"
u"\1\150\1\143\1\164\1\146\1\144\1\172\1\uffff\1\164\1\156\1\103"
u"\1\151\2\uffff\1\156\1\172\2\uffff\1\172\1\154\1\145\1\156\1\172"
u"\1\116\1\172\1\107\1\111\1\114\1\125\1\117\1\111\1\104\1\172\1"
u"\uffff\1\172\1\uffff\1\172\1\146\6\172\1\uffff\1\145\2\172\1\154"
u"\1\165\2\uffff\1\164\1\172\1\145\1\uffff\1\101\1\uffff\1\116\1"
u"\114\1\137\1\116\1\117\2\172\1\137\3\uffff\1\172\6\uffff\1\162"
u"\2\uffff\2\145\1\172\1\uffff\1\144\1\114\2\105\1\122\2\124\2\uffff"
u"\1\172\1\uffff\3\172\1\uffff\2\172\1\104\1\172\1\105\1\111\1\123"
u"\6\uffff\1\172\1\uffff\2\115\1\105\1\uffff\1\117\1\105\1\122\1"
u"\126\1\123\1\126\2\105\1\111\1\137\1\122\1\103\1\111\1\126\1\105"
u"\1\106\1\111\1\172\1\137\1\103\1\uffff\1\125\1\105\1\116\1\172"
u"\1\122\1\uffff\1\105\1\106\1\105\1\122\1\105\1\116\1\103\1\105"
u"\1\104\1\172\1\uffff"
)
u"\1\uffff\1\1\1\uffff\1\3\15\uffff\1\23\1\24\1\27\10\uffff\1\46"
u"\1\47\1\50\1\51\7\uffff\1\66\5\uffff\1\102\5\uffff\1\136\4\uffff"
u"\1\145\1\146\1\uffff\1\147\1\1\1\uffff\1\136\1\3\1\107\1\4\26\uffff"
u"\1\23\1\24\1\27\11\uffff\1\46\1\47\1\50\1\51\1\70\1\52\1\53\1\63"
u"\1\144\1\73\1\60\1\54\1\74\1\64\1\61\1\55\1\150\1\151\1\71\1\56"
u"\1\72\1\57\1\77\1\104\1\65\1\66\1\110\1\67\1\uffff\1\113\1\111"
u"\1\uffff\1\114\1\112\1\100\1\106\1\103\1\101\1\105\1\102\5\uffff"
u"\1\140\1\137\1\141\1\uffff\1\142\1\uffff\1\145\1\146\1\152\23\uffff"
u"\1\124\6\uffff\1\130\2\uffff\1\33\10\uffff\1\75\1\115\1\76\1\116"
u"\5\uffff\1\143\24\uffff\1\15\1\uffff\1\131\6\uffff\1\34\15\uffff"
u"\1\125\1\uffff\1\30\6\uffff\1\7\4\uffff\1\12\1\122\2\uffff\1\13"
u"\1\16\17\uffff\1\120\1\uffff\1\132\10\uffff\1\14\5\uffff\1\31\1"
u"\17\3\uffff\1\26\1\uffff\1\36\10\uffff\1\121\1\127\1\134\1\uffff"
u"\1\5\1\126\1\6\1\25\1\62\1\21\1\uffff\1\135\1\11\3\uffff\1\20\7"
u"\uffff\1\42\1\45\1\uffff\1\2\3\uffff\1\123\7\uffff\1\117\1\10\1"
u"\32\1\133\1\22\1\35\1\uffff\1\40\3\uffff\1\37\24\uffff\1\43\5\uffff"
u"\1\44\12\uffff\1\41"
)
u"\u0192\uffff"
)
DFA35_transition = [
u"\1\45\1\46\1\64\1\34\1\35\1\40\1\42\1\3\1\43\1\41\1\44\1\66\11"
u"\67\1\23\1\1\1\51\1\4\1\52\1\55\1\73\2\63\1\26\1\63\1\32\1\63\1"
u"\31\1\63\1\24\2\63\1\62\2\63\1\25\1\33\2\63\1\11\1\63\1\27\1\30"
u"\4\63\1\36\1\71\1\37\1\53\1\56\1\73\1\7\1\61\1\13\1\17\1\5\1\16"
u"\1\60\1\63\1\14\2\63\1\15\5\63\1\10\1\6\1\2\1\20\1\12\1\57\3\63"
u"\1\21\1\54\1\22\1\47\uff80\73"),
u"\1\u0093\13\uffff\3\154\21\uffff\1\u0093"),
u"\32\76"),
u"\24\76\1\u00b3\5\76"),
u"\32\76"),
u"\3\154"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\uffff\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
u"\32\76"),
]
# class definition for DFA #35