Author: Jing Hai.