refactor i18n