@Override
 public String getUserMessage(TokenNameLookup tokenNameLookup) {
   StringBuilder message = new StringBuilder();
   for (Evidence evidenceItem : evidence()) {
     IndexEntryConflictException conflict = evidenceItem.conflict;
     message.append(
         conflict.evidenceMessage(
             tokenNameLookup.labelGetName(constraint.label()),
             tokenNameLookup.propertyKeyGetName(constraint.propertyKeyId())));
   }
   return message.toString();
 }
 @Override
 public int hashCode() {
   return conflict.hashCode();
 }
 @Override
 public boolean equals(Object o) {
   return this == o
       || !(o == null || getClass() != o.getClass()) && conflict.equals(((Evidence) o).conflict);
 }