It won't fail recursively - while the second call is happening, the first will be stored on the stack (see the take and replace in the callback shim function)
It won't fail recursively - while the second call is happening, the first will be stored on the stack (see the take and replace in the callback shim function)