#include <cstddef>
#include <iomanip>
#include <iostream>
#include <type_traits>
struct S1 {
~S1(){}
int a;
char b;
};
struct S3 : S1 {
char c;
};
int main()
{
std::cout << sizeof(S1) << "\n";
std::cout << sizeof(S3) << "\n";
std::cout << std::boolalpha << std::is_standard_layout<S1>::value << "\n";
std::cout << std::boolalpha << std::is_standard_layout<S3>::value << "\n";
//std::cout << std::boolalpha << std::is_trivially_copyable<S1>::value << "\n";
//std::cout << std::boolalpha << std::is_trivially_copyable<S3>::value << "\n";
}
I2luY2x1ZGUgPGNzdGRkZWY+CiNpbmNsdWRlIDxpb21hbmlwPgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDx0eXBlX3RyYWl0cz4KCnN0cnVjdCBTMSB7CiAgICB+UzEoKXt9CiAgICBpbnQgYTsKICAgIGNoYXIgYjsKfTsKCnN0cnVjdCBTMyA6IFMxIHsKICAgIGNoYXIgYzsKfTsKCmludCBtYWluKCkKewoJc3RkOjpjb3V0IDw8IHNpemVvZihTMSkgPDwgIlxuIjsKCXN0ZDo6Y291dCA8PCBzaXplb2YoUzMpIDw8ICJcbiI7CglzdGQ6OmNvdXQgPDwgc3RkOjpib29sYWxwaGEgPDwgc3RkOjppc19zdGFuZGFyZF9sYXlvdXQ8UzE+Ojp2YWx1ZSA8PCAiXG4iOwoJc3RkOjpjb3V0IDw8IHN0ZDo6Ym9vbGFscGhhIDw8IHN0ZDo6aXNfc3RhbmRhcmRfbGF5b3V0PFMzPjo6dmFsdWUgPDwgIlxuIjsKCS8vc3RkOjpjb3V0IDw8IHN0ZDo6Ym9vbGFscGhhIDw8IHN0ZDo6aXNfdHJpdmlhbGx5X2NvcHlhYmxlPFMxPjo6dmFsdWUgPDwgIlxuIjsKCS8vc3RkOjpjb3V0IDw8IHN0ZDo6Ym9vbGFscGhhIDw8IHN0ZDo6aXNfdHJpdmlhbGx5X2NvcHlhYmxlPFMzPjo6dmFsdWUgPDwgIlxuIjsKfQ==