def METHOD_NAME(self, context=None):
    def duplicate_values():
        results = []
        reported = []
        for item in self[0].select(context):
            value = self.data_value(item)
            if context is not None:
                context.item = value
            if value in results:
                if value not in reported:
                    yield value
                    reported.append(value)
            else:
                results.append(value)
    yield from duplicate_values()