@Override public SimplifiedIntervalList apply(DruidAggregationQuery<?> druidAggregationQuery) { LookbackQuery castQuery = (LookbackQuery) druidAggregationQuery; return Stream.concat( castQuery.getIntervals().stream(), castQuery.getIntervals().stream() .flatMap(interval -> castQuery.getLookbackOffsets().stream() .map(lookbackOffset -> getCohortInterval(interval, lookbackOffset)) ) ).collect(SimplifiedIntervalList.getCollector()); }