#include <iostream>
#include <algorithm>

struct Foo{};

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

int main() {
	// your code goes here
	Foo foo1;
	int i = 6;
	std::swap(foo1,i);
	return 0;
}