#include <iostream>
#include <cstdint>
template <int n> class Int { };
template <> class Int<8> { public: typedef int8_t Type; };
template <> class Int<16> { public: typedef int16_t Type; };
template <> class Int<32> { public: typedef int32_t Type; };
template <> class Int<64> { public: typedef int64_t Type; };
int main()
{
Int<8>::Type a;
Int<16>::Type b;
Int<32>::Type c;
Int<64>::Type d;
std::cout << sizeof a << std::endl;
std::cout << sizeof b << std::endl;
std::cout << sizeof c << std::endl;
std::cout << sizeof d << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGludD4KCnRlbXBsYXRlIDxpbnQgbj4gY2xhc3MgSW50IHsgfTsKdGVtcGxhdGUgPD4gY2xhc3MgSW50PDg+IHsgcHVibGljOiB0eXBlZGVmIGludDhfdCBUeXBlOyB9Owp0ZW1wbGF0ZSA8PiBjbGFzcyBJbnQ8MTY+IHsgcHVibGljOiB0eXBlZGVmIGludDE2X3QgVHlwZTsgfTsKdGVtcGxhdGUgPD4gY2xhc3MgSW50PDMyPiB7IHB1YmxpYzogdHlwZWRlZiBpbnQzMl90IFR5cGU7IH07CnRlbXBsYXRlIDw+IGNsYXNzIEludDw2ND4geyBwdWJsaWM6IHR5cGVkZWYgaW50NjRfdCBUeXBlOyB9OwoKaW50IG1haW4oKQp7CiAgICBJbnQ8OD46OlR5cGUgYTsKICAgIEludDwxNj46OlR5cGUgYjsKICAgIEludDwzMj46OlR5cGUgYzsKICAgIEludDw2ND46OlR5cGUgZDsKICAgIHN0ZDo6Y291dCA8PCBzaXplb2YgYSA8PCBzdGQ6OmVuZGw7CiAgICBzdGQ6OmNvdXQgPDwgc2l6ZW9mIGIgPDwgc3RkOjplbmRsOwogICAgc3RkOjpjb3V0IDw8IHNpemVvZiBjIDw8IHN0ZDo6ZW5kbDsKICAgIHN0ZDo6Y291dCA8PCBzaXplb2YgZCA8PCBzdGQ6OmVuZGw7Cn0K