def wrap_filter_func(filter_func):
    """
    Wrap a filter function so that a new list will be filled with the search notes.

    :param filter_func: the filter function to wrap
    :return: the wrapped filter function and the search notes list
    """
    search_notes = []

    def wrapped_filter_func(*args, search_notes=search_notes, filter_func_impl=filter_func, **kwargs):
        return filter_func_impl(*args, search_notes=search_notes, **kwargs)

    return wrapped_filter_func, search_notes