default @NonNull <R> R mapEither(
            final @NonNull Function<U, R> mapPrimary,
            final @NonNull Function<V, R> mapFallback
    ) {
        return this.primary()
                .map(mapPrimary)
                .orElseGet(() -> this.fallback().map(mapFallback).get());
    }
Extract {@link #primary()} or {@link #fallback()}, in that order, applying the appropriate function
to map the result to {@code R}.

@param mapPrimary  function mapping the primary type to {@code R}
@param mapFallback function mapping the fallback type to {@code R}
@param <R>         mapped type
@return mapped value
cloud-core/src/main/java/org/incendo/cloud/type/Either.java