#include <iostream>
#include <bitset>
using namespace std;
constexpr bitset<48> bits(uint16_t i1, uint16_t i2, uint16_t i3) {
return {uint64_t(i1) << 32 | uint64_t(i2) << 16 | i3};
}
int main()
{
constexpr int32_t garbage = int32_t(0XFFFF0000);
constexpr int32_t int1 = 0b0000111100001111 + garbage;
constexpr int32_t int2 = 0b1111000011110000 + garbage;
constexpr int32_t int3 = 0b0101010101010101 + garbage;
cout << bits(int1, int2, int3).to_string() << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Yml0c2V0PgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0ZXhwciBiaXRzZXQ8NDg+IGJpdHModWludDE2X3QgaTEsIHVpbnQxNl90IGkyLCB1aW50MTZfdCBpMykgewogICAgcmV0dXJuIHt1aW50NjRfdChpMSkgPDwgMzIgfCB1aW50NjRfdChpMikgPDwgMTYgfCBpM307Cn0KCmludCBtYWluKCkKewogICAgY29uc3RleHByIGludDMyX3QgZ2FyYmFnZSA9IGludDMyX3QoMFhGRkZGMDAwMCk7CiAgICBjb25zdGV4cHIgaW50MzJfdCBpbnQxID0gMGIwMDAwMTExMTAwMDAxMTExICsgZ2FyYmFnZTsKICAgIGNvbnN0ZXhwciBpbnQzMl90IGludDIgPSAwYjExMTEwMDAwMTExMTAwMDAgKyBnYXJiYWdlOwogICAgY29uc3RleHByIGludDMyX3QgaW50MyA9IDBiMDEwMTAxMDEwMTAxMDEwMSArIGdhcmJhZ2U7CgogICAgY291dCA8PCBiaXRzKGludDEsIGludDIsIGludDMpLnRvX3N0cmluZygpIDw8IGVuZGw7CgogICAgcmV0dXJuIDA7Cn0K