update by sennychu, at: 53:02:03 %/ 14-07-2013