public HashedFingerprint Hash(Fingerprint fingerprint, int numberOfHashTables, int numberOfHashKeysPerTable)
 {
     byte[] subFingerprint = minHashService.Hash(fingerprint.Signature);
     return new HashedFingerprint(
         subFingerprint,
         GroupIntoHashTables(subFingerprint, numberOfHashTables, numberOfHashKeysPerTable),
         fingerprint.SequenceNumber,
         fingerprint.Timestamp);
 }
 public HashedFingerprint Hash(Fingerprint fingerprint, int numberOfHashTables, int numberOfHashKeysPerTable, IEnumerable<string> clusters)
 {
     byte[] subFingerprint = minHashService.Hash(fingerprint.Signature);
     return new HashedFingerprint(
         subFingerprint,
         GroupIntoHashTables(subFingerprint, numberOfHashTables, numberOfHashKeysPerTable),
         fingerprint.SequenceNumber,
         fingerprint.StartsAt,
         clusters);
 }