class Fun {

    public static <K, V, R> BiFunction<K, V, R>
    tryOrDefault2(final @NotNull ThrowingBiFunction<? super K, ? super V, R> mayThrowOnApply, @Nullable R defaultValue) {
        return compose2(result2(mayThrowOnApply), result -> result.getOrDefault(defaultValue));
    }

    private  Fun();

}