Author: Liao, Zhenyou.