90 refact ast