Author: Bai, Yaguang.