fixed translate function