sub populatemessagedefs { my $hashref = shift; my $string = shift; my @list = split(',', $string); while (@list) { my $k = shift @list; my $v = shift @list; $$hashref{$k}=$v unless exists($$hashref{$k}) and $v <= $$hashref{$k}; } my %hash2 = split(',', $string); }