Author: Guo Yan.