#include <iostream>
#include <list>
class Record{};
class RecordDer : public Record{};
template<typename Record1>
class List
{
std::list<Record1*> l_;
public:
template<typename Record2>
int init() {return 0;};
};
class ListDer : public List<RecordDer>
{
};
using namespace std;
int main() {
ListDer l;
l.init<int>();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bGlzdD4KCgpjbGFzcyBSZWNvcmR7fTsKCmNsYXNzIFJlY29yZERlciA6IHB1YmxpYyBSZWNvcmR7fTsKCgp0ZW1wbGF0ZTx0eXBlbmFtZSBSZWNvcmQxPgpjbGFzcyBMaXN0CnsKICBzdGQ6Omxpc3Q8UmVjb3JkMSo+IGxfOwpwdWJsaWM6Cgp0ZW1wbGF0ZTx0eXBlbmFtZSBSZWNvcmQyPgppbnQgaW5pdCgpIHtyZXR1cm4gMDt9Owp9OwoKCmNsYXNzIExpc3REZXIgOiBwdWJsaWMgTGlzdDxSZWNvcmREZXI+CnsKfTsKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCkxpc3REZXIgbDsKbC5pbml0PGludD4oKTsKCQoJcmV0dXJuIDA7Cn0=