while ($wIndex < @words && exists $parent->{$words[$wIndex]}) { @best = ($parent->{_name_}, $wIndex) if exists $parent->{_name_}; $parent = $parent->{$words[$wIndex++]}; }