class Fun {

    public static <K, V, I, R> BiFunction<K, V, R>
    compose2(final @NotNull BiFunction<K, V, ? extends I> before, final @NotNull Function<? super I, ? extends R> after) {
        return before.andThen(after);
    }

    private  Fun();

}