code: func unionBitmapBitmapInPlace(a, b *Container) {
  
  	a.unmapBitmap()
  
  	// local variables added to prevent BCE checks in loop
  	// see https://go101.org/article/bounds-check-elimination.html
  	var (
  		ab = a.bitmap()[:bitmapN]
  		bb = b.bitmap()[:bitmapN]
  	)
  	// Manually unroll loop to make it a little faster.
  	// TODO(rartoul): Can probably make this a few x faster using
  	// SIMD instructions.
  	for i := 0; i < bitmapN; i += 4 {
  		ab[i] |= bb[i]
  		ab[i+1] |= bb[i+1]
  		ab[i+2] |= bb[i+2]
  		ab[i+3] |= bb[i+3]
  	}
  }
docs: // unions bitmap b into bitmap a, mutating a in place. The n value of
  // a will need to be repaired after the fact.