private static RateCalculation parseInflationRateCalculation(CsvRow row, String leg, PriceIndex priceIndex, Currency currency) {
InflationRateCalculation.Builder builder = InflationRateCalculation.builder();
builder.index(priceIndex);
builder.lag(parseInflationLag(findValue(row, leg, INFLATION_LAG_FIELD), currency));
builder.indexCalculationMethod(parseInflationMethod(findValue(row, leg, INFLATION_METHOD_FIELD), currency));
findValue(row, leg, INFLATION_FIRST_INDEX_VALUE_FIELD)
.map(s -> LoaderUtils.parseDouble(s))
.ifPresent(v -> builder.firstIndexValue(v));
findValue(row, leg, GEARING_FIELD)
.map(s -> LoaderUtils.parseDouble(s))
.ifPresent(v -> builder.gearing(ValueSchedule.of(v)));
return builder.build();
}