Playing with the parser, need state tracking