How to console.log and understand recursive function returns?

Wow, that’s awesome! Visualizing what you do totally rocks!

As of the diagram, we do know n value at every iteration, which lets us always know arr[n] value; and once n<=0, the first return value is used to calculate every upper-level function return value.
It’s not obvious to me what value n (block 1) is and why is it undefined?