class Circuits {

  public static <Filter>
  SplitMap evaluateIfKeysIntersect(QueryContext<Filter, ?> context,
                                   Function<Slice<Filter, Container>, Container> circuit,
                                   Filter... filters) {
    return new SplitMap(groupByIntersectingKeys(context, EMPTY, filters)
            .streamUniformPartitions()
            .parallel()
            .collect(new IndexAggregator<>(circuit)));
  }

}