docs: @Override
    public MtasSpanQuery rewrite(IndexReader reader) throws IOException {
      MtasSpanQuery newQuery = query.rewrite(reader);
      if (maximumRecurrence == 1) {
        return newQuery;
      } else {
        MtasSpanQuery newIgnoreQuery = (ignoreQuery != null)
            ? ignoreQuery.rewrite(reader) : null;
        if (newQuery instanceof MtasSpanRecurrenceQuery) {
          // for now too difficult, possibly merge later
        }
        if (!newQuery.equals(query)
            || (newIgnoreQuery != null && !newIgnoreQuery.equals(ignoreQuery))) {
          return new MtasSpanRecurrenceQuery(newQuery, minimumRecurrence,
              maximumRecurrence, newIgnoreQuery, maximumIgnoreLength)
                  .rewrite(reader);
        } else {
          return super.rewrite(reader);
        }
      }
    }