#define EXPORT(x) x {}

class AngleBrackets {
public:
	AngleBrackets();
	~AngleBrackets();

	void operator>>(int a);
	void operator>>=(int a);

	template<typename T>
	void operator>>(T a);

	template<typename T>
	void operator>>=(T a);
};

EXPORT(AngleBrackets::AngleBrackets())
EXPORT(AngleBrackets::~AngleBrackets())
EXPORT(void AngleBrackets::operator>>(int a))
EXPORT(void AngleBrackets::operator>>=(int a))
template<> void AngleBrackets::operator>><float>(float a) {}
template<> void AngleBrackets::operator>>=<float>(float a) {}