@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 BlackForexSmileProviderInterface blackData = getBlackSurface(executionContext, inputs, target, fxMatrix);
final ValueRequirement desiredValue = Iterables.getOnlyElement(desiredValues);
final String desiredCurveName = desiredValue.getConstraint(CURVE);
final ValueProperties properties = desiredValue.getConstraints();
final ReferenceAmount<Pair<String, Currency>> pv01 = derivative.accept(CALCULATOR, blackData);
final Set<ComputedValue> results = new HashSet<>();