@Greg_McDowell There are a few solutions here:
The one below is just one of them.
_list = IN[0]
l=_list[:]
len_l = len(l)
i = 0
while i < (len_l - 1):
for j in range(i + 1, len_l):
i_set = set(l[i])
j_set = set(l[j])
if len(i_set.intersection(j_set)) > 0:
l.pop(j)
l.pop(i)
ij_union = list(i_set.union(j_set))
l.append(ij_union)
len_l -= 1
i -= 1
break
i += 1
OUT=sorted(l)