code: public Interval withEnd(ReadableInstant end) {
          long endMillis = DateTimeUtils.getInstantMillis(end);
          return withEndMillis(endMillis);
      }
docs: Creates a new interval with the specified end instant.
  
  @param end  the end instant for the new interval, null means now
  @return an interval with the start from this interval and the specified end
  @throws IllegalArgumentException if the resulting interval has end before start