code: func (f PackedFormat) longCount(packedIntsVersion, valueCount int32, bitsPerValue uint32) int {
  	switch int(f) {
  	case PACKED_SINGLE_BLOCK:
  		valuesPerBlock := 64 / bitsPerValue
  		return int(math.Ceil(float64(valueCount) / float64(valuesPerBlock)))
  	}
  	// assert bitsPerValue >= 0 && bitsPerValue <= 64
  	ans := f.ByteCount(packedIntsVersion, valueCount, bitsPerValue)
  	// assert ans < 8 * math.MaxInt32()
  	if ans%8 == 0 {
  		return int(ans / 8)
  	}
  	return int(ans/8) + 1
  }
docs: /**
   * Computes how many long blocks are needed to store <code>values</code>
   * values of size <code>bitsPerValue</code>.
   */