sub gethash { my $fh = shift; local $/; local $_ = <$fh>; s/^\s+//gm; s/[\t]+/\t/g; my %hash; while(/^name\s+(\S+)\n(num.*\n)*/gm ) { my $name = $1; $hash{$name} = [$& =~ /^num\s*(.*)/gm ]; } return %hash; }