def METHOD_NAME(self, ram):
    existing = self.retrieve(ram['adversaries'], self.unique)
    if not existing:
        ram['adversaries'].append(self)
        return self.retrieve(ram['adversaries'], self.unique)
    existing.update('name', self.name)
    existing.update('description', self.description)
    existing.update('atomic_ordering', self.atomic_ordering)
    existing.update('objective', self.objective)
    existing.update('tags', self.tags)
    existing.update('has_repeatable_abilities', self.check_repeatable_abilities(ram['abilities']))
    existing.update('plugin', self.plugin)
    return existing