knock off iterative parsing and AST returns