my (%hash, %rhash); while (<>) { chomp; my ($key, $val) = split(/\t/, $_, 2); next if (exists $hash{$key} or exists $rhash{$val}); $hash{$key} = $val; $rhash{$val} = 1; }