docs: public Schedule generateSchedule(LocalDate referenceDate, int maturity, int termination, OffsetUnit unit) {
  
  		LocalDate startDate;
  		LocalDate endDate;
  
  		switch(unit) {
  		case YEARS :	startDate = referenceDate.plusYears(maturity);		endDate = startDate.plusYears(termination); break;
  		case MONTHS :	startDate = referenceDate.plusMonths(maturity);		endDate = startDate.plusMonths(termination); break;
  		case DAYS :		startDate = referenceDate.plusDays(maturity);		endDate = startDate.plusDays(termination); break;
  		case WEEKS :	startDate = referenceDate.plusDays(maturity *7);	endDate = startDate.plusDays(termination *7); break;
  		default :		startDate = referenceDate.plusMonths(maturity);		endDate = startDate.plusMonths(termination); break;
  		}
  
  		return generateSchedule(referenceDate, startDate, endDate);
  	}