Move out of what exactly?

I get that the first iteration 'destroys' it. Destroy there means: "makes it unavailable in the local scope"?

But who or what moved into input and why is it trying to move out?

I get moving in and out of scope, but this is a variable.