Implement OuterUnion method