mixed *scramble_array(mixed *arr){
mixed *ret = copy(arr);
ret = sort_array(ret, (:random(3)-1:) );
return ret;
}
mixed *distinct_array(mixed *arr) {
mapping tmp;
int i, maxi;
for(i = 0, tmp = allocate_mapping(maxi = sizeof(arr)); i<maxi; i++)
tmp[arr[i]] = 1;
return keys(tmp);
}
mixed *singular_array(mixed *arr) {
return distinct_array(arr);
}