code: func log2Floor(v uint32) uint {
  	v |= v >> 1
  	v |= v >> 2
  	v |= v >> 4
  	v |= v >> 8
  	v |= v >> 16
  	return multiplyDeBruijnBitPosition[uint32(v*0x07C4ACDD)>>27]
  }
docs: // Equivalent to: uint(math.Floor(math.Log2(float64(n))))
  // via: http://graphics.stanford.edu/~seander/bithacks.html#IntegerLogDeBruijn