modify union resolver to meet new union def