class DirectIborCapletFloorletVolatilityDefinition implements IborCapletFloorletVolatilityDefinition, ImmutableBean, Serializable {

  public static DirectIborCapletFloorletVolatilityDefinition of(
      IborCapletFloorletVolatilitiesName name,
      IborIndex index,
      DayCount dayCount,
      double lambdaExpiry,
      double lambdaStrike,
      GridSurfaceInterpolator interpolator) {

    return new DirectIborCapletFloorletVolatilityDefinition(
        name,
        index,
        dayCount,
        lambdaExpiry,
        lambdaStrike,
        interpolator,
        null);
  }

  private  DirectIborCapletFloorletVolatilityDefinition(
      IborCapletFloorletVolatilitiesName name,
      IborIndex index,
      DayCount dayCount,
      double lambdaExpiry,
      double lambdaStrike,
      GridSurfaceInterpolator interpolator,
      Curve shiftCurve);

}