def METHOD_NAME(self, task, config, remember_rejected=False):
    """Filter entries already accepted on previous runs."""
    config = self.prepare_config(config)
    if config is False:
        logger.debug('{} is disabled', self.keyword)
        return
    fields = config.get('fields')
    local = config.get('local')
    for entry in task.entries:
        # construct list of values looked
        values = []
        for field in fields:
            if field not in entry:
                continue
            if entry[field] not in values and entry[field]:
                values.append(str(entry[field]))
        if values:
            logger.trace('querying for: {}', ', '.join(values))
            # check if SeenField.value is any of the values
            found = db.search_by_field_values(
                field_value_list=values, task_name=task.name, local=local, session=task.session
            )
            if found:
                logger.debug(
                    "Rejecting '{}' '{}' because of seen '{}'",
                    entry['url'],
                    entry['title'],
                    found.value,
                )
                se = (
                    task.session.query(db.SeenEntry)
                    .filter(db.SeenEntry.id == found.seen_entry_id)
                    .one()
                )
                entry.reject(
                    'Entry with {} `{}` is already marked seen in the task {} at {}'.format(
                        found.field, found.value, se.task, se.added.strftime('%Y-%m-%d %H:%M')
                    ),
                    remember=remember_rejected,
                )