parser is pretty good now