An outer block declares let level = 1. A nested block declares its own let level = 2. What does level mean inside the nested block?
Explanation
The nested declaration shadows the outer binding, so references inside that nested scope resolve to the value 2. Shadowing does not overwrite or delete the outer level; after leaving the nested scope, the outer binding still has value 1.