code: func (trie *Trie) VisitSubtree(prefix Prefix, visitor VisitorFunc) error {
  	// Nil prefix not allowed.
  	if prefix == nil {
  		panic(ErrNilPrefix)
  	}
  
  	// Empty trie must be handled explicitly.
  	if trie.prefix == nil {
  		return nil
  	}
  
  	// Locate the relevant subtree.
  	_, root, found, leftover := trie.findSubtree(prefix)
  	if !found {
  		return nil
  	}
  	prefix = append(prefix, leftover...)
  
  	// Visit it.
  	return root.walk(prefix, visitor)
  }
docs: // VisitSubtree works much like Visit, but it only visits nodes matching prefix.