class SchedulePeriod implements ImmutableBean, Comparable<SchedulePeriod>, Serializable {

  public static SchedulePeriod of(
      LocalDate startDate,
      LocalDate endDate,
      LocalDate unadjustedStartDate,
      LocalDate unadjustedEndDate) {

    return new SchedulePeriod(startDate, endDate, unadjustedStartDate, unadjustedEndDate);
  }

  private  SchedulePeriod(
      LocalDate startDate,
      LocalDate endDate,
      LocalDate unadjustedStartDate,
      LocalDate unadjustedEndDate);

}