modified ast conv