Author: Huangping.