#include <iostream>
#include <algorithm>
struct Foo{};
namespace std
{
template<>
void swap<Foo>(Foo& f1, Foo& f2)
{
std::cout << "My swap" << std::endl;
}
}
int main() {
// your code goes here
Foo foo1, foo2;
std::swap(foo1,foo2);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgoKc3RydWN0IEZvb3t9OwoKbmFtZXNwYWNlIHN0ZAp7Cgl0ZW1wbGF0ZTw+Cgl2b2lkIHN3YXA8Rm9vPihGb28mIGYxLCBGb28mIGYyKQoJewoJCXN0ZDo6Y291dCA8PCAiTXkgc3dhcCIgPDwgc3RkOjplbmRsOwoJfQp9CgppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCUZvbyBmb28xLCBmb28yOwoJc3RkOjpzd2FwKGZvbzEsZm9vMik7CglyZXR1cm4gMDsKfQ==