func And(first BitMask, masks ...BitMask) BitMask {
	s := *first.(*bitMask)
	s.And(masks...)
	return &s
}
// And is a package level implementation of 'and' between first and masks
And is a package level implementation of 'and' between first and masks
// And is a package level implementation of ' and ' between first and masks
func And(first BitMask, masks ...BitMask) BitMask {
	s := *first.(*bitMask)
	s.And(masks...)
	return &s
}
func And ( first BitMask , masks ... BitMask ) BitMask { s := * first . ( * bitMask ) s . And ( masks ... ) return & s }
And is a package level implementation of 'and' between first and masks
And is a package level implementation of ' and ' between first and masks