code: func (ks *KeyStore) addSymmetricKeyToPool(keyid string, topic Topic, address PssAddress, addtocache bool, protected bool) {
  	psp := &pssPeer{
  		address:   address,
  		protected: protected,
  	}
  	ks.mx.Lock()
  	if _, ok := ks.symKeyPool[keyid]; !ok {
  		ks.symKeyPool[keyid] = make(map[Topic]*pssPeer)
  	}
  	ks.symKeyPool[keyid][topic] = psp
  	ks.mx.Unlock()
  	if addtocache {
  		ks.symKeyDecryptCacheCursor++
  		ks.symKeyDecryptCache[ks.symKeyDecryptCacheCursor%cap(ks.symKeyDecryptCache)] = &keyid
  	}
  }
docs: // adds a symmetric key to the pss key pool, and optionally adds the key to the
  // collection of keys used to attempt symmetric decryption of incoming messages