develop by ChenL 2009.1.7