code: func (v *TreeVertex) selectDescendants(indices []int) []*TreeVertex {
  	r := make([]*TreeVertex, len(indices))
  	i := 0
  	for _, index := range indices {
  		r[i] = v.Descendants[index]
  		i++
  	}
  	return r
  }
docs: // selectDescendants returns a subset of descendants according to given indices