I wrote:

> Explanation: when i runs off the end of the string, encoded.charCodeAt(i++) will return NaN. NaN - 63 is NaN. NaN >= 0x20 is false so the inner loop will never terminate.

For info, @Turbo87 corrected me: `NaN >= 0x20` is false so the inner loop **will** terminate.