@classmethod
def _remove_duplicates(cls, seq):
    """
        Remove duplicates in a case insensitive, but case preserving manner.
        """
    tmpd = {}
    for item in seq:
        if item.lower() not in tmpd:
            tmpd[item.lower()] = True
            yield item
