Author: Yao, Weimin.