add lexer.py