static byte[] labeledExtractForSuite(Kdf kdf, byte[] suiteId, byte[] salt, byte[] label, byte[] ikm) {
        byte[] labeledIkm = concat(HPKE_V1_LABEL, suiteId, label, ikm);
        return kdf.extract(salt, labeledIkm);
    }
Section 4 Cryptographic Dependencies:

<pre>
def LabeledExtract(salt, label, ikm):
  labeled_ikm = concat("HPKE-v1", suite_id, label, ikm)
  return Extract(salt, labeled_ikm)
</pre>

We take in the KDF and suite ID explicitly, to allow method reuse between KEM and HPKE.
security-utils/src/main/java/com/yahoo/security/hpke/LabeledKdfUtils.java