CS236 Lexical Analyzer