Author: Shen, Xuenian.