class BlackFxOptionSurfaceVolatilities implements BlackFxOptionVolatilities, ImmutableBean, Serializable {

  public static BlackFxOptionSurfaceVolatilities of(
      CurrencyPair currencyPair,
      ZonedDateTime valuationDateTime,
      Surface surface) {

    FxOptionVolatilitiesName name = FxOptionVolatilitiesName.of(surface.getName().getName());
    return of(name, currencyPair, valuationDateTime, surface);
  }

  @ImmutableConstructor private  BlackFxOptionSurfaceVolatilities(
      FxOptionVolatilitiesName name,
      CurrencyPair currencyPair,
      ZonedDateTime valuationDateTime,
      Surface surface);

}