export function shuffle(array: T[]): T[] { array = array.slice(); for (let i = array.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); const temp = array[i]; array[i] = array[j]; array[j] = temp; } return array; } export function unique(array: T[]): T[] { return array.filter(function(elem, index, self) { return index === self.indexOf(elem); }); }