update ast and parser