updated union and minus