def METHOD_NAME(self, clusters, prefix):
    if not prefix:
        return clusters
    # The analyzed Dimension
    d = prefix[-1].dim
    # Apply the actual callback
    retval = self._callback(clusters, d, prefix)
    # Normalize retval
    retval = set(as_tuple(retval))
    # Update `self.state`
    if retval:
        for c in clusters:
            properties = self.state.properties.setdefault(c, {})
            properties.setdefault(d, set()).update(retval)
    return clusters