Inspired by
cc's
Shuffle