Author: Yang, Xianzhen.