#include <iostream>
using namespace std;
struct RAII {
int n;
RAII(int n) : n(n) { std::cout << "ctor " << n << '\n'; }
RAII(RAII &&x) { n = x.n; x.n = -1; std::cout << "move " << n << '\n'; }
~RAII() { std::cout << "dtor " << n << '\n'; }
};
int main() {
RAII x(1);
RAII *y = new RAII(std::move(x));
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IFJBSUkgewoJaW50IG47CglSQUlJKGludCBuKSA6IG4obikgeyBzdGQ6OmNvdXQgPDwgImN0b3IgIiA8PCBuIDw8ICdcbic7IH0KCVJBSUkoUkFJSSAmJngpIHsgbiA9IHgubjsgeC5uID0gLTE7IHN0ZDo6Y291dCA8PCAibW92ZSAiIDw8IG4gPDwgJ1xuJzsgfQoJflJBSUkoKSB7IHN0ZDo6Y291dCA8PCAiZHRvciAiIDw8IG4gPDwgJ1xuJzsgfQp9OwoKaW50IG1haW4oKSB7CglSQUlJIHgoMSk7CglSQUlJICp5ID0gbmV3IFJBSUkoc3RkOjptb3ZlKHgpKTsKCXJldHVybiAwOwp9