Sum types

Sum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum typesSum types