@Override
protected Set<ComputedValue> getValues(final FunctionExecutionContext executionContext, final FunctionInputs inputs,
final ComputationTarget target, final Set<ValueRequirement> desiredValues, final InstrumentDerivative derivative,
final FXMatrix fxMatrix) {
final G2ppProviderInterface data = getMergedProviders(inputs, fxMatrix);
final ValueRequirement desiredValue = Iterables.getOnlyElement(desiredValues);
final ValueProperties properties = desiredValue.getConstraints().copy().get();
final Currency currency = FinancialSecurityUtils.getCurrency(target.getTrade().getSecurity());
final MultipleCurrencyAmount mca = derivative.accept(CALCULATOR, data);
final ValueSpecification spec = new ValueSpecification(PRESENT_VALUE, target.toSpecification(), properties);