* remove 'typename' due to problem while build on gcc 4.4.3