code: public static HazardCurve createHazardCurveFromHazardRate(
  			String name, Date referenceDate,
  			double[] times, double[] givenHazardRates, boolean[] isParameter,
  			InterpolationMethod interpolationMethod, ExtrapolationMethod extrapolationMethod, InterpolationEntity interpolationEntity) {
  
  		LocalDate referenceDataAsLocalDate = Instant.ofEpochMilli(referenceDate.getTime()).atZone(ZoneId.systemDefault()).toLocalDate();
  		return createHazardCurveFromHazardRate(name, referenceDataAsLocalDate, times, givenHazardRates, isParameter, interpolationMethod, extrapolationMethod, interpolationEntity);
  	}
docs: Create a hazard curve from given times and given zero rates using given interpolation and extrapolation methods.
  The discount factor is determined by
  <code>
  givenSurvivalProbabilities[timeIndex] = givenSurvivalProbabilities[timeIndex-1] * Math.exp(- givenHazardRates[timeIndex] * (times[timeIndex]-times[timeIndex-1]));
  </code>
  
  @param name The name of this discount curve.
  @param referenceDate The reference date for this curve, i.e., the date which defined t=0.
  @param times Array of times as doubles.
  @param givenHazardRates Array of corresponding survival probabilities.
  @param isParameter Array of booleans specifying whether this point is served "as as parameter", e.g., whether it is calibrates (e.g. using CalibratedCurves).
  @param interpolationMethod The interpolation method used for the curve.
  @param extrapolationMethod The extrapolation method used for the curve.
  @param interpolationEntity The entity interpolated/extrapolated.
  @return A new discount factor object.