added a permanent shuffle method