Inspired by
mental_bean's
Shuffle