#include <iostream>
#include <algorithm>

template<typename T>
struct Foo{};

namespace std
{
	template<typename T>
	void swap(Foo<T>& f1, Foo<T>& f2)
	{
		std::cout << "My swap" << std::endl;
	}
}

int main() {
	// your code goes here
	Foo<int> foo1, foo2;
	std::swap(foo1,foo2);
	return 0;
}