my @list ; push @list, values %$_ for values %result ; my ($seen) = sort {$b<=>$a} map { my @tmp = split " ", $_ ; scalar @tmp } @list ; print $seen ;