#include <iostream>
#include <vector>
using namespace std;
class Point {
public:
Point (int x, int y) {}
};
template <typename T=std::vector<Point *>>
class Context {
T container;
public:
Point* addPoint(int x, int y) {
Point *p = new Point(x, y);
container.push_back(p);
return p;
}
};
int main() {
Context<> c;
c.addPoint(1, 2);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgUG9pbnQgewoJcHVibGljOgoJUG9pbnQgKGludCB4LCBpbnQgeSkge30KfTsKCnRlbXBsYXRlIDx0eXBlbmFtZSBUPXN0ZDo6dmVjdG9yPFBvaW50ICo+PgpjbGFzcyBDb250ZXh0IHsKICAgVCBjb250YWluZXI7CnB1YmxpYzoKICAgUG9pbnQqIGFkZFBvaW50KGludCB4LCBpbnQgeSkgewogICAgIFBvaW50ICpwID0gbmV3IFBvaW50KHgsIHkpOwogICAgIGNvbnRhaW5lci5wdXNoX2JhY2socCk7CiAgICAgcmV0dXJuIHA7CiAgIH0KfTsKCmludCBtYWluKCkgewoJQ29udGV4dDw+IGM7CgljLmFkZFBvaW50KDEsIDIpOwoJcmV0dXJuIDA7Cn0=