code: def is_holiday(self, date):
          
          time = [
              date.year,
              date.month,
              date.day,
              date.isoweekday(),
              _extract_week_number(date)
          ]
  
          target = []
          for key, data in list(zip(TIME_LABEL, time)):
              d = getattr(self, key)
              asterisk = d.get("*", set())
              s = asterisk.union(d.get(data, set()))
              target.append(list(s))
  
          for result in map(set, product(*target)):
              if len(result) == 1:
                  return True
          return False
docs: Whether holiday judges
  
          :param datetime date: datetime.date object
          :rtype: bool