Check out
Markus Kottwitz’s
Shuffle