def t_NUMBER(self, t):
t.value = int(t.value)<EOL>neg = <NUM_LIT:0><EOL>if t.value < <NUM_LIT:0>:<EOL><INDENT>neg = <NUM_LIT:1><EOL><DEDENT>val = abs(t.value)<EOL>if val <= UNSIGNED32_MAX:<EOL><INDENT>if neg:<EOL><INDENT>t.type = '<STR_LIT>'<EOL><DEDENT><DEDENT>elif val <= UNSIGNED64_MAX:<EOL><INDENT>if neg:<EOL><INDENT>t.type = '<STR_LIT>'<EOL><DEDENT>else:<EOL><INDENT>t.type = '<STR_LIT>'<EOL><DEDENT><DEDENT>else:<EOL><INDENT>raise error.PySmiLexerError("<STR_LIT>" % t.value, lineno=t.lineno)<EOL><DEDENT>return t<EOL>
r'-?[0-9]+