rem: PRINT(("%s\n", __PRETTY_FUNCTION__));
context: and_region(BRegion *first, BRegion *second, BRegion *dest){	PRINT(("%s\n", __PRETTY_FUNCTION__));	ASSERT(first);	ASSERT(second);	ASSERT(dest);		clipping_rect intersection = sect_rect(first->bound, second->bound);		if (first->count == 0 || second->count == 0	|| !valid_rect(intersection))		zero_region(dest);		else if (first->count == 1 && second->count == 1) {		dest->data[0] = intersection;		dest->bound = intersection;		dest->count = 1;	} 	else if (first->count > 1 && second->count == 1)		and_region_1_to_n(second, first, dest);		else if (first->count == 1 && second->count > 1)		and_region_1_to_n(first, second, dest);		else		and_region_complex(first, second, dest);		}