def noduplicate(seq):
    """
    List unique elements while preserving order
    stores values in dict for faster lookup
    """
    seen = set()
    seen.clear()                                                     # make sure nothing remains
    return [x for x in seq if not (x in seen or seen.add(x))]