Made a separate file for lexer