use existing union-set and intersection-set