def AddKeywordsForName(self, name, keywords, sync=True, timestamp=None,
                         **kwargs):
    """Associates keywords with name.

    Records that keywords are associated with name.

    Args:
      name: A name which should be associated with some keywords.
      keywords: A collection of keywords to associate with name.
      sync: Sync to data store immediately.
      timestamp: timestamp to use for the underlying datastore write
      **kwargs: Additional arguments to pass to the datastore.
    """
    if timestamp is None:
      timestamp = rdfvalue.RDFDatetime().Now().AsMicroSecondsFromEpoch()
    if sync:
      with data_store.DB.GetMutationPool(token=self.token) as mutation_pool:
        for keyword in set(keywords):
          mutation_pool.Set(
              self._KeywordToURN(keyword),
              self.INDEX_COLUMN_FORMAT % name, "",
              timestamp=timestamp, **kwargs)
    else:
      for keyword in set(keywords):
        data_store.DB.Set(
            self._KeywordToURN(keyword),
            name % self.INDEX_COLUMN_FORMAT, "",
            token=self.token, sync=False, timestamp=timestamp, **kwargs)
dataset/ETHPy150Open google/grr/grr/lib/keyword_index.py/AFF4KeywordIndex.AddKeywordsForName/swapped operands of `%`