def __init__(self, event, recurrence=None):
super().__init__(protocol=event.protocol,<EOL>main_resource=event.main_resource)<EOL>self._event = event<EOL>recurrence = recurrence or {}<EOL>recurrence_pattern = recurrence.get(self._cc('<STR_LIT>'), {})<EOL>self.__interval = recurrence_pattern.get(self._cc('<STR_LIT>'), None)<EOL>self.__days_of_week = recurrence_pattern.get(self._cc('<STR_LIT>'),<EOL>set())<EOL>self.__first_day_of_week = recurrence_pattern.get(<EOL>self._cc('<STR_LIT>'), None)<EOL>self.__day_of_month = recurrence_pattern.get(self._cc('<STR_LIT>'),<EOL>None)<EOL>self.__month = recurrence_pattern.get(self._cc('<STR_LIT>'), None)<EOL>self.__index = recurrence_pattern.get(self._cc('<STR_LIT:index>'), '<STR_LIT>')<EOL>recurrence_range = recurrence.get(self._cc('<STR_LIT>'), {})<EOL>self.__occurrences = recurrence_range.get(<EOL>self._cc('<STR_LIT>'), None)<EOL>self.__start_date = recurrence_range.get(self._cc('<STR_LIT>'), None)<EOL>self.__end_date = recurrence_range.get(self._cc('<STR_LIT>'), None)<EOL>self.__recurrence_time_zone = recurrence_range.get(<EOL>self._cc('<STR_LIT>'),<EOL>get_windows_tz(self.protocol.timezone))<EOL>if recurrence_range:<EOL><INDENT>self.__start_date = parse(<EOL>self.__start_date).date() if self.__start_date else None<EOL>self.__end_date = parse(<EOL>self.__end_date).date() if self.__end_date else None<EOL><DEDENT>
A representation of an event recurrence properties

        :param Event event: event object
        :param dict recurrence: recurrence information