[UPDATE] add shuffle.