1.it needs better i18n support; 2.it's better an extendible class.