walk the ast