Author: Yang, Zhengquan.