def t_NUMBER(t):
    """[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?"""
    try:
        t.value = float(t.value)
    except:
        t.lexer.log.info('[%d]: Number %s is not valid!' % (t.lineno, t.value))
        t.value = 0
    return t
