docs: def _adjust_dates_anchored(first, last, offset, closed='right', base=0):
      """ First and last offsets should be calculated from the start day to fix
      an error cause by resampling across multiple days when a one day period is
      not a multiple of the frequency.
      See https://github.com/pandas-dev/pandas/issues/8683
  
      Parameters
      ----------
      first : cftime.datetime
          A datetime object representing the start of a CFTimeIndex range.
      last : cftime.datetime
          A datetime object representing the end of a CFTimeIndex range.
      offset : xarray.coding.cftime_offsets.BaseCFTimeOffset
          The offset object representing target conversion a.k.a. resampling
          frequency. Contains information on offset type (e.g. Day or 'D') and
          offset magnitude (e.g., n = 3).
      closed : 'left' or 'right', optional
          Which side of bin interval is closed. Defaults to 'right'.
      base : int, optional
          For frequencies that evenly subdivide 1 day, the "origin" of the
          aggregated intervals. For example, for '5min' frequency, base could
          range from 0 through 4. Defaults to 0.
  
      Returns
      -------
      fresult : cftime.datetime
          A datetime object representing the start of a date range that has been
          adjusted to fix resampling errors.
      lresult : cftime.datetime
          A datetime object representing the end of a date range that has been
          adjusted to fix resampling errors.
      """
  
      base = base % offset.n
      start_day = normalize_date(first)
      base_td = type(offset)(n=base).as_timedelta()
      start_day += base_td
      foffset = exact_cftime_datetime_difference(
          start_day, first) % offset.as_timedelta()
      loffset = exact_cftime_datetime_difference(
          start_day, last) % offset.as_timedelta()
      if closed == 'right':
          if foffset.total_seconds() > 0:
              fresult = first - foffset
          else:
              fresult = first - offset.as_timedelta()
  
          if loffset.total_seconds() > 0:
              lresult = last + (offset.as_timedelta() - loffset)
          else:
              lresult = last
      else:
          if foffset.total_seconds() > 0:
              fresult = first - foffset
          else:
              fresult = first
  
          if loffset.total_seconds() > 0:
              lresult = last + (offset.as_timedelta() - loffset)
          else:
              lresult = last + offset.as_timedelta()
      return fresult, lresult