Author: Zhang, Huajin.