all the function calls are correct