tagged_union
tests
