public function getNoWorkDaysForTimespan(DateTime $firstDay, DateTime $lastDay, $region, array $noWorkWeekdayProviders = [])
    {
        if (count($noWorkWeekdayProviders) > 0) {
            $noWork = $noWorkWeekdayProviders;
        } else {
            $noWork = [
                new Sundays(),
            ];
        }

        $startYear = (int) $firstDay->format('Y');
        $endYear = (int) $lastDay->format('Y');

        if ($startYear === $endYear) {
            $holidayList = $this->getNoWorkDaysWithinSingleYear($firstDay, $lastDay, $region, $startYear, $noWork);
        } else {
            $holidayList = $this->getNoWorkDaysOverMultipleYears($firstDay, $lastDay, $region, $startYear, $endYear, $noWork);
        }

        return (new SortByDateFilter())->filter($holidayList);
    }