# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
def deleteDuplication(self, pHead):
# write code here
visited=set()
delete=set()
start=ListNode(None)
start.next=pHead
while pHead:
if pHead.val not in visited:
visited.add(pHead.val)
else:
delete.add(pHead.val)
pHead=pHead.next
head=start
while start.next:
if start.next.val in delete:
temp=start.next.next
start.next=temp
else:
start=start.next
return head.next