in reply to how to alternate join?

There are a bazillion ways to do this using unglamorous loops, but if you insist in using join for this, check out Roy Johnson's Fun with join.

the lowliest monk