import pickle

class ThingHolder:
    __slots__ = ['thing']
    def __init__(self, thing):
        print(self, thing)
        self.thing = thing

th = ThingHolder(None)
th.thing = th

th2 = pickle.loads(pickle.dumps(th, pickle.HIGHEST_PROTOCOL))

print()
print(th2, th2.thing)