class Fun {

    public static <K, V, R> BiFunction<K, V, R>
    uncheck2(final @NotNull ThrowingBiFunction<? super K, ? super V, ? extends R> mayThrowOnApply) {
        return (inputK, inputV) -> {
            try {
                return mayThrowOnApply.tryApply(inputK, inputV);
            } catch (Exception e) {
                throw new FunRuntimeException(e);
            }
        };
    }

    private  Fun();

}