async def METHOD_NAME(self, event):
    if event is storey.dtypes._termination_obj:
        return await self._do_downstream(storey.dtypes._termination_obj)
    else:
        element = self._get_event_or_body(event)
        fn_result = self._merge_events(element)
        if fn_result:
            mapped_event = self._user_fn_output_to_event(event, fn_result)
            await self._do_downstream(mapped_event)