# include <iostream>
# include <cstdlib>
using namespace std;
class Test {};
void * operator new (size_t size) throw (std::bad_alloc){
cout<<"Calling New:"<<endl;
return new (malloc(size)) Test() ;
}
void operator delete (void *ptr) throw () {
cout<<"Calling Delete:"<<endl;
free (ptr) ;
}
int main ()
{
cout<<"Hello"<<endl;
Test *ptr = new Test () ;
delete ptr ;
return 0;
}
IyBpbmNsdWRlIDxpb3N0cmVhbT4KIyBpbmNsdWRlIDxjc3RkbGliPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgVGVzdCB7fTsKdm9pZCAqIG9wZXJhdG9yIG5ldyAoc2l6ZV90IHNpemUpIHRocm93IChzdGQ6OmJhZF9hbGxvYyl7CiAgICBjb3V0PDwiQ2FsbGluZyBOZXc6Ijw8ZW5kbDsKICAgIHJldHVybiBuZXcgKG1hbGxvYyhzaXplKSkgVGVzdCgpIDsKfQoKdm9pZCBvcGVyYXRvciBkZWxldGUgKHZvaWQgKnB0cikgdGhyb3cgKCkgewogICAgY291dDw8IkNhbGxpbmcgRGVsZXRlOiI8PGVuZGw7CiAgICBmcmVlIChwdHIpIDsKfQoKaW50IG1haW4gKCkKewogICAgY291dDw8IkhlbGxvIjw8ZW5kbDsKICAgIFRlc3QgKnB0ciA9IG5ldyBUZXN0ICgpIDsKICAgIGRlbGV0ZSBwdHIgOwogICAgcmV0dXJuIDA7Cn0=