Part I: Lexical Analysis