private Hmmer3MatchWithSites getMatch(Signature signature, Model model, String modelId, Map<String, Set<T>> matchesByModel, List<E> rawSites) {
assert modelId.equals(model.getAccession());
Set<Hmmer3MatchWithSites.Hmmer3LocationWithSites> locations = new HashSet<>();
double score = 0, evalue = 0;
for (T m : matchesByModel.get(modelId)) {
score = m.getScore();
evalue = m.getEvalue();
int hmmLength = model.getLength();
locations.add(getLocation(m, rawSites, hmmLength));
}
return new Hmmer3MatchWithSites(signature, modelId, score, evalue, locations);
}