Use efficient half-shuffles for _1 and _2. Reverted to simpler shuffle/unshuffle due to benchmarking by @cartazio