code: func newBitArray(size uint64, args ...bool) *bitArray {
  	i, r := getIndexAndRemainder(size)
  	if r > 0 {
  		i++
  	}
  
  	ba := &bitArray{
  		blocks: make([]block, i),
  		anyset: false,
  	}
  
  	if len(args) > 0 && args[0] == true {
  		for i := uint64(0); i < uint64(len(ba.blocks)); i++ {
  			ba.blocks[i] = maximumBlock
  		}
  
  		ba.lowest = 0
  		ba.highest = i*s - 1
  		ba.anyset = true
  	}
  
  	return ba
  }
docs: // newBitArray returns a new dense BitArray at the specified size. This is a
  // separate private constructor so unit tests don't have to constantly cast the
  // BitArray interface to the concrete type.