#include <iostream>
using namespace std;
#pragma pack(push)
#pragma pack(4)
typedef struct _B
{
char a, b, c;
}B;
typedef struct _C
{
char a;
int b;
char c;
}C;
typedef struct _D
{
char a;
char b;
int c;
}D;
#pragma pack(1)
typedef struct _B2
{
char a, b, c;
}B2;
typedef struct _C2
{
char a;
int b;
char c;
}C2;
typedef struct _D2
{
char a;
char b;
int c;
}D2;
#pragma pack(pop)
int main()
{
cout << sizeof(_B) << " "<< sizeof(B) << endl;
cout << sizeof(_C) << " "<< sizeof(C) << endl;
cout << sizeof(_D) << " "<< sizeof(D) << endl;
cout << sizeof(_B2) << " "<< sizeof(B2) << endl;
cout << sizeof(_C2) << " "<< sizeof(C2) << endl;
cout << sizeof(_D2) << " "<< sizeof(D2) << endl;
return(0);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI3ByYWdtYSBwYWNrKHB1c2gpCiNwcmFnbWEgcGFjayg0KQp0eXBlZGVmIHN0cnVjdCBfQgogIHsKICAgY2hhciBhLCBiLCBjOwogIH1COwoKdHlwZWRlZiBzdHJ1Y3QgX0MKICB7CiAgIGNoYXIgYTsKICAgaW50IGI7CiAgIGNoYXIgYzsKICB9QzsKCnR5cGVkZWYgc3RydWN0IF9ECiAgewogICBjaGFyIGE7CiAgIGNoYXIgYjsKICAgaW50IGM7CiAgfUQ7CgojcHJhZ21hIHBhY2soMSkKdHlwZWRlZiBzdHJ1Y3QgX0IyCiAgewogICBjaGFyIGEsIGIsIGM7CiAgfUIyOwoKdHlwZWRlZiBzdHJ1Y3QgX0MyCiAgewogICBjaGFyIGE7CiAgIGludCBiOwogICBjaGFyIGM7CiAgfUMyOwoKdHlwZWRlZiBzdHJ1Y3QgX0QyCiAgewogICBjaGFyIGE7CiAgIGNoYXIgYjsKICAgaW50IGM7CiAgfUQyOwoKI3ByYWdtYSBwYWNrKHBvcCkKCmludCBtYWluKCkKICB7CiAgIGNvdXQgPDwgc2l6ZW9mKF9CKSA8PCAiICI8PCBzaXplb2YoQikgPDwgZW5kbDsKICAgY291dCA8PCBzaXplb2YoX0MpIDw8ICIgIjw8IHNpemVvZihDKSA8PCBlbmRsOwogICBjb3V0IDw8IHNpemVvZihfRCkgPDwgIiAiPDwgc2l6ZW9mKEQpIDw8IGVuZGw7CgogICBjb3V0IDw8IHNpemVvZihfQjIpIDw8ICIgIjw8IHNpemVvZihCMikgPDwgZW5kbDsKICAgY291dCA8PCBzaXplb2YoX0MyKSA8PCAiICI8PCBzaXplb2YoQzIpIDw8IGVuZGw7CiAgIGNvdXQgPDwgc2l6ZW9mKF9EMikgPDwgIiAiPDwgc2l6ZW9mKEQyKSA8PCBlbmRsOwoKICAgcmV0dXJuKDApOwogIH0=