class CurrencyMatrixLookupFunction extends AbstractFunction.NonCompiledInvoker {

  @Override
  public Set<ValueSpecification> getResults(final FunctionCompilationContext context, final ComputationTarget target) {
    final ComputationTargetSpecification targetSpec = target.toSpecification();
    final ValueProperties properties = createValueProperties().withAny(CURRENCY_MATRIX_NAME_PROPERTY).get();
    return ImmutableSet.of(createSpotRateResult(targetSpec, properties), createHistoricalTimeSeriesResult(targetSpec, properties), createTimeSeriesLatestResult(targetSpec, properties));
  }

  public  CurrencyMatrixLookupFunction(final String defaultCurrencyMatrixName);
  public  CurrencyMatrixLookupFunction(final String[] params);

}