docs: def _same_day_ids(self):
          """
          :return: ids of occurrences that finish on the same day that they
          start, or midnight the next day.
          """
          # we can pre-filter to return only occurrences that are <=24h long,
          # but until at least the `__date` can be used in F() statements
          # we'll have to refine manually
          qs = self.filter(end__lte=F('start') + timedelta(days=1))
  
          # filter occurrences to those sharing the same end date, or
          # midnight the next day (unless it's an all-day occurrence)
          ids = [o.id for o in qs if (
              (o.local_start.date() == o.local_end.date()) or
              (
                  o.local_end.time() == time(0,0) and
                  o.local_end.date() == o.local_start.date() + timedelta(days=1) and
                  o.is_all_day == False
              )
          )]
          return ids