def get_param_suggestions(param: Any, values: dict[str, Any]) -> Union[list[Any], "SearchSpace"]:
        """Return the suggestions for the input param based on the values chosen so far."""
        if isinstance(param, SearchParameter):
            if isinstance(param, Categorical):
                return param.get_support()

            elif isinstance(param, Conditional):
                parent_values = {k: values[k][1] for k in param.parents}
                suggestions = param.get_support_with_args(parent_values)
                # Pad the suggestions to maximum length using the default value of the param.
                max_length = max(SearchSpace.get_param_length(support) for support in param.support.values())
                suggestions += param.default.get_support() * (max_length - len(suggestions))
                return suggestions

        elif isinstance(param, SearchSpace):
            return param

        return []
Return the suggestions for the input param based on the values chosen so far.
olive/search/search_space.py