class Object[T]:
def __init__(self, *args: T):
self.value = args
def __hash__(self):
return hash(self.value)
def __eq__(self, other):
return self.value == other.value
class ObjectSet[T](set[Object[T]]):
def update(self, *array: T):
for value in array:
self.add(value)
def add(self, value: T):
super().add(Object(value))
x = ObjectSet[int]()
x.update(1, 2, 3)