docs: private static AbstractIndex constructLiborIndex(String forwardCurveName, Schedule schedule) {
  
  		if(forwardCurveName != null) {
  
  			//determine average fixing offset and period length
  			double fixingOffset = 0;
  			double periodLength = 0;
  
  			for(int i = 0; i < schedule.getNumberOfPeriods(); i++) {
  				fixingOffset *= ((double) i) / (i+1);
  				fixingOffset += (schedule.getPeriodStart(i) - schedule.getFixing(i)) / (i+1);
  
  				periodLength *= ((double) i) / (i+1);
  				periodLength += schedule.getPeriodLength(i) / (i+1);
  			}
  
  			return new LIBORIndex(forwardCurveName, fixingOffset, periodLength);
  		} else {
  			return null;
  		}
  	}