add htrans func