with weighted union