Inspired by
addisyn's
Shuffle