package com.github.underscore;

public interface FunctionAccum<F1, F2> {
    F1 apply(F1 accum, F2 arg);

    @Override
    boolean equals(Object object);
}

package com.github.underscore;

public interface FunctionAccum<A, F> {
    A apply(A accum, F arg);

    @Override
    boolean equals(Object object);
}

Improve FunctionAccum generic type names.