Author: Yang, Ganhua.