new update by Liang Gong @ Sun Dec  8 20:52:26 PST 2013