class A:
def __init__(self, a = None):
self.a = a
if a is not None:
a.a = self
def __del__(self):
print("bye")
a = A()
a = None
print("delete works")
a = A()
b = A(a)
a = None
b = None
print("not delete yet")
Y2xhc3MgQToKICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhID0gTm9uZSk6CiAgICAgICAgc2VsZi5hID0gYQogICAgICAgIGlmIGEgaXMgbm90IE5vbmU6CiAgICAgICAgICAgIGEuYSA9IHNlbGYKCiAgICBkZWYgX19kZWxfXyhzZWxmKToKICAgICAgICBwcmludCgiYnllIikKICAgICAgICAgCgphID0gQSgpCmEgPSBOb25lCnByaW50KCJkZWxldGUgd29ya3MiKQoKYSA9IEEoKQpiID0gQShhKQoKYSA9IE5vbmUKYiA9IE5vbmUKcHJpbnQoIm5vdCBkZWxldGUgeWV0Iik=