my (@non_unique_temp,@non_unique_temp2) ; (!in_array($_,\@temp)) && (push @non_unique_temp2, $_) for (@temp2); (!in_array($_,\@temp2)) && (push @non_unique_temp, $_) for (@temp); sub in_array { ($_ eq $_[0]) && (return $_) for (@{$_[1]}) ; } #### my (@unique_temp,@unique_temp2) ; (!in_array($_,[@temp, @unique_temp2])) && (push @unique_temp2, $_) for (@temp2); (!in_array($_,[@temp2,@unique_temp])) && (push @unique_temp, $_) for (@temp);