#include <iostream>
using namespace std;

template<class>
struct S
{
	struct A
	{
		static int x;
	};
	
	int& get() { return A::x; }
};

template<class T>
int S<T>::A::x = 0;

int main()
{
	S<int> i1, i2;
	S<long> l;
	
	cout << i1.get() << " " << i2.get() << " " << l.get() << "\n";
	i1.get()++;
	cout << i1.get() << " " << i2.get() << " " << l.get() << "\n";
}