code: func (irt *immutableRangeTree) Add(entries ...Entry) *immutableRangeTree {
  	if len(entries) == 0 {
  		return irt
  	}
  
  	cache := newCache(irt.dimensions)
  	top := make(orderedNodes, len(irt.top))
  	copy(top, irt.top)
  	added := uint64(0)
  	for _, entry := range entries {
  		irt.add(&top, cache, entry, &added)
  	}
  
  	tree := newImmutableRangeTree(irt.dimensions)
  	tree.top = top
  	tree.number = irt.number + added
  	return tree
  }
docs: // Add will add the provided entries into the tree and return
  // a new tree with those entries added.