<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def nub(it):
    '''Dedups an iterable in arbitrary order.

    Uses memory proportional to the number of unique items in ``it``.
    '''
    seen = set()
    for v in it:
        h = hash(v)
        if h in seen:
            continue
        seen.add(h)
        yield v