struct A { int a; template void serialize(Ar &ar, const unsigned int file_version) { ar & a; } virtual ~A() {} };