Author: Guan, Dinghua.