my @in = { $line = shift(@in); if ($line =~ /^\#/) { my @serverlist; while ($in[0] !~ /^\#/) { my $server = shift(@in); push @serverlist, $server; } $HoA{$line} = [@serverlist]; } redo while (@in); }