translation implementation