code: func (i *Idm) GetIDInRange(start, end uint64, serial bool) (uint64, error) {
  	if i.handle == nil {
  		return 0, errors.New("ID set is not initialized")
  	}
  
  	if start < i.start || end > i.end {
  		return 0, errors.New("Requested range does not belong to the set")
  	}
  
  	ordinal, err := i.handle.SetAnyInRange(start-i.start, end-i.start, serial)
  
  	return i.start + ordinal, err
  }
docs: // GetIDInRange returns the first available id in the set within a [start,end] range