add back the 2 function versions