docs: def set_state(self, state):
          """
          Activate and put this conversation into the given state.
  
          The relation name will be interpolated in the state name, and it is
          recommended that it be included to avoid conflicts with states from
          other relations.  For example::
  
              conversation.set_state('{relation_name}.state')
  
          If called from a converation handling the relation "foo", this will
          activate the "foo.state" state, and will add this conversation to
          that state.
  
          Note: This uses :mod:`charmhelpers.core.unitdata` and requires that
          :meth:`~charmhelpers.core.unitdata.Storage.flush` be called.
          """
          state = state.format(relation_name=self.relation_name)
          value = _get_flag_value(state, {
              'relation': self.relation_name,
              'conversations': [],
          })
          if self.key not in value['conversations']:
              value['conversations'].append(self.key)
          set_flag(state, value)