implementation of translation