sub commonkeys { my %common = %{-shift}; for my $hr (@_) { delete @common{ grep { !exists $hr->{$_} } keys %common }; } [keys %common] }