update by sennychu, at: 42:39:14 %/ 02-07-2013