update by sennychu, at: 29:24:14 %/ 02-07-2013