Author: Zha, Ruqiang.