#include <iostream>
#include <type_traits>
#include <cstring>
int main() {
typename std::aligned_storage<sizeof(char) * 64, alignof(char)>::type m;
typename std::aligned_storage<sizeof(char) * 64, alignof(char)>::type n;
std::memcpy(&m, "Hello World", 12);
std::cout << reinterpret_cast<const char*>(&m) << std::endl;
n = m;
std::cout << reinterpret_cast<const char*>(&n) << std::endl;
std::memcpy(&m, "123456", 7);
std::cout << reinterpret_cast<const char*>(&m) << std::endl;
std::cout << reinterpret_cast<const char*>(&n) << std::endl;
return 0;
}
CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPHR5cGVfdHJhaXRzPgojaW5jbHVkZSA8Y3N0cmluZz4KCmludCBtYWluKCkgewoJdHlwZW5hbWUgc3RkOjphbGlnbmVkX3N0b3JhZ2U8c2l6ZW9mKGNoYXIpICogNjQsIGFsaWdub2YoY2hhcik+Ojp0eXBlIG07Cgl0eXBlbmFtZSBzdGQ6OmFsaWduZWRfc3RvcmFnZTxzaXplb2YoY2hhcikgKiA2NCwgYWxpZ25vZihjaGFyKT46OnR5cGUgbjsKCglzdGQ6Om1lbWNweSgmbSwgIkhlbGxvIFdvcmxkIiwgMTIpOwoKCXN0ZDo6Y291dCA8PCByZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPigmbSkgPDwgc3RkOjplbmRsOwoKCW4gPSBtOwoKCXN0ZDo6Y291dCA8PCByZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPigmbikgPDwgc3RkOjplbmRsOwoKCXN0ZDo6bWVtY3B5KCZtLCAiMTIzNDU2IiwgNyk7CgoJc3RkOjpjb3V0IDw8IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgY2hhcio+KCZtKSA8PCBzdGQ6OmVuZGw7CglzdGQ6OmNvdXQgPDwgcmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4oJm4pIDw8IHN0ZDo6ZW5kbDsKCglyZXR1cm4gMDsKfQ==