def holidays(self, start=None, end=None, return_name=False):
        if self.rules is None:
            raise Exception('Holiday Calendar %s does not have any '
                            'rules specified' % self.name)

        if start is None:
            start = AbstractHolidayCalendar.start_date

        if end is None:
            end = AbstractHolidayCalendar.end_date

        start = Timestamp(start)
        end = Timestamp(end)

        holidays = None
        # If we don't have a cache or the dates are outside the prior cache, we
        # get them again
        if (self._cache is None or start < self._cache[0] or
                end > self._cache[1]):
            for rule in self.rules:
                rule_holidays = rule.dates(start, end, return_name=True)

                if holidays is None:
                    holidays = rule_holidays
                else:
                    holidays = holidays.append(rule_holidays)

            self._cache = (start, end, holidays.sort_index())

        holidays = self._cache[2]
        holidays = holidays[start:end]

        if return_name:
            return holidays
        else:
            return holidays.index
Called every time just before the node enters the stage.
dataset/ETHPy150Open pydata/pandas/pandas/tseries/holiday.py/AbstractHolidayCalendar.holidays--crossover with--dataset/ETHPy150Open los-cocos/cocos/cocos/cocosnode.py/CocosNode.on_enter