### Question:
ExponentiallyWeightedInterpolationQuantileMethod extends QuantileCalculationMethod { @Override public double quantileWithExtrapolationFromUnsorted(double level, DoubleArray sample) { return quantileResultWithExtrapolationFromUnsorted(level, sample).getValue(); } ExponentiallyWeightedInterpolationQuantileMethod(double lambda); @Override QuantileResult quantileResultFromUnsorted(double level, DoubleArray sample); @Override QuantileResult quantileResultWithExtrapolationFromUnsorted(double level, DoubleArray sample); @Override double quantileFromUnsorted(double level, DoubleArray sample); @Override double quantileWithExtrapolationFromUnsorted(double level, DoubleArray sample); @Override QuantileResult expectedShortfallResultFromUnsorted(double level, DoubleArray sample); @Override double expectedShortfallFromUnsorted(double level, DoubleArray sample); QuantileResult quantileDetailsFromUnsorted(double level, DoubleArray sample); QuantileResult expectedShortfallDetailsFromUnsorted(double level, DoubleArray sample); double[] weights(int size);  }### Answer:
@Test public void quantile_last() { double level = 0.999; double qComputed = METHOD.quantileWithExtrapolationFromUnsorted(level, DATA_123); DoubleArray dataSorted = DATA_123.sorted(); assertThat(qComputed).as("Quantile.").isCloseTo(dataSorted.get(dataSorted.size() - 1), offset(TOLERANCE_WEIGHT)); }