my @single = grep {keys (%{$bigList{$_}}) == 1} keys %bigList; my @multi = grep {keys (%{$bigList{$_}}) > 1} keys %bigList; for my $one (@single) { print "$one ", join ', ', sort {$a <=> $b} keys %{$bigList{$one}}; print "\n"; } print "\n\nClients with multiple phone numbers:\n\n"; for my $one (@multi) { print "$one ", join ', ', sort {$a <=> $b} keys %{$bigList{$one}}; print "\n"; }