#include <iostream>
struct ABC{
int A;
ABC(int i = 1) : A(i) {}
~ABC() {
std::cout << A << std::endl;
}
void destruct() {
delete this;
}
};
int main() {
ABC *A1 = new ABC(2);
A1->destruct();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IEFCQ3sKICAgIGludCBBOwogICAgQUJDKGludCBpID0gMSkgOiBBKGkpIHt9CiAgICB+QUJDKCkgewogICAgICAgIHN0ZDo6Y291dCA8PCBBIDw8IHN0ZDo6ZW5kbDsKICAgIH0KICAgIHZvaWQgZGVzdHJ1Y3QoKSB7CiAgICAgICAgZGVsZXRlIHRoaXM7CiAgICB9Cn07CgppbnQgbWFpbigpIHsKICAgIEFCQyAqQTEgPSBuZXcgQUJDKDIpOwogICAgQTEtPmRlc3RydWN0KCk7CiAgICByZXR1cm4gMDsKfQo=