</BUG>
R result = seed;
for (Map.Entry<E, MutableLong> entry : valueMap.entrySet()) {
result = accumulator.apply(result, entry.getKey(), entry.getValue().value());
<BUG>if (predicate.test(entry.getKey(), entry.getValue().value(), result) == false) {
</BUG>
break;
}
}
return result;

public void forEach(BiConsumer<? super E, Long> action) {
for (Map.Entry<E, MutableLong> entry : valueMap.entrySet()) {
action.accept(entry.getKey(), entry.getValue().value());
}
}
public <R> R forEach(final R seed, TriFunction<R, ? super E, Long, R> accumulator, final TriPredicate<? super E, Long, ? super R> conditionToBreak) {
R result = seed;
for (Map.Entry<E, MutableLong> entry : valueMap.entrySet()) {
result = accumulator.apply(result, entry.getKey(), entry.getValue().value());
if (conditionToBreak.test(entry.getKey(), entry.getValue().value(), result)) {
break;
}
}
return result;
