Duplicate loop source.

Loops are a good place to look for minzip savings. If you can make your
loops similar, gzip will combine them. In this case, there is a loop at
the end of our interpreter function that uses the `i` variable for
counting backward. Within a previous loop that used the `i` variable to
count forward, there are a few loops using the `j` variable to count
backward. By changing the backward counting final loop to use the `j`
variable, it is now very similar to the backward counting loops that
also used `j`, so gzip is going to combine them.

This breaks the convention that `j` is counter for a loop nested inside
a loop for which `i` is a counter, adding more surprises for the hapless
maintainer, but we saved 6 whole bytes.

See #46.

File                             Raw         Min         Zip     Min/Zip
index.js                  5363/05.24  2024/01.98  1820/01.78   988/00.96