docs: protected PGPPublicKeyRingCollection getPublicKeysOfTrustState(PGPPublicKeyRingCollection keys,
                                                                     OpenPgpTrustStore.Trust trust)
              throws IOException {
  
          if (keys == null) {
              return null;
          }
  
          Set<PGPPublicKeyRing> toRemove = new HashSet<>();
          Iterator<PGPPublicKeyRing> iterator = keys.iterator();
          while (iterator.hasNext()) {
              PGPPublicKeyRing ring = iterator.next();
              OpenPgpV4Fingerprint fingerprint = new OpenPgpV4Fingerprint(ring);
              if (store.getTrust(getJid(), fingerprint) != trust) {
                  toRemove.add(ring);
              }
          }
  
          for (PGPPublicKeyRing ring : toRemove) {
              keys = PGPPublicKeyRingCollection.removePublicKeyRing(keys, ring);
          }
  
          if (!keys.iterator().hasNext()) {
              return null;
          }
  
          return keys;
      }