Inspired by
leastreveler's
Shuffle