try lexing with ply