docs: @Override
    public RangeSet<String> getDimensionRangeSet(String dimension)
    {
      if (field instanceof AndDimFilter) {
        List<DimFilter> fields = ((AndDimFilter) field).getFields();
        return new OrDimFilter(Lists.transform(fields, NotDimFilter::new)).getDimensionRangeSet(dimension);
      }
      if (field instanceof OrDimFilter) {
        List<DimFilter> fields = ((OrDimFilter) field).getFields();
        return new AndDimFilter(Lists.transform(fields, NotDimFilter::new)).getDimensionRangeSet(dimension);
      }
      if (field instanceof NotDimFilter) {
        return ((NotDimFilter) field).getField().getDimensionRangeSet(dimension);
      }
      RangeSet<String> rangeSet = field.getDimensionRangeSet(dimension);
      return rangeSet == null ? null : rangeSet.complement();
    }