Author: Guan, Shucheng.