ast work