code: synchronized Weight getMaximumStart() {
          if (calcMaxStart == null) {
              // Find the longest distance from time zero to a start.
              Weight result = WeightFactory.POS_INFINITY;
              if (shortestDistancesFromTimeZeroSource == null) {
                  shortestDistancesFromTimeZeroSource = BellmanFord.calcShortestDistances(timeZero, directedGraph,
                          BellmanFord.Mode.SOURCE);
  
                  if (shortestDistancesFromTimeZeroSource == null) {
                      throw new IllegalStateException("Negative cycle detected!");
                  }
              }
              for (int i = 0, n = intervals.size(); i < n; i++) {
                  Object start = intervals.get(i).getStart();
                  result = Weight.min(result,
                          (Weight) shortestDistancesFromTimeZeroSource.get(start));
              }
              calcMaxStart = result;
          }
  
          return calcMaxStart;
      }
docs: Calculates and returns the maximum path from time zero to the start of an
  interval.
  
  @return a <code>Weight</code> object.