code: func (dp *DHCPPool) FreeIPIndex(index uint64) error {
  	dp.lock.Lock()
  	defer dp.lock.Unlock()
  
  	if !dp.IndexInPool(index) {
  		return errors.New("Trying to free an IP that is outside the capacity of this pool")
  	}
  
  	if _, free := dp.free[index]; free {
  		return errors.New("IP is already free")
  	} else {
  		dp.free[index] = true
  		delete(dp.mac, index)
  		return nil
  	}
  }
docs: // Frees an IP in the pool, returns an error if the IP is already free