#include <iostream>

using namespace std;

class TLine{};
class TCircle{};

class TPrimitive
{
public:
	TPrimitive(){}
	explicit TPrimitive(const TPrimitive&){}
	template<class T>
	explicit TPrimitive(const T&){}
};

int main() {
	TPrimitive a=TLine(), b=TCircle();
	return 0;
}