template <typename T> struct Template { void push(T) {} };
template <typename... Args>
class Storage: public Template<Args>...
{
};
int main() {
Storage< Template<int>, Template<char> > storage;
}
dGVtcGxhdGUgPHR5cGVuYW1lIFQ+IHN0cnVjdCBUZW1wbGF0ZSB7IHZvaWQgcHVzaChUKSB7fSB9OwoKdGVtcGxhdGUgPHR5cGVuYW1lLi4uIEFyZ3M+CmNsYXNzIFN0b3JhZ2U6IHB1YmxpYyBUZW1wbGF0ZTxBcmdzPi4uLgp7Cn07CgppbnQgbWFpbigpIHsKICBTdG9yYWdlPCBUZW1wbGF0ZTxpbnQ+LCBUZW1wbGF0ZTxjaGFyPiA+IHN0b3JhZ2U7Cn0K