code: def _calculate_values_to_forecast(self, timeSeries):
          
          # do not set anything, if it is not required
          if self._forecastUntil is None:
              return
  
          # check the TimeSeries for correctness
          if not timeSeries.is_sorted():
              raise ValueError("timeSeries has to be sorted.")
          if not timeSeries.is_normalized():
              raise ValueError("timeSeries has to be normalized.")
  
          timediff = timeSeries[-1][0] - timeSeries[-2][0]
          forecastSpan = self._forecastUntil - timeSeries[-1][0]
  
          self.set_parameter("valuesToForecast", int(forecastSpan / timediff) + 1)
docs: Calculates the number of values, that need to be forecasted to match the goal set in forecast_until.
  
          This sets the parameter "valuesToForecast" and should be called at the beginning of the :py:meth:`BaseMethod.execute` implementation.
  
          :param TimeSeries timeSeries:    Should be a sorted and normalized TimeSeries instance.
  
          :raise:    Raises a :py:exc:`ValueError` if the TimeSeries is either not normalized or sorted.