private DateTime GetHolidayDate(int year, HolidayDefinition holidayDefinition) { return(Enum.Parse <HolidayPlacementStrategy>(holidayDefinition.PlacementStrategy) switch { HolidayPlacementStrategy.FixedDate => DateUtils.CalculateFixedDatePlacement(year, holidayDefinition.Month, holidayDefinition.Day), HolidayPlacementStrategy.FixedDay => DateUtils.CalculateFixedDayPlacement(year, holidayDefinition.Month, holidayDefinition.DayOfWeek, holidayDefinition.WeekOfMonth), HolidayPlacementStrategy.FixedDateNonWeekend => DateUtils.CalculateFixedDateNonWeekendPlacement(year, holidayDefinition.Month, holidayDefinition.Day), _ => throw new InvalidOperationException($"'{holidayDefinition.PlacementStrategy}' is not handled") });