code: def list_difference(left, right):
      
      blocked = set(right)
      difference = []
      for item in left:
          if item not in blocked:
              blocked.add(item)
              difference.append(item)
      return difference
docs: Take the not-in-place difference of two lists (left - right), similar to sets but preserving order.