Author: Shi, Yafeng.