#include <iostream>
#include <cstdint>
#include <bitset>
using namespace std;
int main() {
std::bitset<32> b("10100000001000011111111111111111");
int16_t x16 = (int16_t)(b.to_ulong() & 0xFFFF);
int32_t x32 = (int32_t)b.to_ulong();
cout << x16 << endl;
cout << x32 << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGludD4KI2luY2x1ZGUgPGJpdHNldD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewogICAgc3RkOjpiaXRzZXQ8MzI+IGIoIjEwMTAwMDAwMDAxMDAwMDExMTExMTExMTExMTExMTExIik7CiAgICBpbnQxNl90IHgxNiA9IChpbnQxNl90KShiLnRvX3Vsb25nKCkgJiAweEZGRkYpOwogICAgaW50MzJfdCB4MzIgPSAoaW50MzJfdCliLnRvX3Vsb25nKCk7CiAgICBjb3V0IDw8IHgxNiA8PCBlbmRsOwogICAgY291dCA8PCB4MzIgPDwgZW5kbDsKCXJldHVybiAwOwp9