#include <iostream>
#include <vector>
using namespace std;
struct Node{
int data;
Node(){
data = 0;
std::cout << "Node created. " << this <<endl;
}
Node ( const Node& other ) {
data = other.data;
std::cout << "Node copy-constructor. " <<this << " from "<<&other<<endl;
}
~Node(){
std::cout << "Node destroyed. " << this <<endl;
}
};
int main() {
vector<Node> vec;
for(int i = 0; i < 2 ; i++)
vec.push_back( *(new Node));
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IE5vZGV7CiAgICBpbnQgZGF0YTsKICAgIE5vZGUoKXsKICAgICAgICBkYXRhID0gMDsKICAgICAgICBzdGQ6OmNvdXQgPDwgIk5vZGUgY3JlYXRlZC4gIiA8PCB0aGlzIDw8ZW5kbDsKICAgIH0KICAgIAogICAgTm9kZSAoIGNvbnN0IE5vZGUmIG90aGVyICkgewogICAgCWRhdGEgPSBvdGhlci5kYXRhOwogICAgCXN0ZDo6Y291dCA8PCAiTm9kZSBjb3B5LWNvbnN0cnVjdG9yLiAiIDw8dGhpcyA8PCAiIGZyb20gIjw8Jm90aGVyPDxlbmRsOwogICAgfQogICAgCiAgICB+Tm9kZSgpewogICAgICAgIHN0ZDo6Y291dCA8PCAiTm9kZSBkZXN0cm95ZWQuICIgPDwgdGhpcyA8PGVuZGw7CiAgICB9Cn07CgppbnQgbWFpbigpIHsKICAgIHZlY3RvcjxOb2RlPiB2ZWM7CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgMiA7IGkrKykKICAgICAgIHZlYy5wdXNoX2JhY2soICoobmV3IE5vZGUpKTsKICAgIHJldHVybiAwOwp9