Added shuffle function