def merge(entries):
"""Removes repeating entries from the list using fuzzy matching technique"""
# NOTE : this is the deliberate violation of the immutability principle
# __matched attribute is set for the entries that have been successfully matched before
# Such entries should be skipped
# It is thought that this approach is faster than keeping them in separate
# list
msg("* merging...", newline=False)
result = []
esz = len(entries)
for i in range(0, esz - 1):
e = entries[i]
if hasattr(e, "__matched"):
continue
matching = [e] # List containing matching entries
for j in range(i + 1, esz):