Check out
Abstractimplement’s
Shuffle

I