adding translation refactoring