import public Data.List.Quantifiers.Extra0 Result : List Type -> Type -> TypeAlias for `Either (HSum es) a`: A computation that either
succeeds with a result of type `a` or fails with an error
of one of the types given in list `es`.
Note: If `es` is the empty list, the computation cannot fail,
because `HSum []` is uninhabited.
data Outcome : List Type -> Type -> TypetoOutcome : Result es a -> Outcome es a