foreach my $key (keys %pssn) { if (not exists $assn{$key}) { push(@array, $key); } } foreach my $key (keys %assn) { if (not exists $pssn{$key}) { push(@array, $key); } } my %assn_vals = map { $_ => 1 } values %assn; my %pssn_vals = map { $_ => 1 } values %pssn; foreach my $val (keys %assn_vals) { if (not exists $pssn_vals{$val}) { push(@array, $val); } } foreach my $val (keys %pssn_vals) { if (not exists $assn_vals{$val}) { push(@array, $val); } }