code: def find_types_removed_from_unions(
      old_schema: GraphQLSchema, new_schema: GraphQLSchema
  ) -> List[BreakingChange]:
      
      old_type_map = old_schema.type_map
      new_type_map = new_schema.type_map
  
      types_removed_from_union = []
      for old_type_name, old_type in old_type_map.items():
          new_type = new_type_map.get(old_type_name)
          if not (is_union_type(old_type) and is_union_type(new_type)):
              continue
          old_type = cast(GraphQLUnionType, old_type)
          new_type = cast(GraphQLUnionType, new_type)
          type_names_in_new_union = {type_.name for type_ in new_type.types}
          for type_ in old_type.types:
              type_name = type_.name
              if type_name not in type_names_in_new_union:
                  types_removed_from_union.append(
                      BreakingChange(
                          BreakingChangeType.TYPE_REMOVED_FROM_UNION,
                          f"{type_name} was removed from union type {old_type_name}.",
                      )
                  )
      return types_removed_from_union
docs: Find types removed from unions.
  
      Given two schemas, returns a list containing descriptions of any breaking changes
      in the new_schema related to removing types from a union type.