translate it
simplify tail