'Remove an element from a set; it must be a member.
If the element is not a member, raise a KeyError.'

def remove(self, element):

    try:
        del self._data[element]
    except TypeError:
        transform = getattr(element, '__as_temporarily_immutable__', None)
        if (transform is None):
            raise
        del self._data[transform()]
