## Is your feature request related to a problem?

*Please describe.*
I want to be able to search for funnels as unordered steps meaning the X amount of steps should just occur within the conversion window

## Describe the solution you'd like
Same interface just allow me to specify the funnel is unordered so it doesn't need to be step A -> step B -> step C in that specific order


#### *Thank you* for your feature request – we love each and every one!

ee/clickhouse/queries/funnels/base.py
"top_level_groupby": "",
            "extra_select": "",
            "extra_groupby": "",
            "within_time": FunnelWindowDaysMixin.microseconds_from_days(self._filter.funnel_window_days),
            "latest_distinct_id_sql": GET_LATEST_PERSON_DISTINCT_ID_SQL,
            "offset": self._filter.offset,
        }
        query = self.get_query(format_properties)
        return sync_execute(query, self.params)
    def _get_steps_per_person_query(self):
        formatted_query = ""
        max_steps = len(self._filter.entities)
        if max_steps >= 2:
            formatted_query = self.build_step_subquery(2, max_steps)
        else:
            formatted_query = self._get_inner_event_query()
        return f"""
        SELECT *, {self._get_sorting_condition(max_steps, max_steps)} AS steps {self._get_step_times(max_steps)} FROM (
            {formatted_query}
        ) WHERE step_0 = 1
        """
    def _get_step_times(self, max_steps: int):
        conditions: List[str] = []
        for i in range(1, max_steps):
            conditions.append(
                f"if(isNotNull(latest_{i}), dateDiff('second', toDateTime(latest_{i - 1}), toDateTime(latest_{i})), NULL) step_{i}_average_conversion_time"
            )
        formatted = ", ".join(conditions)
        return f", {formatted}" if formatted else ""
    def build_step_subquery(self, level_index: int, max_steps: int):