ast improvements