#include <iostream>
using namespace std;

template<typename TLSManager>
class smr {
public:
    TLSManager field;
    
    smr(TLSManager field) : field(field) {}
    
	static smr<TLSManager>* instance;
};

template<typename T>
smr<T>* smr<T>::instance;

int main() {
	smr<int>::instance = new smr<int>(1);
	smr<double>::instance = new smr<double>(2.2);
	cout << smr<int>::instance->field << " " << smr<double>::instance->field;
	return 0;
}