@NotNull
  public static ContextFilter compose(@NotNull List<? extends ContextFilter> filters, boolean and) {
    if (filters.size() == 1) {
      return filters.get(0);
    }
    return new CompositeContextFilter(filters, and);
  }
@NotNull
  public static ContextFilter compose(@NotNull List<? extends ContextFilter> filters, boolean and)