code: func (a *IPRangeAllocator) Release(ip net.IP) {
  	a.mutex.Lock()
  	defer a.mutex.Unlock()
  
  	// calculate the idx from the start
  	ipBig := big.NewInt(0)
  	ipBig.SetBytes(ip)
  	idx := ipBig.Sub(ipBig, a.startBig).Int64()
  
  	// check if the idx is reserved
  	if a.reserved[idx] {
  		delete(a.reserved, idx)
  		a.remaining++
  	}
  }
docs: // Release can be used to release an IP address that had previously been
  // allocated or reserved.