#include <iostream>
struct DynamicSize
{
static const int size = -1;
};
template<int Size>
struct FixedSize
{
static const int size = Size;
};
template<class T, class Size>
class Container
{
public:
Container()
{
std::cout << Size::size << "\n";
}
};
int main()
{
Container<char, FixedSize<20>> a;
Container<char, DynamicSize> b;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IER5bmFtaWNTaXplCnsKCXN0YXRpYyBjb25zdCBpbnQgc2l6ZSA9IC0xOwp9OwoKdGVtcGxhdGU8aW50IFNpemU+CnN0cnVjdCBGaXhlZFNpemUKewoJc3RhdGljIGNvbnN0IGludCBzaXplID0gU2l6ZTsKfTsKCnRlbXBsYXRlPGNsYXNzIFQsIGNsYXNzIFNpemU+CmNsYXNzIENvbnRhaW5lcgp7CnB1YmxpYzoKICAgIENvbnRhaW5lcigpCiAgICB7CiAgICAJc3RkOjpjb3V0IDw8IFNpemU6OnNpemUgPDwgIlxuIjsKICAgIH0KfTsKCmludCBtYWluKCkKewogICAgQ29udGFpbmVyPGNoYXIsIEZpeGVkU2l6ZTwyMD4+IGE7CiAgICBDb250YWluZXI8Y2hhciwgRHluYW1pY1NpemU+IGI7CiAgICAKICAgIHJldHVybiAwOwp9