This is the new function.