docs: def cftime_to_nptime(times):
      """Given an array of cftime.datetime objects, return an array of
      numpy.datetime64 objects of the same size"""
      times = np.asarray(times)
      new = np.empty(times.shape, dtype='M8[ns]')
      for i, t in np.ndenumerate(times):
          try:
              # Use pandas.Timestamp in place of datetime.datetime, because
              # NumPy casts it safely it np.datetime64[ns] for dates outside
              # 1678 to 2262 (this is not currently the case for
              # datetime.datetime).
              dt = pd.Timestamp(t.year, t.month, t.day, t.hour, t.minute,
                                t.second, t.microsecond)
          except ValueError as e:
              raise ValueError('Cannot convert date {} to a date in the '
                               'standard calendar.  Reason: {}.'.format(t, e))
          new[i] = np.datetime64(dt)
      return new