def METHOD_NAME(self):
    event_names = set()
    for event in self.events.keys():
        date, com, loc = re.search(r"(.+)\-(.+)\-(.+)", event).groups()
        date = "".join(c for c in date if c.isdigit() or c in ["-"])
        start_time = self.events[event]["event_start_time"]
        date_time = f"{date} {start_time}"
        date_object = dateutil.parser.parse(date_time)
        date_with_offset = self._tz.localize(date_object)
        event_name = f"{com}#{loc}#{date_time}"
        if event_name in event_names:
            logging.warning(f"Skipping duplicate event {event_name}")
            continue
        event_names.add(event_name)
        event_obj = Event(
            name=com,
            location_name=loc,
            description="Standing Committee Hearing",
            start_date=date_with_offset,
        )
        event_obj.add_committee(com)
        event_obj.dedupe_key = event_name
        for item_key in self.events[event]["item_keys"]:
            item = self.events[event][item_key]
            agenda_time = item["agenda_time"]
            descr_with_time = f"[{agenda_time}]: {item['description']}"
            item_descr = event_obj.add_agenda_item(descr_with_time)
            if item["bill_name"]:
                item_descr.add_bill(item["bill_name"])
            if item["sub_com"]:
                item_descr["extras"]["sub_committee"] = item["sub_com"]
        event_obj.add_source(self.url)
        yield event_obj