#include <iostream>

namespace N {
	class C {};
	
	template<typename X>
	char const * found(X && x) {
		return "found";
	}
	
	template<typename, typename X>
	char const * notfound(X && x) {
		return "not found";
	}
}

int main() {
	N::C object;
	std::cout
		<< found(object) << std::endl
		<< notfound<bool>(object) << std::endl
		<< notfound<bool, N::C>(object) << std::endl;
}