yeah...implemented lexer