Author: Xiang, Yanghui.