<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_event_log(self, clear=False):
 """Retrieve the log of events, optionally clearing The contents of the SEL are returned as an iterable. Timestamps are given as local time, ISO 8601 (whether the target has an accurate clock or not). Timestamps may be omitted for events that cannot be given a timestamp, leaving only the raw timecode to provide relative time information. clear set to true will result in the log being cleared as it is returned. This allows an atomic fetch and clear behavior so that no log entries will be lost between the fetch and clear actions. There is no 'clear_event_log' function to encourage users to create code that is not at risk for losing events. :param clear: Whether to remove the SEL entries from the target BMC """

        self.oem_init()
        return sel.EventHandler(self.init_sdr(), self).fetch_sel(self, clear)