code: func (ba *bitArray) And(other BitArray) BitArray {
  	if dba, ok := other.(*bitArray); ok {
  		return andDenseWithDenseBitArray(ba, dba)
  	}
  
  	return andSparseWithDenseBitArray(other.(*sparseBitArray), ba)
  }
docs: // And will bitwise and two bit arrays and return a new bit array
  // representing the result.