Rewriten parser