Check out
AverageSOADFan’s
Shuffle