final Forex forex, final FXMatrix fxMatrix, final ZonedDateTime now) {
final MulticurveProviderInterface data = getMergedProviders(inputs, fxMatrix);
final ValueRequirement desiredValue = Iterables.getOnlyElement(desiredValues);
final String fxForwardCurveName = desiredValue.getConstraint(FORWARD_CURVE_NAME);
final DoublesCurve forwardPoints = getForwardPoints(inputs, fxForwardCurveName, now);
final CurrencyPairs pairs = (CurrencyPairs) inputs.getValue(CURRENCY_PAIRS);
final Pair<Currency, Currency> ccyPair;
final Currency currency1 = forex.getCurrency1();
final Currency currency2 = forex.getCurrency2();
if (currency1.equals(pairs.getCurrencyPair(currency1, currency2).getBase())) {
ccyPair = Pair.of(currency1, currency2);
} else {
ccyPair = Pair.of(currency2, currency1);
}
final double[] sensitivities = CALCULATOR.presentValueForwardPointsSensitivity(forex, data, forwardPoints, ccyPair);