in reply to How to remove duplicate key/value pairs in hash of array

Quickest way I can think of is to just compare the values in the array to check for dupes. A hash of hashes would most likely take less processor time, but require recoding quite a bit of the things you have already finished.
my $Flag = 0; (/^$ranks$/)?$Flag++:"" foreach @{$HoL{$name}}; if ($Flag == 0) { push @{$HoL{$name}}, $ranks; }