Author: Wang, Weiqi.