added shuffler