code: public Interval withStartTime(LocalTime time) {
          requireNonNull(time);
          return new Interval(startDate, time, endDate, endTime, zoneId);
      }
docs: Returns a new interval based on this interval but with a different start
  time.
  
  @param time the new start time
  @return a new interval